{"version":3,"sources":["languages/sl.ts","languages/en.ts","languages/de.ts","languages/fr.ts","Locale.ts","store/Categories.ts","Helper.ts","store/Configurator.ts","images/loading.gif","components/Button.tsx","components/Inquiry.tsx","components/Notify.tsx","components/InquiryUser.tsx","components/Cart.tsx","components/Brands.tsx","images/logo_Varialis.png","components/Languages.tsx","components/NavMenu.tsx","images/logo.png","components/ErrorModal.tsx","components/SubNavMenu.tsx","components/AppFooter.tsx","components/Layout.tsx","images/selected-transparent.png","components/ConfiguratorStep1.tsx","images/clear-search-24.png","images/search.png","components/PartImage.tsx","images/mini-more.png","images/logo-doors.png","components/Part.tsx","components/components.tsx","components/Slider.tsx","components/PopupImages.tsx","components/PopupColors.tsx","components/Parameter.tsx","components/Comment.tsx","components/Categories.tsx","components/Loading.tsx","components/ConfiguratorStep2.tsx","components/ConfiguratorStep3.tsx","components/InquirySales.tsx","components/admin/CustomerView.tsx","components/admin/CustomerEditMenu.tsx","components/admin/CustomerDocument.tsx","components/admin/CustomerHistory.tsx","images/salesUser.png","components/admin/CustomerRemarks.tsx","components/admin/CustomerCosts.tsx","components/admin/CustomerCalculationOverview.tsx","components/admin/CustomerImages.tsx","components/Login.tsx","components/CookieInfo.tsx","components/admin/CustomerConfigurations.tsx","components/ResetPassword.tsx","components/Profile.tsx","components/admin/CustomerDocumentPrint.tsx","components/admin/CustomerTerms.tsx","components/admin/CustomerContact.tsx","components/public/ConfigurationDocuments.tsx","App.tsx","serviceWorker.js","index.tsx","store/configureStore.ts"],"names":["locale","popular","searchResults","price","amount","model","name","url","company","save","filterTypeName","filterGroupName","filtersClear","filters","searchPlaceholder","configurationStep1","configurationStep2","configurationStep3","configurationStepCustomerView","select","quantity","overview","version","modelAndConfig","status","noResults","noData","next","prev","nextPage","sendInquiry","step","of","comment","documentComment","documentCommentRemove","clearConfiguration","cancel","continue","close","exception","generalException","apiException","myProjects","allProjects","assignDocument","assignDocumentWithinCompany","assignDocumentOutsideCompany","assignDocumentToContactTitle","assignDocumentToContactAddNew","assignDocumentToContactConfirmation","sendDocument","toggleProjectStatus","unknownUser","saveConfiguration","saveConfigurationToDocument","addConfigurationToDocument","customerNewOffer","customerProcess","customerSendERP","customerImportEdi","customerNewVersion","customerAssign","customerConfirmOrder","customerConfirmOrderMessage","customerConfirmInqury","customerConfirmInquryNewProject","customerSendToConfirm","customerSend","customerForward","customerSendToSupplier","customerSendOffer","customerSendDocument","customerDelete","customerDeleteConfirm","configurator","open","customerEditingTitleInquiry","customerEditingTitleOffer","documentEditing","configurationEditing","adminCalculationDiscounts","adminCalculationAddDiscount","adminCalculationAdditional","adminCalculationCostsNet","adminCalculationAdditionalCosts","adminCalculationAddAdditionalCost","adminCalculationAddNetCost","adminCalculationConfigurationPrice","adminCalculationAdditionalSum","adminCalculationConfigurationWithAdditionalSum","adminCalculationDiscountPercentageSum","adminCalculationDiscountSum","adminCalculationConfigurationWithDiscountSum","adminCalculationServiceSum","adminCalculationSum","adminRemark","adminRemarkAddImage","adminDocumentationAdd","adminDocumentationAddUrl","adminDocumentCustomer","adminDocumentContact","adminDocumentPartner","adminDocumentPartnerRecipient","adminDocumentDateModified","adminDocumentStatus","adminDocumentDocumentNumber","adminDocumentProject","adminDocumentProjectStatus","adminDocumentDocumentOrder","adminDocumentBuyerOrderNumber","adminDocumentComission","adminDocumentCustomerNumber","adminDocumentCustomerPosition","adminDocumentCustomerSubPosition","adminDocumentCommission","adminDocumentDeliveryTime","adminMenuDocument","adminMenuConfigurations","adminMenuHistory","adminMenuConfiguration","adminMenuCalculation","adminMenuImages","adminMenuSalesRemarks","adminMenuInstallerRemarks","adminMenuPosition","adminMenuDiscountsCosts","adminMenuTechnicalDocumentation","adminMenuPrintDocument","insideView","facade","cartSuccess","saving","contactTitle","contactTitleSales","inquirySalesDialog","cart","cartSendInquiry","cartRemove","cartInquirySentText","cartInquirySentText2","cartInquirySentText3","cartInquirySent","cartOverride","cartSaving","cartSavingSuccess","documentSaving","cartButtonOverride","cartButtonNew","cartRemoveTitle","cartRemovalText","addDiscount","addCost","addNetCost","discountText","discountValue","discountLevel","discountType","discount","sortOrder","discountAmount","discountValueAfter","costText","costValue","requestDocumentation","requestSpecialDocumentation","loadSpecialDocumentation","user","image","date","customer","partner","commission","responsiblePerson","position","value","dataLastChange","documentation","inquiries","offers","printOffer","printDownload","printChangeToSend","printEditSent","printEmailSubject","printEmailBody","email","password","signIn","signUp","profile","signingOut","salesman","salesmanResponsible","signOut","submit","loginSuccess","loginError","addressing","firstName","firstAndLastName","lastName","loginFailed","loginNoPass","loginNoUsername","forgotPassword","resetPassword","resetPasswordMessage","registrationFailed","missingFields","registrationSucceeded","profileUpdateSucceeded","profileDeliveryTitle","profileReceiptTitle","profileAddressAdd","profileAddressEdit","differentThenContactAddress","activationSucceeded","accountActivation","confirmPassword","activate","missingToken","telephone","vat","registrationNumber","inquiryTitle","inquiryTitleCustomer","inquiryTitleExistingCustomer","inquiryDocumentType","address","city","zip","post","country","selectCountry","selectDiscountType","companyName","companyRegistration","companyVAT","inquiryLegalAdd","inquiryConsents","inquiryConsent1Title","inquiryConsent1","inquiryConsent2Title","inquiryConsent2","inquiryConsent3Title","inquiryConsent3","equalPasswords","type","brands","partners","delete","languages","clearCache","tags","text","desc","configuration","document","edit","change","view","clone","copy","remove","default","add","deleting","adding","cloning","print","submitForProduction","cartAddingDisabled","notSucceeded","documentType","printPrice","printColorImage","printTechImage","printConditions","selectPrintTemplate","selectPrintLanguage","sendToConfirmation","inConfirmation","isFinished","confirm","reject","reset","downloadPriceFile","termsPayment","termsSales","addTermPayment","addTermSales","editTermPayment","editTermSales","viewTermPayment","viewTermSales","term","termsPage","send","confirmDelete","confirmArchive","confirmReset","confirmClone","confirmCopy","confirmChangeStatusToSend","confirmChangeStatusSpecialTechnical","confirmRequestDocumentation","confirmSend","confirmSendDocument","changeRecipient","totalPriceWithoutTax","totalTax","finalPrice","selectTax","tax","printTemplateSelect","userUploaded","yes","no","contact","autoSaveConfiguration","loginToViewPrices","cookieLaw","cookiesTitle","details","sourceDocument","download","downloadPDF","clonePart","imageUpload","notImage","languageChange","languageChangeConfirm","brandChange","brandChangeConfirm","specialOffer","archive","includeArchived","showAll","cartEmpty","clipboard","inputText","inputNumber","twoDecimalPlaces","treeDetails","deliveryTime","LocalizedStrings","sl","slovenian","en","english","de","german","fr","french","convertToHierarchy","catFlat","nodeObjects","nodes","objects","i","length","push","categories","createStructure","currentNode","parentId","parent","getParent","splice","child","id","modelDetailsMapper","tree","commentId","categoriesPrev","categoriesList","parameterList","recursion","forEach","parameters","Parameters","partId","PartId","parameter","ParameterId","comment_category","Helper","getLocalizedName","Category","CategoryParentId","order","CategoryOrder","parseInt","selectedValue","SelectedValue","isEnabled","IsEnabled","values","range","DataType","min","MinValue","isNaN","max","MaxValue","ParameterValueId","Name","valueName","ParameterValueName","brandValue","ParameterBrandValue","ParameterValue","paramPartId","ParameterPartId","getLocalizedValueOrNull","ParameterBrandName","ParameterTitle","ParameterName","Order","categoryId","CategoryId","showPicture","ShowPicture","CategoryStatusId","status_active","findIndex","cat","Childs","sort","a","b","j","param","createModelFlat","dispatchUpdatedData","data","selectedParameters","isPopupParameter","dispatch","metadata","Metadata","Tree","categoriesNextTree","categoriesNext","filterCategories","findPartId","map","updateTree","categoriesNextTreeClone","JSON","parse","stringify","newCategories","CommentParameterId","selectedParametersNext","newParameters","title","parameterId","parameterValue","parameterValueId","mergedParameters","filter","paramPrev","find","paramNext","concat","findSelectedParameters","actionCreators","setSelectedParameters","setCategories","setTree","dispatchData","published","newDocumentConfigurationId","viewmodel","ViewModel","FinalImageUrl","Date","getTime","FinalImage","GenerateLiveImage","PartPicture","ConfigurationId","setPart","ModelName","ModelTitle","BrandModelName","ModelPrice","saveConfigurationComment","Comment","setImage","setConfigurationFlags","CanEdit","InApproval","HasDocument","Position","console","log","popupParams","popupParameters","initialValues","Values","initialSelectedValue","Label","defaultValue","PopupParameters","setPopupParameters","calculatePrice","configurationId","documentId","clearPartPrice","userLoggedIn","getData","then","Price","setPartPrice","parseFloat","Message","roles","documentSatus","projectStatus","dataType","actionConfigCreators","buildCategories","newConfigurationId","newPartId","documentConfigurationId","forceImage","getState","state","setConfigurationLoading","userAdmin","userInstaller","brandPartnerId","onError","onError2","updateCategories","parameterPartId","customValue","undefined","part","parameterValueParam","customValueParam","urlImage","URL","createObjectURL","canEdit","inApproval","clearPart","incrementCategoryStep","decrementCategoryStep","setCategoryStep","setTreeModal","setLoading","addCategoryComment","addSelectedParameter","clearParameters","addSelectedParameterTag","addDefaultParameter","setConfigurationPublished","setAnonymousToken","setContact","setUser","setDocument","setDocumentAddingMode","setError","setLanguage","destroySession","setSearch","setCartOpen","setInquiryDialogOpen","setShowMessage","setCartAddingDisabled","setFooter","setBrand","setBrands","setNumberOfBrands","initialState","treeModal","loading","selectedParametersTags","categoryComments","anonymousToken","documentPosition","configurationPublished","loadingImage","hasDocument","loader","initialDocumentId","documentConfigurations","project","addingMode","disableEdit","documentStatusId","currency","error","message","theme","footer","language","navigator","userLanguage","search","selectedCategories","query","navCartOpen","inquiryDialogOpen","showMessage","show","numberOfBrands","brandName","includeDocument","incrementStep","decrementStep","setStep","userToken","contactData","userType","logo","logotype","header","color","headerFontColor","buttonColor","buttonFontColor","text1","url1","text2","url2","text3","url3","disabled","reducer","action","selectedParams","Array","from","foundIndex","selectedParamTags","unselect","iFound","slice","localStorage","setItem","footer1text","footer1url","footer2text","footer2url","footer3text","footer3url","removeItem","getItem","retrieveToken","reduxState","window","location","href","fetchJSONWithToken","options","token","optionsWithToken","merge","headers","Authorization","fetchJSONSkipError","jsonOptions","fetch","response","fetchJSON","getResponseBody","body","contentType","get","indexOf","tryParseJSON","json","fetchRefresh","configureRefreshFetch","shouldRefreshToken","refreshToken","client_id","process","client_secret","grant_type","refresh_token","method","Accept","Object","keys","key","encodeURIComponent","join","ok","access_token","saveRefreshToken","Error","catch","CommonUtilities","split","role","userRole","toLowerCase","this","userInRole","admin","prod","mon","userEditor","themeCached","inputColor","r","g","newDate","offset","getTimezoneOffset","Math","abs","setHours","getHours","toLocaleString","userLang","substr","lastIndexOf","toLocaleDateString","nameJSON","lang","e","endpoint","credentials","detail","blob","target","src","deepCompare","left","right","ignoreNullUndefinedDiffs","leftChain","rightChain","compare2Objects","x","y","p","RegExp","String","Number","toString","isPrototypeOf","constructor","prototype","hasOwnProperty","pop","arguments","Button","props","saved","styles","style","backgroundColor","themeButtonColor","themeButtonFontColor","enabled","className","isNarrow","onClick","children","alt","Inquiry","timeout","Addressing","validate","AddressingD","AddressingR","FirstName","FirstNameD","FirstNameR","LastName","LastNameD","LastNameR","Email","Telephone","TelephoneD","Address","AddressD","AddressR","City","CityD","CityR","Zip","ZipD","ZipR","CountryId","CountryIdD","CountryIdR","Countries","CompanyName","CompanyNameD","CompanyNameR","CompanyRegistration","CompanyRegistrationD","CompanyRegistrationR","CompanyVAT","CompanyVATD","CompanyVATR","Marketing","Notifications","PersonalData","DeliveryAddress","ReceiptAddress","ShowConsents","SaveMessage","countriesFromApi","display","localeCompare","setState","emailRex","clearTimeout","setTimeout","test","checked","DeliveryData","ReceiptData","ContactData","contactFormData","setUserContactData","Row","Col","xs","FormGroup","dangerouslySetInnerHTML","__html","lg","md","check","htmlFor","Input","maxLength","onChange","handleChange","Country","valid","invalid","validateEmail","hidden","React","Component","Notify","isOpen","Modal","backdrop","toggle","toggleNotifyModal","ModalHeader","isError","ModalBody","ModalFooter","InquiryUser","ContactAddressName","DeliveryAddressData","DeliveryAddressDataId","ReceiptAddressData","ReceiptAddressDataId","deliveryAddressData","deliveryAddress","item","UserAddressId","element","code","isDefault","Default","receiptAddressData","receiptAddress","getCountries","getDeliveryAddressData","getReceiptAddressData","Code","UserAddress","DeliveryId","ReceiptId","setUserAddressData","loaderColor","handleCheckbox","Delivery","Receipt","openProfile","Cart","notify","configurations","inquiryModal","inquiryCustomerModal","inquiryUserModal","cartOpen","toggleInquiryModal","nextProps","deleteData","configData","isArray","modelName","ConfigurationName","Image","Quantity","ConfigurationPrice","items","configurationData","closeCart","pathname","history","configurationsBody","UserTokenId","BrandPartnerId","Configurations","ConfigurationContact","WebUrl","protocol","host","Lang","postData","contactName","setConfiguration","toggleInquiryUserModal","putData","createSalesDocument","configurationList","selectedConfigurationClassName","autoComplete","setQuantity","openConfiguration","removeConfiguration","fontSize","hasResults","connect","bindActionCreators","Brands","toggleConfirmationModal","brandId","BrandId","BrandName","Style","BackgroundColor","HeaderFontColor","ButtonColor","ButtonFontColor","HeaderLogo","HeaderLogotype","HeaderText","DropdownItem","Languages","NavMenu","userOpen","confirmationModal","confirmationModalTitle","confirmationModalMessage","confirmationModalAction","brand","prevProps","replace","redirect","confirmSetLanguage","confirmSetBrand","pathName","loggedIn","headerTitle","isAdmin","isInstaller","isPublicDocuments","themeHeaderColor","showBrandsSelection","fontColor","Navbar","Container","fluid","NavLink","tag","RRNavLink","to","logoVarialis","NavbarToggler","NavItem","UncontrolledDropdown","DropdownToggle","borderColor","borderWidth","borderStyle","caret","marginLeft","DropdownMenu","width","Dropdown","cartToggle","userToggle","size","confirmationAction","ErrorModal","showError","toggleModal","SubNavMenu","baseName","checkActiveConfiguration","checkActiveDocument","checkActiveMyProjects","checkActiveAllProjects","checkActiveStep1","isStep1","isStep2","isStep3","navTitle","adminVisible","headOfSalesVisible","userHeadOfSales","installerVisible","documentDisabled","documentConfigurationDisabled","configurationDisabled","configurationVersion","modelAndPriceDiv","goToProjects","cursor","goToDocument","Collapse","navbar","isActive","activeClassName","pure","AppFooter","Footer1text","Footer1url","Footer2text","Footer2url","Footer3text","Footer3url","queryValues","queryString","bpi","getFooter","rel","Layout","buttonText","cookieName","background","buttonStyle","borderRadius","padding","expires","imagePath","ConfiguratorStep1","pageNumber","pageSize","pageStart","lastRequestedItem","collapsed","parts","partsPage","selectedPartId","catId","foundCategory","some","val","selected","urlParts","urlCategories","category","Promise","all","textFilter","partsData","catData","catValues","CategoryValues","catValue","BrandPartnerCategoryValueId","isValueSelected","BrandPartnerCategoryId","Active","MAX_SAFE_INTEGER","innerHeight","documentElement","scrollTop","scrollHeight","getTheme","redirectBpi","getModels","addEventListener","loadModels","BrandModelsSpecial","Id","Title","ImageUrl","special","BrandModelsNotSpecial","mutateFilters","stringToTest","substring","isGuid","selectPart","addDefaultSrc","selectedIcon","applyFilterCategory","NavbarBrand","UncontrolledCollapse","defaultOpen","toggler","partsList","partsListSpecial","configuratorBackgroundClass","configuratorBackgroundClassSpecial","renderPart","xl","filtersReset","light","toggleNavbar","applySearch","placeholder","clearSearch","PartImage","imageBase64","Part","images","selectedParameter","forceUpdate","logoImage","_this","parameterDefaultValue","getSelectedParameter","parameterValuesList","setSelectedParameter","moreImage","maxWidth","Handle","domain","handle","percent","getHandleProps","marginTop","zIndex","height","Track","source","getTrackProps","Tick","tick","count","textAlign","Slider","handleFocus","event","sliderValue","inputValue","updateEnabled","editClass","autoFocus","onFocus","onInputChange","handleOpen","mode","onUpdate","onSliderUpdate","onSliderChange","getRailProps","handles","tracks","ticks","PopupImages","mdValue","suggestions","value2","selectedTag","unselected","selectedSuggestions","sug","setSelectedParameterTag","imageList","backgroundImage","imageUrl","handleTagSelect","PopupColors","colorsList","popupStyle","popupIcon","Parameter","nextState","nextContext","parameterValues","double","decimal","integer","IntValue","Tags","IsDefault","Color","paramData","pushParameterValue","parameterType","selectedParameterValue","selectedParameterTag","keepOpen","updateModelDetails","parameterName","getSelectedParameterTag","parameterDisabled","hasImages","colors","colorName","err","update","k","direction","parameterToggle","saveData","Categories","bind","isSubCategory","subsubcategories","renderCategoriesRecursion","match","Fragment","categoryToggle","prevStep","nextStep","prevState","DelayedLoading","useState","setShow","useEffect","pointerEvents","PartCode","ConfiguratorStep2","updateImage","saveMessage","Copy","UserToken","openInquiryDialog","toggleSaveDialog","inert","userIsParentPartner","float","toggleTreeModal","ConfiguratorStep3","AddToCartMessage","openCart","saveChoiceModal","notifyError","saveTitle","addingDisabled","sent","rejected","approved","rejectedSent","approvedSent","configurationPrice","showZeroPrices","textConfirmation","sendConfirmationModal","canSave","getOverview","ShowZeroPrices","queryValueId","DocumentConfigurationId","DocumentPosition","urlConfiguration","addToCart","createNew","ParameterPrice","ParameterCategoryName","ParameterCategoryPrice","link","createElement","FileName","MimeType","Contents","click","buttons","disableEditDocument","toggleSaveChoiceModal","downloadDocument","InquirySales","contacts","existingUser","newUser","selectedId","DocumentTypeId","documenttype_offer","DocumentTypes","ProjectId","ProjectStatusId","NewProject","closed","sending","active","getDocumentTypes","typesFromApi","row","ContactId","sizePerPage","noDataText","selectRowProp","clickToSelect","hideSelectColumn","bgColor","themeBottonColorWithShadowRGBA","onSelect","handleRowSelect","isProjectClosed","disabledProject","marginBottom","number","form","usersToggle","tableStyle","striped","hover","bordered","pagination","keyField","selectRow","dataField","dataSort","columnTitle","delay","CustomerView","currentTarget","getDocuments","selectedUserId","selectedContactId","selectedDocumentNumber","selectedStatus","selectedProjectId","selectedProjectStatus","selectedProjectNumber","selectedPartner","selectedType","selectedContact","selectedSalesmanRecipient","clickedButton","documents","inquirySellerModal","assignDocumentToUserModal","forwardDocumentToUserModal","copyDocumentModal","sendToSupplierModal","users","documentTypes","documentTypeId","newProject","assignButton","sendERPButton","enabledApplication","enabledEdifactImport","enabledEdifactExport","User","contactsWithUser","partnerRecipient","RecipientPartnerName","PartnerName","SalesDocumentId","isAnyError","IsAnyError","documentNumber","DocumentNumber","projectId","projectStatusId","projectNumber","ProjectNumber","ProjectStatus","dateChanged","dateWithTimeConvert","DocumentLastChanged","dateChangedDate","ContactName","comission","Commission","customerDocumentNumber","CustomerNumber","TotalPriceWithTax","DocumentTypeName","DocumentStatusName","statusId","DocumentStatusId","Salesman","salesmanRecipient","SalesmanRecipient","typeId","initialSalesDocumentId","InitialSalesDocumentId","initialSalesDocumentNumber","InitialSalesDocumentNumber","initialSalesDocument","Currency","contactId","toggleInquiryCustomerModal","getLanguages","viewType","documentData","selectedItem","EnabledApplication","EnabledEdifactExport","EnabledEdifactImport","selectedLanguage","LanguageId","path","IsReadOnly","getConfigurationsList","PartnerUserId","editTitle","DocumentId","languageCode","refs","fileUploader","files","fileName","reader","FileReader","readAsDataURL","onload","importDocument","result","file","Base64File","sum","colSpan","scope","partnerUserId","Saved","selectUserRowProp","handleUserRowSelect","selectContactRowProp","handleContactRowSelect","isDisabled","isForSubmitForProduction","documentstatus_confirmed","documentstatus_confirmedOem","documenttype_order","documenttype_orderconfirmation","isCanceled","documentstatus_archived","isProjectActive","canSend","documentstatus_offer","canConfirm","canForward","documentstatus_received","documentstatus_forwarded","generatingTechDoc","documentstatus_generatingtechdocumentation","projectFilter","loadingDiv","onRowDoubleClick","onDoubleClick","sendToERP","dataFormat","cell","sortFunc","onClickInitialDocument","opacity","dataAlign","headerAlign","toggleAssignDocumentToBrandPartnerUserModal","toggleCopyDocumentModal","userIsOem","sendToProduction","ButtonDropdown","toggleSendERPButton","importEdi","accept","onFileChange","ref","toggleForwardDocumentToBrandPartnerUserModal","toggleSendToSupplierModal","onClickChangeRecipient","toggleInquirySellerModal","assignSeller","forwardDocument","copyDocument","paddingTop","for","handleCommentChange","sendToSupplier","CustomerEditMenu","navLinkClass","adminDocument","installerDocument","adminConfiguration","installerConfiguration","adminDocumentNavigation","installerDocumentNavigation","adminConfigurationNavigation","installerConfigurationNavigation","CustomerDocument","DocumentStatus","DocumentType","PartnerRecipientName","DocumentConfigurations","ContactEmail","ContactTelephone","changeContactModal","selectedContactd","getDocument","TotalPrice","TotalTaxCost","changeContact","saveDocument","removeDocumentComment","themeHeaderFontColor","Form","toggleChangeContactModal","paddingRight","buttonSaveClick","removeCommentClick","CustomerHistory","historyList","DateTime","Text","Type","Value","multilineCell","validFileExtensions","CustomerRemarks","attachments","icon","imageName","customerPosition","customerSubPosition","deliveryDate","salesUser","remarksType","SalesComment","InstallerComment","SalesDocumentConfigurationCommentId","CommentImageUrl","CommentImageName","dateDate","CanDelete","attachmentData","CustomerPosition","CustomerSubPosition","DeliveryDate","setTime","getComments","getDocumentConfigurationData","isImage","ext","FileBase64","removeRemark","saveDocumentConfiguration","displayDetails","displayComment","displayCommentAdd","disabledSave","setDeliverDate","uploadFile","verticalAlign","saveRemark","onImageChange","maxHeight","confirmationDelete","CustomerCalculation","discountModal","costModal","netCostModal","discounts","additionalCosts","netCosts","netCostText","netCostValue","discountTypeId","additionalCost","configurationWithAdditionalCost","discountValueSum","discountPercentageSum","valueAfterDiscountSum","configurationWithDiscountCost","netCost","totalPrice","taxCost","totalPriceWithTax","selectedTax","taxList","discountTypeList","errorTextInput","errorNumberInput","errorNumber2Input","errorTextMessage","errorNumberMessage","errorNumber2Message","addEditError","addEditMessage","getCalculationData","additonalCosts","AdditionalCost","ConfigurationWithAdditionalCost","DiscountValue","DiscountPercentage","ValueAfterDiscount","ConfigurationWithDiscountCost","NetCost","TaxCost","Tax","IsSelected","TaxValue","Discounts","DiscountId","level","Level","TypeId","typeName","TypeName","tableValue","valueAfterDiscount","AdditionalCosts","CostId","NetCosts","getCalculation","discountTypesFromApi","cost","saveAdditionalCost","editAdditionalCost","removeAdditionalCost","saveNetCost","editNetCost","removeNetCost","saveDiscount","editDiscount","removeDiscount","disabled1","disabled2","disabled3","errorTextVisible","errorNumberVisible","errorNumber2Visible","addEditFailedVisible","taxes","setNewTax","TaxOptionId","sm","containerClass","thStyle","borderRight","borderLeft","toggleAdditionalCostModal","minLength","validateCostValue","toggleDiscountModal","validateDiscountValue","validateLevelValue","toggleNetCostModal","CustomerCalculationOverview","Images","minHeight","marginRight","img","sumCategory","CustomerImages","canRequest","canRequestSpecial","canLoadSpecial","confirmationTechModal","urlModal","Documentation","Url","ConfigurationDocumentationId","userAdded","UserModified","dateAdded","DateModified","dateAddedDate","IsUserUploaded","userUploadedString","CanRequestDocumentation","CanRequestSpecialDocumentation","CanLoadSpecialDocumentation","getDocumentation","documentstatus_specialtechnicaldocumentationgenerated","toggleConfirmationTechModal","StatusName","userIsOemAdmin","disabledUrlDialogSave","requestDocumentationConfirmation","toggleUrlModal","confirmationTech","saveUrl","Login","showPassword","emailState","passState","loginMessage","setToken","isUserOem","isUserOemAdmin","isParentPartner","accessToken","PartnerUserType","IsUserOem","IsUserOemAdmin","IsParentPartner","BrandInfo","brandInfo","Footer","NumberOfBrands","preventDefault","username","formBody","login","redirectForm","loginFailedVisible","onSubmit","submitForm","validatePass","onMouseDown","onMouseUp","FormText","Link","CookieInfo","CustomerConfigurations","selectedDocConfigId","selectedDocPosition","sentConfirmation","changedNumericInput","newQuantity","preventDoubleClick","SalesDocumentConfigurationId","ConfigurationPosition","configurationName","ConfigurationBrandName","ConfigurationDateModified","ClonePart","dateConvert","refresh","setConfigurations","handleSelectAndRedirect","buttonsDisabled","buttonsDisabledTech","columnClassName","disabledCancel","cancelSetQuantity","writeText","alert","ResetPassword","afterReset","Profile","countries","countryId","marketing","notifications","personalData","addEditModal","addEditModalTitle","addEditModalAction","addEditAddressing","addEditFirstName","addEditLastName","addEditAddress","addEditZip","addEditCity","addEditCompanyName","addEditCompanyRegistration","addEditCompanyVAT","addEditCountryId","addEditTelephone","addEditCompany","addEditSelectedId","registerError","registerSuccess","registerMessage","Company","isDelivery","removeAddress","saveAddressModal","Notification","res","registerFailedVisible","registerSuccessVisible","headerText","toggleAddressModal","setDefaultAddress","addEditCountry","confirmationAddress","CustomerDocumentPrint","chkPrices","chkColorImage","chkTechImage","chkConditions","printTemplates","selectedTemplate","generateDocuments","deleteId","disableTechDocumentation","getTemplates","getPrintData","isSelected","it","doc","changeStatusToSent","deleteOffer","Documents","SalesDocumentGeneratedId","CreatedBy","TimeStamp","Contact","DisableTechDocumentation","template","IsPrintDefault","TemplateName","DocumentTemplateId","TemplateId","Send","ShowPrices","ShowImages","ShowDocumentation","ShowTerms","onSelectAll","pdf","DocumentIds","onRowSelect","mailto","downloadZip","documenttype_offersent","CustomerTerms","termsPaymentModal","termSalesModal","termsPaymentModalView","termSalesModalView","termsPaymentModalEdit","termSalesModalEdit","termSalesText","termSalesSortOrder","termPaymentText","termPaymentValue","termPaymentSortOrder","termSalesDesc","termPaymentDesc","termsPayments","termsPaymentsList","termsSalesList","PaymentMethods","TermId","isCustom","IsCustom","Description","SortOrder","PaymentTerms","tablePrice","toggleTermPaymentModalEdit","toggleTermSalesModalEdit","toggleTermPaymentModalView","toggleTermSalesModalView","removeTermPayment","toggleTermPaymentModal","validateSortOrder","rows","saveTermPayment","removeTermSales","toggleTermSalesModal","saveTermSales","CustomerContact","Enabled","getContactData","buttonDisabled","saveContact","ConfigurationDocuments","params","AnimatedSwitch","require","basename","foo","atEnter","atLeave","atActive","Route","exact","component","render","CustomerCosts","Boolean","hostname","createBrowserHistory","store","reducers","Configurator","middleware","thunk","routerMiddleware","enhancers","rootReducer","combineReducers","routing","routerReducer","persistedState","createStore","compose","applyMiddleware","configureStore","rootElement","getElementById","ReactDOM","App","serviceWorker","ready","registration","unregister"],"mappings":"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","file":"static/js/main.3c1dda98.chunk.js","sourcesContent":["const locale = {\r\n\tpopular: 'Najbolj priljubljeni',\r\n\tsearchResults: 'Iskalni rezultati',\r\n\tprice: 'Cena',\r\n\tamount: 'Znesek',\r\n\tmodel: 'Model',\r\n\tname: 'Naziv',\r\n\turl: 'Povezava',\r\n\tcompany: 'Podjetje',\r\n\tsave: 'Shrani',\r\n\tfilterTypeName: 'Tip',\r\n\tfilterGroupName: 'Stil',\r\n\tfiltersClear: 'Počisti filtre',\r\n\tfilters: 'Filtri',\r\n\tsearchPlaceholder: 'Iskanje...',\r\n\tconfigurationStep1: 'Izbira modela',\r\n\tconfigurationStep2: 'Konfiguracija',\r\n\tconfigurationStep3: 'Pregled konfiguracije',\r\n\tconfigurationStepCustomerView: 'Pregled povpraševanj',\r\n\tselect: 'Odpri',\r\n\tquantity: 'Količina',\r\n\toverview: 'Predogled',\r\n\tversion: 'Verzija',\r\n\tmodelAndConfig: 'Model / ID konfig.',\r\n\tstatus: 'Status',\r\n\tnoResults: 'Ni rezultatov',\r\n\tnoData: 'Ni podatkov',\r\n\tnext: 'Naprej',\r\n\tprev: 'Nazaj',\r\n\tnextPage: 'Nadaljuj',\r\n\tsendInquiry: 'Pošlji povpraševanje',\r\n\tstep: 'Korak',\r\n\tof: 'od',\r\n\tcomment: 'Komentar',\r\n\tdocumentComment: 'Komentar dokumenta',\r\n\tdocumentCommentRemove: 'Odstrani komentar dokumenta',\r\n\tclearConfiguration: 'Ponastavi konfiguracijo',\r\n\tcancel: 'Prekliči',\r\n\tcontinue: 'Nadaljuj',\r\n\tclose: 'Zapri',\r\n\texception: 'Napaka',\r\n\tgeneralException: 'Ups, prišlo je do napake.',\r\n\tapiException: 'Napaka na strežniku',\r\n\tmyProjects: 'Moji projekti',\r\n\tallProjects: 'Vsi projekti',\r\n\tassignDocument: 'Dodeli (interno)',\r\n\tassignDocumentWithinCompany: 'Dodeli znotraj podjetja',\r\n\tassignDocumentOutsideCompany: 'Dodeli izven podjetja',\r\n\tassignDocumentToContactTitle: 'Stik',\r\n\tassignDocumentToContactAddNew: 'Dodaj nov stik',\r\n\tassignDocumentToContactConfirmation: 'Ali ste prepričani, da želite zamenjati kontakt?',\r\n\tsendDocument: 'Pošlji partnerju',\r\n\ttoggleProjectStatus: 'Projekt',\r\n\tunknownUser: 'Neimenovan',\r\n\tsaveConfiguration: 'Dodaj v košarico',\r\n\tsaveConfigurationToDocument: 'Shrani',\r\n\taddConfigurationToDocument: 'Dodaj v dokument',\r\n\tcustomerNewOffer: 'Ustvari dokument',\r\n\tcustomerProcess: 'Obdelaj',\r\n\tcustomerSendERP: 'Izvoz v ERP',\r\n\tcustomerImportEdi: 'Uvoz iz ERP',\r\n\tcustomerNewVersion: 'Ponastavi konfiguracijo',\r\n\tcustomerAssign: 'Dodeli osebi',\r\n\tcustomerConfirmOrder: 'Potrdi PN',\r\n\tcustomerConfirmOrderMessage:\r\n\t\t'S to potrditvijo bo naročilo (dokument št. {number}) poslano v izdelavo. S potrditvijo sprejemam s tem povezane finančne obveznosti (obveznost za plačilo).',\r\n\tcustomerConfirmInqury: 'Ustvari ponudbo',\r\n\tcustomerConfirmInquryNewProject: 'Ustvari v novem projektu',\r\n\tcustomerSendToConfirm: 'Pošlji v odobritev',\r\n\tcustomerSend: 'Pošlji',\r\n\tcustomerForward: 'Posreduj',\r\n\tcustomerSendToSupplier: 'Pošlji dobavitelju',\r\n\tcustomerSendOffer: 'Pošlji dokument',\r\n\tcustomerSendDocument: 'Pošlji dokument',\r\n\tcustomerDelete: 'Storno',\r\n\tcustomerDeleteConfirm: 'Ali ste prepričani, da želite stornirati izbran zapis?',\r\n\tconfigurator: 'Konfigurator',\r\n\topen: 'Odpri',\r\n\tcustomerEditingTitleInquiry: 'Urejanje povpraševanja',\r\n\tcustomerEditingTitleOffer: 'Urejanje ponudbe',\r\n\tdocumentEditing: 'Dokument',\r\n\tconfigurationEditing: 'Konfiguracija',\r\n\tadminCalculationDiscounts: 'Popusti',\r\n\tadminCalculationAddDiscount: 'Dodaj popust',\r\n\tadminCalculationAdditional: 'Dodatki',\r\n\tadminCalculationCostsNet: 'Storitve',\r\n\tadminCalculationAdditionalCosts: 'Dodatni stroški',\r\n\tadminCalculationAddAdditionalCost: 'Dodaj dodatek',\r\n\tadminCalculationAddNetCost: 'Dodaj storitev',\r\n\tadminCalculationConfigurationPrice: 'Cena konfiguracije',\r\n\tadminCalculationAdditionalSum: 'Skupna vrednost dodatkov',\r\n\tadminCalculationConfigurationWithAdditionalSum: 'Cena konfiguracije z dodatki',\r\n\tadminCalculationDiscountPercentageSum: 'Skupen odstotek popusta',\r\n\tadminCalculationDiscountSum: 'Skupna vrednost popusta',\r\n\tadminCalculationConfigurationWithDiscountSum: 'Cena konfiguracije z dodatki in popusti',\r\n\tadminCalculationServiceSum: 'Skupna vrednost storitev',\r\n\tadminCalculationSum: 'Skupna cena',\r\n\tadminRemark: 'Opomba',\r\n\tadminRemarkAddImage: 'Dodaj sliko',\r\n\tadminDocumentationAdd: 'Naloži prilogo',\r\n\tadminDocumentationAddUrl: 'Dodaj povezavo',\r\n\tadminDocumentCustomer: 'Kupec',\r\n\tadminDocumentContact: 'Stik',\r\n\tadminDocumentPartner: 'Odgovorni partner',\r\n\tadminDocumentPartnerRecipient: 'Partner',\r\n\tadminDocumentDateModified: 'Datum zadnje spremembe',\r\n\tadminDocumentStatus: 'Status dokumenta',\r\n\tadminDocumentDocumentNumber: 'Številka dokumenta',\r\n\tadminDocumentProject: 'Projekt',\r\n\tadminDocumentProjectStatus: 'Status projekta',\r\n\tadminDocumentDocumentOrder: 'Zap.št.',\r\n\tadminDocumentBuyerOrderNumber: 'Št. naročila',\r\n\tadminDocumentComission: 'Komision',\r\n\tadminDocumentCustomerNumber: 'Št. naročila',\r\n\tadminDocumentCustomerPosition: 'Pozicija kupca',\r\n\tadminDocumentCustomerSubPosition: 'Subpozicija kupca',\r\n\tadminDocumentCommission: 'Komision',\r\n\tadminDocumentDeliveryTime: 'Dobavni rok',\r\n\tadminMenuDocument: 'Podatki dokumenta',\r\n\tadminMenuConfigurations: 'Konfiguracije',\r\n\tadminMenuHistory: 'Zgodovina',\r\n\tadminMenuConfiguration: 'Konfiguracija',\r\n\tadminMenuCalculation: 'Pregled konfiguracije',\r\n\tadminMenuImages: 'Slike',\r\n\tadminMenuSalesRemarks: 'Prodajne opombe',\r\n\tadminMenuInstallerRemarks: 'Monter',\r\n\tadminMenuPosition: 'Podatki pozicije',\r\n\tadminMenuDiscountsCosts: 'Popust, storitve, davek',\r\n\tadminMenuTechnicalDocumentation: 'Tehnična dokumentacija',\r\n\tadminMenuPrintDocument: 'Natisni in pošlji',\r\n\tinsideView: 'Pogled znotraj',\r\n\tfacade: 'Fasada',\r\n\tcartSuccess: 'S klikom na ikono košarice lahko uredite njeno vsebino.',\r\n\tsaving: 'Shranjujem',\r\n\tcontactTitle: 'Kontaktni podatki in soglasja',\r\n\tcontactTitleSales: 'Kontaktni podatki',\r\n\tinquirySalesDialog: 'Dokument',\r\n\tcart: 'Košarica',\r\n\tcartSendInquiry: 'Pošlji povpraševanje',\r\n\tcartRemove: 'Odstrani',\r\n\tcartInquirySentText: ', hvala za poslano povpraševanje. Obdelali ga bomo v najkrajšem možnem času.',\r\n\tcartInquirySentText2: 'Hvala za poslano povpraševanje. Obdelali ga bomo v najkrajšem možnem času.',\r\n\tcartInquirySentText3: 'Dokument uspešno kreiran',\r\n\tcartInquirySent: 'Povpraševanje uspešno poslano',\r\n\tcartOverride: 'Ali želite prepisati obstoječo konfiguracijo ali kreirati novo?',\r\n\tcartSaving: 'Shranjevanje konfiguracije',\r\n\tcartSavingSuccess: 'Uspešno dodano v košarico',\r\n\tdocumentSaving: 'Shranjevanje dokumenta',\r\n\tcartButtonOverride: 'Prepiši obstoječo konfiguracijo',\r\n\tcartButtonNew: 'Kreiraj novo konfiguracijo',\r\n\tcartRemoveTitle: 'Odstranjevanje konfiguracij',\r\n\tcartRemovalText: 'Konfiguracije so bile odstranjene.',\r\n\taddDiscount: 'Popust',\r\n\taddCost: 'Dodatek',\r\n\taddNetCost: 'Storitev',\r\n\tdiscountText: 'Naziv',\r\n\tdiscountValue: 'Odstotek (%)',\r\n\tdiscountLevel: 'Nivo',\r\n\tdiscountType: 'Tip popusta',\r\n\tdiscount: 'Odstotek',\r\n\tsortOrder: 'Vrstni red',\r\n\tdiscountAmount: 'Vrednost popusta',\r\n\tdiscountValueAfter: 'Vrednost po popustu',\r\n\tcostText: 'Naziv',\r\n\tcostValue: 'Vrednost',\r\n\trequestDocumentation: 'Zahtevaj dokumentacijo',\r\n\trequestSpecialDocumentation: 'Zahtevaj posebno dokumentacijo',\r\n\tloadSpecialDocumentation: 'Naloži posebno dokumentacijo',\r\n\tuser: 'Uporabnik',\r\n\timage: 'Slika',\r\n\tdate: 'Datum',\r\n\tcustomer: 'Stranka',\r\n\tpartner: 'Partner',\r\n\tcommission: 'Komision',\r\n\tresponsiblePerson: 'Odgovorna oseba',\r\n\tposition: 'Pozicija',\r\n\tvalue: 'Vrednost',\r\n\tdataLastChange: 'Datum spr.',\r\n\tdocumentation: 'Dokumentacija',\r\n\tinquiries: 'Povpraševanja',\r\n\toffers: 'Ponudbe',\r\n\tprintOffer: 'Natisni dokument',\r\n\tprintDownload: 'Prenesi dokumente',\r\n\tprintChangeToSend: 'Spremeni v Poslano',\r\n\tprintEditSent: 'Uredi e-pošto',\r\n\tprintEmailSubject: 'Varialis - {number}',\r\n\tprintEmailBody:\r\n\t\t'Spoštovani,\\n\\n\\nV prilogi lahko najdete ponudbo št. {number}, pripravljeno na osnovi vašega povpraševanja.\\n\\nLep pozdrav,\\nVARIALIS portal\\n\\n\\nOpozorilo: Elektronska pošta lahko vsebuje informacije zaupne narave, namenjene samo naslovniku. Če je bilo zaradi napake v naslovu ali pri prenosu sporočilo poslano drugam, prosimo, da o tem obvestite avtorja elektronskega sporočila. Če sporočilo ni bilo namenjeno vam, informacij v sporočilu ne smete uporabljati, razkriti, širiti, kopirati, tiskati ali kakorkoli uporabiti.',\r\n\temail: 'E-naslov',\r\n\tpassword: 'Geslo',\r\n\tsignIn: 'Prijava',\r\n\tsignUp: 'Registracija',\r\n\tprofile: 'Profil',\r\n\tsigningOut: 'Odjavljam',\r\n\tsalesman: 'Prodajalec',\r\n\tsalesmanResponsible: 'Odgovorni prodajalec',\r\n\tsignOut: 'Odjava',\r\n\tsubmit: 'Potrdi',\r\n\tloginSuccess: '',\r\n\tloginError: 'Prijava ni uspela.',\r\n\taddressing: 'Nagovor',\r\n\tfirstName: 'Ime',\r\n\tfirstAndLastName: 'Ime in priimek',\r\n\tlastName: 'Priimek',\r\n\tloginFailed: 'Prijava ni uspela',\r\n\tloginNoPass: 'Vnesite geslo',\r\n\tloginNoUsername: 'Vnesite vaš e-naslov',\r\n\tforgotPassword: 'Pozabljeno geslo?',\r\n\tresetPassword: 'Sprememba gesla',\r\n\tresetPasswordMessage: 'Potrditvena e-pošta je bila poslana na vpisani e-naslov. Za nadaljevanje preverite vaš nabiralnik.',\r\n\tregistrationFailed: 'Registracija ni uspela',\r\n\tmissingFields: 'Prosimo vnesite vse obvezne podatke',\r\n\tregistrationSucceeded: 'Hvala za registracijo. Na vpisani e-naslov ste prejeli sporočilo za dokončanje postopka.',\r\n\tprofileUpdateSucceeded: 'Vaš profil je bil posodobljen.',\r\n\tprofileDeliveryTitle: 'Naslov za dostavo',\r\n\tprofileReceiptTitle: 'Naslov za račun',\r\n\tprofileAddressAdd: 'Dodaj naslov',\r\n\tprofileAddressEdit: 'Uredi naslov',\r\n\tdifferentThenContactAddress: 'Različen od kontaktnega naslova',\r\n\tactivationSucceeded: 'Aktivacija uspešna',\r\n\taccountActivation: 'Aktivacija',\r\n\tconfirmPassword: 'Ponovi geslo',\r\n\tactivate: 'Aktiviraj',\r\n\tmissingToken: 'Aktivacija računa ni uspela. Poskusite se registrirati ponovno.',\r\n\ttelephone: 'Telefon',\r\n\tvat: 'Davčna številka',\r\n\tregistrationNumber: 'Matična številka',\r\n\tinquiryTitle:\r\n\t\t'Zahvaljujemo se vam za povpraševanje. Za namen obdelave povpraševanja vas prosimo, da izpolnite kontaktne podatke in morebitna soglasja ter pošljete povpraševanje s pritiskom na gumb Pošlji.
S tem soglašate, da vas naše podjetje in naši prodajni partnerji za izpolnitev vaše prošnje o povpraševanju, izdelavo ponudbe ali svetovanjem v zvezi z izdelki kontaktira po elektronski pošti in/ali telefonu. V primeru naročila dovoljujete, da posredujemo vaše podatke preverjenemu strokovnemu osebju za svetovanje in ogled tako, da se lahko naročilo realizira.',\r\n\tinquiryTitleCustomer: 'Vpišite kontaktne podatke kupca',\r\n\tinquiryTitleExistingCustomer: 'Izberite obstoječi stik',\r\n\tinquiryDocumentType: 'Tip dokumenta',\r\n\taddress: 'Ulica in hišna številka',\r\n\tcity: 'Mesto',\r\n\tzip: 'Poštna številka',\r\n\tpost: 'Poštna številka',\r\n\tcountry: 'Država',\r\n\tselectCountry: 'Izberite državo',\r\n\tselectDiscountType: 'Izberite tip popusta',\r\n\tcompanyName: 'Ime podjetja',\r\n\tcompanyRegistration: 'Matična številka podjetja',\r\n\tcompanyVAT: 'ID podjetja za DDV',\r\n\tinquiryLegalAdd: 'Dodatno za pravne osebe',\r\n\tinquiryConsents: 'Soglasja',\r\n\tinquiryConsent1Title: 'Ponudbe in opomniki',\r\n\tinquiryConsent1: 'npr. obveščanje o relevantnih ponudbah izdelkov, rezervnih delov, dodatkov in o drugih izdelkih in storitvah.',\r\n\tinquiryConsent2Title: 'Obvestila',\r\n\tinquiryConsent2:\r\n\t\t'obvestila in vabila na dogodke ob lansiranju novih modelov in katalogov, sejme, dneve odprtih vrat, druge predstavitve in dogodke.',\r\n\tinquiryConsent3Title: 'Zbiranje vaših mnenj o izdelkih in storitvah',\r\n\tinquiryConsent3: 'raziskave, s katerimi pridobivamo vaše mnenje za izboljšanje izdelkov in storitev.',\r\n\tequalPasswords: 'Vnesite ujemajoči gesli',\r\n\ttype: 'Tip',\r\n\tbrands: 'Blagovne znamke',\r\n\tpartners: 'Partnerji',\r\n\tdelete: 'Odstrani',\r\n\tlanguages: 'Jeziki',\r\n\tclearCache: 'Počisti predpomnilnik',\r\n\ttags: 'Poišči lastnosti',\r\n\ttext: 'Tekst',\r\n\tdesc: 'Opis',\r\n\tconfiguration: 'Konfiguracija',\r\n\tdocument: 'Dokument',\r\n\tedit: 'Uredi',\r\n\tchange: 'Spremeni',\r\n\tview: 'Preglej',\r\n\tclone: 'Kloniraj',\r\n\tcopy: 'Kopiraj',\r\n\tremove: 'Odstrani',\r\n\tdefault: 'Privzeto',\r\n\tadd: 'Dodaj',\r\n\tdeleting: 'Odstranjevanje...',\r\n\tadding: 'Dodajanje...',\r\n\tcloning: 'Kloniranje...',\r\n\tprint: 'Natisni',\r\n\tsubmitForProduction: 'Pošlji v izdelavo',\r\n\tcartAddingDisabled:\r\n\t\t'Presegli ste dovoljeno število shranjenih projektov. Za neomejeno dodajanje projektov se prosimo prijavite!\\nTo storite s klikom na ikono v zgornjem desnem kotu.',\r\n\tnotSucceeded: 'ni uspelo',\r\n\tdocumentType: 'Tip dokumenta',\r\n\tprintPrice: 'Cene',\r\n\tprintColorImage: 'Barvna slika vrat',\r\n\tprintTechImage: 'Tehnična skica vrat',\r\n\tprintConditions: 'Prodajni in dobavni pogoji',\r\n\tselectPrintTemplate: 'Izberi predlogo dokumenta',\r\n\tselectPrintLanguage: 'Izberi jezik dokumenta',\r\n\tsendToConfirmation: 'Pošlji v odobritev',\r\n\tinConfirmation: 'V potrjevanju',\r\n\tisFinished: 'Zaključeno',\r\n\tconfirm: 'Potrdi',\r\n\treject: 'Zavrni',\r\n\treset: 'Ponastavi',\r\n\tdownloadPriceFile: 'Prenesi xlsx',\r\n\ttermsPayment: 'Plačilni pogoji',\r\n\ttermsSales: 'Dobavni pogoji',\r\n\taddTermPayment: 'Dodaj plačilni pogoj',\r\n\taddTermSales: 'Dodaj dobavni pogoj',\r\n\teditTermPayment: 'Uredi plačilni pogoj',\r\n\teditTermSales: 'Uredi dobavni pogoj',\r\n\tviewTermPayment: 'Poglej plačilni pogoj',\r\n\tviewTermSales: 'Poglej dobavni pogoj',\r\n\tterm: 'Naziv',\r\n\ttermsPage: 'Plačilni in dobavni pogoji',\r\n\tsend: 'Pošlji',\r\n\tconfirmDelete: 'Ali ste prepričani, da želite izbrisati izbrani vnos?',\r\n\tconfirmArchive: 'Ali ste prepričani, da želite arhivirati izbrani vnos?',\r\n\tconfirmReset: 'Ali ste prepričani, da želite ponastaviti izbrano konfiguracijo na privzete vrednosti?',\r\n\tconfirmClone: 'Ali ste prepričani, da želite klonirati izbrani vnos?',\r\n\tconfirmCopy: 'Ali ste prepričani, da želite kopirati izbrani vnos?',\r\n\tconfirmChangeStatusToSend: 'Ali ste prepričani, da želite spremeniti status dokumenta v Poslano?',\r\n\tconfirmChangeStatusSpecialTechnical: 'Pozor! Ob ponovni izdelavi tehnične dokumentacije bo že izdelana posebna tehnična dokumentacija izgubljena.',\r\n\tconfirmRequestDocumentation: 'Pozor! Ob ponovni izdelavi tehnične dokumentacije bo že izdelana posebna tehnična dokumentacija izgubljena.',\r\n\tconfirmSend: 'Ali ste prepričani, da želite poslati dokument?',\r\n\tconfirmSendDocument:\r\n\t\t'Prejemnik dokumenta je:
- partner: {Partner}
- prodajalec: {Salesman}
- stik: {Contact}

Ali ste prepričani, da želite poslati dokument?',\r\n\tchangeRecipient: 'Spremeni naslovnika',\r\n\ttotalPriceWithoutTax: 'Skupna cena brez DDV',\r\n\ttotalTax: 'Znesek DDV',\r\n\tfinalPrice: 'Skupna cena z DDV',\r\n\tselectTax: 'Izberi davek',\r\n\ttax: 'Davek',\r\n\tprintTemplateSelect: 'Predloga naj vsebuje:',\r\n\tuserUploaded: 'Naložil uporabnik',\r\n\tyes: 'Da',\r\n\tno: 'Ne',\r\n\tcontact: 'Kontakt',\r\n\tautoSaveConfiguration: 'Spremembe se shranjujejo samodejno',\r\n\tloginToViewPrices: 'Cene so vidne samo registriranim uporabnikom',\r\n\tcookieLaw:\r\n\t\t'Spletno mesto za polno delovanje uporablja piškotke. V piškotke shranjujemo vašo uporabo spletnega mesta. Z uporabo spletnega mesta dovoljujete uporabo teh piškotkov. Za več informacij obiščite:',\r\n\tcookiesTitle: 'Informacije o uporabi spletnih piškotkov',\r\n\tdetails: 'Podrobnosti',\r\n\tsourceDocument: 'Izvirni dok.',\r\n\tdownload: 'Prenesi',\r\n\tdownloadPDF: 'Prenesi PDF',\r\n\tclonePart: 'Artikel',\r\n\timageUpload: 'Nalaganje slike',\r\n\tnotImage: 'Naložena slika mora biti v formatu jpg, png ali bmp.',\r\n\tlanguageChange: 'Menjava jezika',\r\n\tlanguageChangeConfirm: 'Ob spremembi jezika boste preusmerjeni na začetni zaslon. Neshranjene spremembe konfiguracije bodo zavržene.',\r\n\tbrandChange: 'Menjava blagovne znamke',\r\n\tbrandChangeConfirm: 'Ob spremembi blagovne znamke boste preusmerjeni na začetni zaslon. Neshranjene spremembe konfiguracije bodo zavržene.',\r\n\tspecialOffer: 'Posebna ponudba',\r\n\tarchive: 'Arhiviraj',\r\n\tincludeArchived: 'Prikaži arhivirane dokumente',\r\n\tshowAll: 'Prikaži vse zapise',\r\n\tcartEmpty: 'Košarica je prazna',\r\n\tclipboard: 'Kopirano v odložišče',\r\n\tinputText: 'Prosimo, vnesite tekst',\r\n\tinputNumber: 'Prosimo, vnesite število',\r\n\ttwoDecimalPlaces: 'dve decimalni mesti',\r\n\ttreeDetails: 'Seznam parametrov',\r\n\tdeliveryTime: 'Rok',\r\n};\r\nexport default locale;\r\n","const locale = {\r\n\tpopular: 'Most popular',\r\n\tsearchResults: 'Search results',\r\n\tprice: 'Price',\r\n\tamount: 'Value',\r\n\tmodel: 'Model',\r\n\tname: 'Name',\r\n\turl: 'Url',\r\n\tcompany: 'Company',\r\n\tsave: 'Save',\r\n\tfilterTypeName: 'Type',\r\n\tfilterGroupName: 'Style',\r\n\tfiltersClear: 'Clear filters',\r\n\tfilters: 'Filters',\r\n\tsearchPlaceholder: 'Search...',\r\n\tconfigurationStep1: 'Model selection',\r\n\tconfigurationStep2: 'Model configuration',\r\n\tconfigurationStep3: 'Configuration overview',\r\n\tconfigurationStepCustomerView: 'Documents overview',\r\n\tselect: 'Select',\r\n\tquantity: 'Quantity',\r\n\toverview: 'Overview',\r\n\tversion: 'Version',\r\n\tmodelAndConfig: 'Model / ID Config.',\r\n\tstatus: 'Status',\r\n\tnoResults: 'No results',\r\n\tnoData: 'No data',\r\n\tnext: 'Next',\r\n\tprev: 'Back',\r\n\tnextPage: 'Next page',\r\n\tsendInquiry: 'Send inquiry',\r\n\tstep: 'Step',\r\n\tof: 'of',\r\n\tcomment: 'Comment',\r\n\tdocumentComment: 'Document comment',\r\n\tdocumentCommentRemove: 'Remove document comment',\r\n\tclearConfiguration: 'Reset configuration',\r\n\tcancel: 'Cancel',\r\n\tcontinue: 'Continue',\r\n\tclose: 'Close',\r\n\texception: 'Exception',\r\n\tgeneralException: 'Oops! Something went wrong.',\r\n\tapiException: 'Bad response from server',\r\n\tmyProjects: 'My projects',\r\n\tallProjects: 'All projects',\r\n\tassignDocument: 'Assign (internally)',\r\n\tassignDocumentWithinCompany: 'Assign within the company',\r\n\tassignDocumentOutsideCompany: 'Assign outside the company',\r\n\tassignDocumentToContactTitle: 'Contact',\r\n\tassignDocumentToContactAddNew: 'Add new contact',\r\n\tassignDocumentToContactConfirmation: 'Are you sure you want to change the contact?',\r\n\tsendDocument: 'Send to partner',\r\n\ttoggleProjectStatus: 'Project',\r\n\tunknownUser: 'Unknown',\r\n\tsaveConfiguration: 'Add to cart',\r\n\tsaveConfigurationToDocument: 'Save to document',\r\n\taddConfigurationToDocument: 'Add to document',\r\n\tcustomerNewOffer: 'Create document',\r\n\tcustomerProcess: 'Process',\r\n\tcustomerSendERP: 'Export to ERP',\r\n\tcustomerImportEdi: 'Import from ERP',\r\n\tcustomerNewVersion: 'Set default value',\r\n\tcustomerAssign: 'Assign to person',\r\n\tcustomerConfirmOrder: 'Release order confirmation',\r\n\tcustomerConfirmOrderMessage:\r\n\t\t'With this confirmation, the order (document no. {number}) is released for production. With confirmation I accept thereby associated financial obligations (payment obligation).',\r\n\tcustomerConfirmInqury: 'Confirm inquiry',\r\n\tcustomerConfirmInquryNewProject: 'Create in new project',\r\n\tcustomerSendToConfirm: 'Send to confirmation',\r\n\tcustomerSend: 'Send',\r\n\tcustomerForward: 'Forward',\r\n\tcustomerSendToSupplier: 'Send to supplier',\r\n\tcustomerSendOffer: 'Send document',\r\n\tcustomerSendDocument: 'Send document',\r\n\tcustomerDelete: 'Delete',\r\n\tcustomerDeleteConfirm: 'Are you sure you want to delete the selected record?',\r\n\tconfigurator: 'Configurator',\r\n\topen: 'Open',\r\n\tcustomerEditingTitleInquiry: 'Inquiry editing',\r\n\tcustomerEditingTitleOffer: 'Offer editing',\r\n\tdocumentEditing: 'Document editing',\r\n\tconfigurationEditing: 'Configuration editing',\r\n\tadminCalculationDiscounts: 'Discounts',\r\n\tadminCalculationAddDiscount: 'Add discount',\r\n\tadminCalculationAdditional: 'Accessories',\r\n\tadminCalculationCostsNet: 'Services',\r\n\tadminCalculationAdditionalCosts: \"Accessories' cost\",\r\n\tadminCalculationAddAdditionalCost: 'Add accessory',\r\n\tadminCalculationAddNetCost: 'Add service',\r\n\tadminCalculationConfigurationPrice: 'Configuration price',\r\n\tadminCalculationAdditionalSum: \"Accessories' cost total\",\r\n\tadminCalculationConfigurationWithAdditionalSum: 'Configuration price inc. accessories',\r\n\tadminCalculationDiscountPercentageSum: 'Discount percentage total',\r\n\tadminCalculationDiscountSum: 'Discount value total',\r\n\tadminCalculationConfigurationWithDiscountSum: 'Configuration price inc. accessories & discounts',\r\n\tadminCalculationServiceSum: 'Services cost total',\r\n\tadminCalculationSum: 'Value',\r\n\tadminRemark: 'Remark',\r\n\tadminRemarkAddImage: 'Upload image',\r\n\tadminDocumentationAdd: 'Upload attachment',\r\n\tadminDocumentationAddUrl: 'Add link',\r\n\tadminDocumentCustomer: 'Customer',\r\n\tadminDocumentContact: 'Contact',\r\n\tadminDocumentPartner: 'Responsible partner',\r\n\tadminDocumentPartnerRecipient: 'Partner',\r\n\tadminDocumentDateModified: 'Last modified date',\r\n\tadminDocumentStatus: 'Status',\r\n\tadminDocumentDocumentNumber: 'Document number',\r\n\tadminDocumentProject: 'Project',\r\n\tadminDocumentProjectStatus: 'Proj. status',\r\n\tadminDocumentDocumentOrder: 'Document order num.',\r\n\tadminDocumentBuyerOrderNumber: 'Buyer order num.',\r\n\tadminDocumentComission: 'Commission',\r\n\tadminDocumentCustomerNumber: 'Customer number',\r\n\tadminDocumentCustomerPosition: 'Customer position',\r\n\tadminDocumentCustomerSubPosition: 'Customer sub position',\r\n\tadminDocumentCommission: 'Commission',\r\n\tadminDocumentDeliveryTime: 'Delivery time',\r\n\tadminMenuDocument: 'Document data',\r\n\tadminMenuConfigurations: 'Configurations',\r\n\tadminMenuHistory: 'History',\r\n\tadminMenuConfiguration: 'Configuration',\r\n\tadminMenuCalculation: 'Configuration overview',\r\n\tadminMenuImages: 'Images',\r\n\tadminMenuSalesRemarks: 'Sales remarks',\r\n\tadminMenuInstallerRemarks: 'Installer remarks',\r\n\tadminMenuPosition: 'Position data',\r\n\tadminMenuDiscountsCosts: 'Discounts, Services, VAT',\r\n\tadminMenuTechnicalDocumentation: 'Technical documentation',\r\n\tadminMenuPrintDocument: 'Print and send',\r\n\tinsideView: 'Inside view',\r\n\tfacade: 'Facade',\r\n\tcartSuccess: 'By clicking the cart icon, you can edit its contents.',\r\n\tsaving: 'Saving',\r\n\tcontactTitle: 'Contact data and agreements',\r\n\tcontactTitleSales: 'Contact data',\r\n\tinquirySalesDialog: 'Document',\r\n\tcart: 'Cart',\r\n\tcartSendInquiry: 'Send inquiry',\r\n\tcartRemove: 'Remove',\r\n\tcartInquirySentText: ', thank you for your inquiry. We will process it as soon as possible.',\r\n\tcartInquirySentText2: 'Thank you for your inquiry. We will process it as soon as possible.',\r\n\tcartInquirySentText3: 'Document created',\r\n\tcartInquirySent: 'Successfully sent request',\r\n\tcartOverride: 'Do you want to overwrite the existing configuration or create a new one?',\r\n\tcartSaving: 'Saving configuration',\r\n\tcartSavingSuccess: 'Your configuration was added to Cart',\r\n\tdocumentSaving: 'Saving document',\r\n\tcartButtonOverride: 'Overwrite existing configuration',\r\n\tcartButtonNew: 'Create new configuration',\r\n\tcartRemoveTitle: 'Configuration removal',\r\n\tcartRemovalText: 'Configuration succesfully removed',\r\n\taddDiscount: 'Discount',\r\n\taddCost: 'Cost',\r\n\taddNetCost: 'Service',\r\n\tdiscountText: 'Name',\r\n\tdiscountValue: 'Percent (%)',\r\n\tdiscountLevel: 'Level',\r\n\tdiscountType: 'Discount type',\r\n\tdiscount: 'Percent',\r\n\tsortOrder: 'Sort order',\r\n\tdiscountAmount: 'Discount amount',\r\n\tdiscountValueAfter: 'Value after discount',\r\n\tcostText: 'Name',\r\n\tcostValue: 'Amount',\r\n\trequestDocumentation: 'Request documentation',\r\n\trequestSpecialDocumentation: 'Request special documentation',\r\n\tloadSpecialDocumentation: 'Load special documentation',\r\n\tuser: 'User',\r\n\timage: 'Image',\r\n\tdate: 'Date',\r\n\tcustomer: 'Customer',\r\n\tpartner: 'Partner',\r\n\tcommission: 'Commission',\r\n\tresponsiblePerson: 'Responsibne person',\r\n\tposition: 'Position',\r\n\tvalue: 'Value',\r\n\tdataLastChange: 'Last change date',\r\n\tdocumentation: 'Documentation',\r\n\tinquiries: 'Inquiries',\r\n\toffers: 'Offers',\r\n\tprintOffer: 'Print document',\r\n\tprintDownload: 'Download',\r\n\tprintChangeToSend: 'Change to Sent',\r\n\tprintEditSent: 'Create email',\r\n\tprintEmailSubject: 'Varialis - {number}',\r\n\tprintEmailBody:\r\n\t\t'Dear Sir or Madam,\\n\\n\\nBased on your inquiry please find the corresponding quotation nr. {number} in attachment. \\n\\nBest regards,\\nVARIALIS portal\\n\\n\\n\\nDisclaimer: E-mails can contain confidential information that is only intended for the addressee. If the message was sent elsewhere due to an address or transmission error, please inform the author of the email. If the message was not intended for you, the information in the message may not be used, shared, disseminated, copied, printed or exploited in any way.',\r\n\temail: 'Email',\r\n\tpassword: 'Password',\r\n\tsignIn: 'Sign In',\r\n\tsignUp: 'Sign Up',\r\n\tprofile: 'Profile',\r\n\tsigningOut: 'Signing Out',\r\n\tsalesman: 'Salesman',\r\n\tsalesmanResponsible: 'Responsible salesman',\r\n\tsignOut: 'Sign Out',\r\n\tsubmit: 'Submit',\r\n\tloginSuccess: '',\r\n\tloginError: 'There was a problem signin you in.',\r\n\taddressing: 'Title',\r\n\tfirstName: 'First name',\r\n\tfirstAndLastName: 'First and last name',\r\n\tlastName: 'Last name',\r\n\tloginFailed: 'Login failed',\r\n\tloginNoPass: 'Enter your password',\r\n\tloginNoUsername: 'Enter your email',\r\n\tforgotPassword: 'Forgot password?',\r\n\tresetPassword: 'Reset your password',\r\n\tresetPasswordMessage: 'Confirmation email has been sent, please check your inbox to proceed.',\r\n\tregistrationFailed: 'Registration failed',\r\n\tmissingFields: 'Please enter all required fields.',\r\n\tregistrationSucceeded: 'Thank you for signing up. You received an email with link for finishing the registration process.',\r\n\tprofileUpdateSucceeded: 'Your profile data has been updated.',\r\n\tprofileDeliveryTitle: 'Delivery address',\r\n\tprofileReceiptTitle: 'Receipt address',\r\n\tprofileAddressAdd: 'Add address',\r\n\tprofileAddressEdit: 'Edit address',\r\n\tdifferentThenContactAddress: 'Different than contact address',\r\n\tactivationSucceeded: 'Activation succeeded',\r\n\taccountActivation: 'Account activation',\r\n\tconfirmPassword: 'Confirm password',\r\n\tactivate: 'Activate',\r\n\tmissingToken: 'Invalid activation. Please sign up again.',\r\n\ttelephone: 'Telephone',\r\n\tvat: 'VAT number',\r\n\tregistrationNumber: 'Registration number',\r\n\tinquiryTitle:\r\n\t\t'Thank you for your inquiry. For the purpose of processing it, please fill in the contact information, check any (optional) consents and send the inquiry by pressing the Send button.
You hereby consent that our company and our sales partners contact you by e-mail and/or telephone using the provided information in order to fulfill your inquiry request, make an offer or provide advice in relation to products. In case of an order, you allow us to pass on your data to verified professional staff for counseling and on-site survey so that the order can be fulfilled.',\r\n\tinquiryTitleCustomer: 'Fill customer contact data',\r\n\tinquiryTitleExistingCustomer: 'Select existing contact',\r\n\tinquiryDocumentType: 'Document type',\r\n\taddress: 'Street and house number (Address)',\r\n\tcity: 'City',\r\n\tzip: 'Zip',\r\n\tpost: 'Postal Code',\r\n\tcountry: 'Country',\r\n\tselectCountry: 'Select country',\r\n\tselectDiscountType: 'Select discount type',\r\n\tcompanyName: 'Company name',\r\n\tcompanyRegistration: 'Company registration number',\r\n\tcompanyVAT: 'Company VAT ID',\r\n\tinquiryLegalAdd: 'Additionally for legal entities',\r\n\tinquiryConsents: 'Consents',\r\n\tinquiryConsent1Title: 'Offers and reminders',\r\n\tinquiryConsent1: 'e.g. informing you about relevant offers of products, spare parts, accessories and other products and services.',\r\n\tinquiryConsent2Title: 'Notifications',\r\n\tinquiryConsent2:\r\n\t\t'announcements and invitations to events at the launch of new models and catalogs, fairs, open days, other presentations and events.',\r\n\tinquiryConsent3Title: 'Surveys',\r\n\tinquiryConsent3: 'research to obtain your opinion to improve our products and services.',\r\n\tequalPasswords: 'Please enter equal passwords',\r\n\ttype: 'Type',\r\n\tbrands: 'Brands',\r\n\tpartners: 'Partners',\r\n\tdelete: 'Delete',\r\n\tlanguages: 'Languages',\r\n\tclearCache: 'Destroy cache',\r\n\ttags: 'Find tag',\r\n\ttext: 'Text',\r\n\tdesc: 'Description',\r\n\tconfiguration: 'Configuration',\r\n\tdocument: 'Document',\r\n\tedit: 'Edit',\r\n\tchange: 'Change',\r\n\tview: 'View',\r\n\tclone: 'Item',\r\n\tcopy: 'Copy',\r\n\tremove: 'Remove',\r\n\tdefault: 'Default',\r\n\tadd: 'Add',\r\n\tdeleting: 'Deleting...',\r\n\tadding: 'Adding...',\r\n\tcloning: 'Cloning...',\r\n\tprint: 'Print',\r\n\tsubmitForProduction: 'Send to production',\r\n\tcartAddingDisabled:\r\n\t\t\"You've reached saved projects limit. Please log in for unlimited number of projects.\\nFor registration or login click the following icon in the upper right corner.\",\r\n\tnotSucceeded: 'failed',\r\n\tdocumentType: 'Document type',\r\n\tprintPrice: 'Prices',\r\n\tprintColorImage: 'Color image',\r\n\tprintTechImage: 'Technical drawing',\r\n\tprintConditions: 'Payment and delivery terms',\r\n\tselectPrintTemplate: 'Select template',\r\n\tselectPrintLanguage: 'Select language',\r\n\tsendToConfirmation: 'Send to confirmation',\r\n\tinConfirmation: 'In confirmation',\r\n\tisFinished: 'Finished',\r\n\tconfirm: 'Confirm',\r\n\treject: 'Reject',\r\n\treset: 'Reset',\r\n\tdownloadPriceFile: 'Download xlsx',\r\n\ttermsPayment: 'Payment terms',\r\n\ttermsSales: 'Sales terms',\r\n\taddTermPayment: 'Add payment term',\r\n\taddTermSales: 'Add delivery term',\r\n\teditTermPayment: 'Edit payment term',\r\n\teditTermSales: 'Edit delivery term',\r\n\tviewTermPayment: 'View sales term',\r\n\tviewTermSales: 'View delivery term',\r\n\tterm: 'Term',\r\n\ttermsPage: 'Payment and delivery Terms',\r\n\tsend: 'Send',\r\n\tconfirmDelete: 'Are you sure you want to delete the selected record?',\r\n\tconfirmArchive: 'Are you sure you want to archive the selected record?',\r\n\tconfirmReset: 'Are you sure you want to reset the selected configuration to default settings?',\r\n\tconfirmClone: 'Are you sure you want to clone the selected record?',\r\n\tconfirmCopy: 'Are you sure you want to copy the selected record?',\r\n\tconfirmChangeStatusToSend: 'Are you sure you want to change the status of the document to Sent?',\r\n\tconfirmChangeStatusSpecialTechnical:\r\n\t\t'Attention! By repeating request for tech. documentation the prepared special technical documentation will be lost.',\r\n\tconfirmRequestDocumentation: 'Attention! By repeating request for tech. documentation the prepared special technical documentation will be lost.',\r\n\tconfirmSend: 'Are you sure you want to send the document?',\r\n\tconfirmSendDocument:\r\n\t\t'The recipient of the document is:
- Partner: {Partner}
- Salesman: {Salesman}
- Contact: {Contact}

Are you sure you want to send the document?',\r\n\tchangeRecipient: 'Change recipient',\r\n\ttotalPriceWithoutTax: 'Total price without VAT',\r\n\ttotalTax: 'Total VAT',\r\n\tfinalPrice: 'Total price inc. VAT',\r\n\tselectTax: 'Select taxation',\r\n\ttax: 'VAT',\r\n\tprintTemplateSelect: 'Document should include:',\r\n\tuserUploaded: 'User uploaded',\r\n\tyes: 'Yes',\r\n\tno: 'No',\r\n\tcontact: 'Contact',\r\n\tautoSaveConfiguration: 'Changes are saved automatically',\r\n\tloginToViewPrices: 'Please login to view prices',\r\n\tcookieLaw:\r\n\t\t'The website uses cookies to ensure its full functionality. Cookies store your use of the site. By using the Website, you authorize the use of these cookies. Visit for more information:',\r\n\tcookiesTitle: 'Information on the use of cookies',\r\n\tdetails: 'Details',\r\n\tsourceDocument: 'Originating doc.',\r\n\tdownload: 'Download',\r\n\tdownloadPDF: 'Download PDF',\r\n\tclonePart: 'Item',\r\n\timageUpload: 'Image upload',\r\n\tnotImage: 'Uploaded picture must be of type jpg, png or bmp.',\r\n\tlanguageChange: 'Language change',\r\n\tlanguageChangeConfirm: 'By changing language you will be redirected to initial screen. Unsaved configuration changes will be disregarded.',\r\n\tbrandChange: 'Brand change',\r\n\tbrandChangeConfirm: 'By changing brand you will be redirected to initial screen. Unsaved configuration changes will be disregarded.',\r\n\tspecialOffer: 'Special offer',\r\n\tarchive: 'Archive',\r\n\tincludeArchived: 'Show archived documents',\r\n\tshowAll: 'Show all',\r\n\tcartEmpty: 'No items in cart',\r\n\tclipboard: 'Copied to clipboard',\r\n\tinputText: 'Please input text',\r\n\tinputNumber: 'Please input a number',\r\n\ttwoDecimalPlaces: 'two decimal places',\r\n\ttreeDetails: 'Parameter list',\r\n\tdeliveryTime: 'Delivery',\r\n};\r\nexport default locale;\r\n","const locale = {\r\n\tpopular: 'Beliebteste Modelle',\r\n\tsearchResults: 'Suchergebnisse',\r\n\tprice: 'Preis',\r\n\tamount: 'Betrag',\r\n\tmodel: 'Model',\r\n\tname: 'Name',\r\n\turl: 'Url',\r\n\tcompany: 'Unternehmen',\r\n\tsave: 'Speichern',\r\n\tfilterTypeName: 'Typ',\r\n\tfilterGroupName: 'Stil',\r\n\tfiltersClear: 'Filter löschen',\r\n\tfilters: 'Filter',\r\n\tsearchPlaceholder: 'Suchen...',\r\n\tconfigurationStep1: 'Modellauswahl',\r\n\tconfigurationStep2: 'Konfiguration',\r\n\tconfigurationStep3: 'Konfigurationsübersicht',\r\n\tconfigurationStepCustomerView: 'Dokumentenübersicht',\r\n\tselect: 'Auswählen',\r\n\tquantity: 'Menge',\r\n\toverview: 'Überblick',\r\n\tversion: 'Version',\r\n\tmodelAndConfig: 'Model / ID Konfig.',\r\n\tstatus: 'Status',\r\n\tnoResults: 'Keine Ergebnisse',\r\n\tnoData: 'Keine Daten',\r\n\tnext: 'Weiter',\r\n\tprev: 'Züruck',\r\n\tnextPage: 'Nächste Seite',\r\n\tsendInquiry: 'Anfrage absenden',\r\n\tstep: 'Schritt',\r\n\tof: 'von',\r\n\tcomment: 'Kommentar',\r\n\tdocumentComment: 'Dokumentkommentar',\r\n\tdocumentCommentRemove: 'Dokumentkommentar entfernen',\r\n\tclearConfiguration: 'Konfiguration zurücksetzen',\r\n\tcancel: 'Abbrechen',\r\n\tcontinue: 'Fortsetzen',\r\n\tclose: 'Schließen',\r\n\texception: 'Fehler',\r\n\tgeneralException: 'Ups! Irgenwas lief schief.',\r\n\tapiException: 'Serverfehler',\r\n\tmyProjects: 'Meine Projekte',\r\n\tallProjects: 'Alle Projekte',\r\n\tassignDocument: 'Zuweisen (intern)',\r\n\tassignDocumentWithinCompany: 'Innerhalb des Unternehmens zuordnen',\r\n\tassignDocumentOutsideCompany: 'Außerhalb des Unternehmens zuordnen',\r\n\tassignDocumentToContactTitle: 'Ansprechpartner',\r\n\tassignDocumentToContactAddNew: 'Ansprechpartner hinzufügen',\r\n\tassignDocumentToContactConfirmation: 'Möchten Sie den Ansprechpartner wirklich ändern?',\r\n\tsendDocument: 'An Partner senden',\r\n\ttoggleProjectStatus: 'Projekt',\r\n\tunknownUser: 'Unbekannt',\r\n\tsaveConfiguration: 'Zum Warenkorb hinzufügen',\r\n\tsaveConfigurationToDocument: 'Speichern',\r\n\taddConfigurationToDocument: 'Zum Dokument hinzufügen',\r\n\tcustomerNewOffer: 'Dokument erstellen',\r\n\tcustomerProcess: 'Bearbeiten',\r\n\tcustomerSendERP: 'An ERP senden',\r\n\tcustomerImportEdi: 'Aus ERP importieren',\r\n\tcustomerNewVersion: 'Konfiguration zurücksetzen',\r\n\tcustomerAssign: 'Person zuordnen',\r\n\tcustomerConfirmOrder: 'AB freigeben',\r\n\tcustomerConfirmOrderMessage:\r\n\t\t'Mit dieser Bestätigung ist die Bestellung (Dokument Nr. {number}) zur Produktion freigegeben. Mit Bestätigung akzeptiere ich damit verbundene finanzielle Verpflichtungen (Zahlungspflicht).',\r\n\tcustomerConfirmInqury: 'Angebot erstellen',\r\n\tcustomerConfirmInquryNewProject: 'Im neuen Projekt erstellen',\r\n\tcustomerSendToConfirm: 'Zur Bestätigung senden',\r\n\tcustomerSend: 'Senden',\r\n\tcustomerForward: 'Weiterleiten',\r\n\tcustomerSendToSupplier: 'An Lieferant senden',\r\n\tcustomerSendOffer: 'Dokument senden',\r\n\tcustomerSendDocument: 'Dokument senden',\r\n\tcustomerDelete: 'Löschen',\r\n\tcustomerDeleteConfirm: 'Möchten Sie den ausgewählten Eintrag wirklich löschen?',\r\n\tconfigurator: 'Konfigurator',\r\n\topen: 'Öffnen',\r\n\tcustomerEditingTitleInquiry: 'Anfrage bearbeiten',\r\n\tcustomerEditingTitleOffer: 'Angebot bearbeiten',\r\n\tdocumentEditing: 'Dokument',\r\n\tconfigurationEditing: 'Konfiguration',\r\n\tadminCalculationDiscounts: 'Rabatte',\r\n\tadminCalculationAddDiscount: 'Rabatt hinzufügen',\r\n\tadminCalculationAdditional: 'Zusatzoptionen',\r\n\tadminCalculationCostsNet: 'Dienstleistungen',\r\n\tadminCalculationAdditionalCosts: 'Zusatzkosten',\r\n\tadminCalculationAddAdditionalCost: 'Zusatzkosten hinzufügen',\r\n\tadminCalculationAddNetCost: 'Dienstleistung hinzufügen',\r\n\tadminCalculationConfigurationPrice: 'Konfigurationspreis',\r\n\tadminCalculationAdditionalSum: 'Summe Zusatzkosten',\r\n\tadminCalculationConfigurationWithAdditionalSum: 'Konfigurationspreis inkl. Zusatzoptionen',\r\n\tadminCalculationDiscountPercentageSum: 'Gesamtrabatt (%)',\r\n\tadminCalculationDiscountSum: 'Gesamtrabatt (Wert)',\r\n\tadminCalculationConfigurationWithDiscountSum: 'Konfigurationspreis inkl. Zusatzoptionen und Rabatte',\r\n\tadminCalculationServiceSum: 'Summe Dienstleistungen',\r\n\tadminCalculationSum: 'Gesamtpreis',\r\n\tadminRemark: 'Anmerkung',\r\n\tadminRemarkAddImage: 'Bild hochladen',\r\n\tadminDocumentationAdd: 'Dokument hochladen',\r\n\tadminDocumentationAddUrl: 'Link hinzufügen',\r\n\tadminDocumentCustomer: 'Kunde',\r\n\tadminDocumentContact: 'Ansprechpartner',\r\n\tadminDocumentPartner: 'Verantwortlicher Partner',\r\n\tadminDocumentPartnerRecipient: 'Partner',\r\n\tadminDocumentDateModified: 'Letzte Änderung',\r\n\tadminDocumentStatus: 'Status',\r\n\tadminDocumentDocumentNumber: 'Dokumentnummer',\r\n\tadminDocumentProject: 'Projekt',\r\n\tadminDocumentProjectStatus: 'Proj. Status',\r\n\tadminDocumentDocumentOrder: 'Dok. Nr.',\r\n\tadminDocumentBuyerOrderNumber: 'Bestellnummer',\r\n\tadminDocumentComission: 'Kommission',\r\n\tadminDocumentCustomerNumber: 'Bestellnummer',\r\n\tadminDocumentCustomerPosition: 'Position',\r\n\tadminDocumentCustomerSubPosition: 'Subposition',\r\n\tadminDocumentCommission: 'Kommission',\r\n\tadminDocumentDeliveryTime: 'Liefertermin',\r\n\tadminMenuDocument: 'Dokumentdaten',\r\n\tadminMenuConfigurations: 'Konfigurationen',\r\n\tadminMenuHistory: 'Chronik',\r\n\tadminMenuConfiguration: 'Konfiguration',\r\n\tadminMenuCalculation: 'Konfigurationsübersicht',\r\n\tadminMenuImages: 'Bilder',\r\n\tadminMenuSalesRemarks: 'Verkaufsanmerkungen',\r\n\tadminMenuInstallerRemarks: 'Monteur',\r\n\tadminMenuPosition: 'Positionsdaten',\r\n\tadminMenuDiscountsCosts: 'Rabatte, Dienstleistungen, USt.',\r\n\tadminMenuTechnicalDocumentation: 'Technische Dokumentation',\r\n\tadminMenuPrintDocument: 'Drucken und senden',\r\n\tinsideView: 'Innenansicht',\r\n\tfacade: 'Fassade',\r\n\tcartSuccess: 'Durch Klicken auf das Warenkorbsymbol können Sie dessen Inhalt bearbeiten.',\r\n\tsaving: 'Speichern',\r\n\tcontactTitle: 'Kontaktdaten und Zustimmungen',\r\n\tcontactTitleSales: 'Kontaktdaten',\r\n\tinquirySalesDialog: 'Dokument',\r\n\tcart: 'Warenkorb',\r\n\tcartSendInquiry: 'Anfrage absenden',\r\n\tcartRemove: 'Löschen',\r\n\tcartInquirySentText: ', vielen Dank für Ihre Anfrage. Sie wird so schnell wie möglich bearbeitet.',\r\n\tcartInquirySentText2: 'Vielen Dank für Ihre Anfrage. Sie wird so schnell wie möglich bearbeitet.',\r\n\tcartInquirySentText3: 'Dokument erstellt',\r\n\tcartInquirySent: 'Anfrage erfolgreich gesendet',\r\n\tcartOverride: 'Möchten Sie die vorhandene Konfiguration überschreiben oder eine neue erstellen?',\r\n\tcartSaving: 'Die Konfiguration wird gespeichert',\r\n\tcartSavingSuccess: 'Ihre Konfiguration wurde zum Warenkorb hinzugefügt',\r\n\tdocumentSaving: 'Das Dokument wird gespeichert',\r\n\tcartButtonOverride: 'Vorhandene Konfiguration überschreiben',\r\n\tcartButtonNew: 'Neue Konfiguration erstellen',\r\n\tcartRemoveTitle: 'Die Konfigurationen werden gelöscht',\r\n\tcartRemovalText: 'Die Konfigurationen wurden gelöscht',\r\n\taddDiscount: 'Rabatt',\r\n\taddCost: 'Zusatzoption',\r\n\taddNetCost: 'Dienstleistung',\r\n\tdiscountText: 'Name',\r\n\tdiscountValue: 'Prozent (%)',\r\n\tdiscountLevel: 'Niveau',\r\n\tdiscountType: 'Typ des Rabatts',\r\n\tdiscount: 'Prozent',\r\n\tsortOrder: 'Reihenfolge',\r\n\tdiscountAmount: 'Rabattwert',\r\n\tdiscountValueAfter: 'Preis nach Rabatt',\r\n\tcostText: 'Name',\r\n\tcostValue: 'Menge',\r\n\trequestDocumentation: 'Technische Zeichnung anfordern',\r\n\trequestSpecialDocumentation: 'Sonderzeichnung anfordern',\r\n\tloadSpecialDocumentation: 'Sonderzeichnung hochladen',\r\n\tuser: 'Benutzer',\r\n\timage: 'Bild',\r\n\tdate: 'Datum',\r\n\tcustomer: 'Kunde',\r\n\tpartner: 'Partner',\r\n\tcommission: 'Kommission',\r\n\tresponsiblePerson: 'Verantwortliche',\r\n\tposition: 'Position',\r\n\tvalue: 'Wert',\r\n\tdataLastChange: 'Datum der Änderung',\r\n\tdocumentation: 'Dokumentation',\r\n\tinquiries: 'Anfragen',\r\n\toffers: 'Angebote',\r\n\tprintOffer: 'Dokument drucken',\r\n\tprintDownload: 'Herunterladen',\r\n\tprintChangeToSend: 'Zu Gesendet ändern',\r\n\tprintEditSent: 'E-Mail vorbereiten',\r\n\tprintEmailSubject: 'Varialis - {number}',\r\n\tprintEmailBody:\r\n\t\t'Sehr geehrte Damen und Herren,\\n\\nIm Anhang erhalten Sie das Angebot Nr. {number} zu Ihrer Anfrage. \\n\\nMit freundlichen Grüßen,\\nVARIALIS portal\\n\\n\\n\\nHaftungsausschluss: E-Mails können vertrauliche Informationen enthalten, die nur für den Adressaten bestimmt sind. Falls die Nachricht aufgrund eines Adress- oder Übermittlungsfehlers an anderer Stelle verschickt wurde, informieren Sie bitte den Verfasser der E-Mail. Wenn die Nachricht nicht für Sie bestimmt war, dürfen die Informationen in der Nachricht nicht verwendet, weitergegeben, verbreitet, kopiert, gedruckt oder in irgendeiner Weise verwendet werden.',\r\n\temail: 'E-Mail Adresse',\r\n\tpassword: 'Passwort',\r\n\tsignIn: 'Anmeldung',\r\n\tsignUp: 'Registrierung',\r\n\tprofile: 'Profil',\r\n\tsigningOut: 'Sie werden abgemeldet.',\r\n\tsalesman: 'Sachbearbeiter',\r\n\tsalesmanResponsible: 'Verantwortlicher Sachbearbeiter',\r\n\tsignOut: 'Abmelden',\r\n\tsubmit: 'Absenden',\r\n\tloginSuccess: '',\r\n\tloginError: 'Beim Anmelden ist ein Problem aufgetreten.',\r\n\taddressing: 'Anrede',\r\n\tfirstName: 'Vorname',\r\n\tfirstAndLastName: 'Vor- und Nachname',\r\n\tlastName: 'Nachname',\r\n\tloginFailed: 'Anmeldung fehlgeschlagen',\r\n\tloginNoPass: 'Geben Sie Ihr Passwort ein',\r\n\tloginNoUsername: 'Geben sie ihre E-Mail Adresse ein',\r\n\tforgotPassword: 'Passwort vergessen?',\r\n\tresetPassword: 'Passwort ändern',\r\n\tresetPasswordMessage:\r\n\t\t'Eine Bestätigungsnachricht wurde an die von Ihnen eingegebene E-Mail-Adresse gesendet. Bitte prüfen Sie Ihren Posteingang, um fortzufahren.',\r\n\tregistrationFailed: 'Registrierung fehlgeschlagen',\r\n\tmissingFields: 'Bitte geben Sie alle erforderlichen Felder ein.',\r\n\tregistrationSucceeded:\r\n\t\t'Danke für die Registrierung. Sie haben eine Nachricht an die von Ihnen eingegebene E-Mail-Adresse erhalten, um den Vorgang abzuschließen.',\r\n\tprofileUpdateSucceeded: 'Ihre Profildaten wurden aktualisiert.',\r\n\tprofileDeliveryTitle: 'Lieferadresse',\r\n\tprofileReceiptTitle: 'Rechnungsadresse',\r\n\tprofileAddressAdd: 'Adresse hinzufügen',\r\n\tprofileAddressEdit: 'Adresse bearbeiten',\r\n\tdifferentThenContactAddress: 'Anders als Kontaktadresse',\r\n\tactivationSucceeded: 'Aktivierung erfolgreich',\r\n\taccountActivation: 'Account Aktivierung',\r\n\tconfirmPassword: 'Passwort bestätigen',\r\n\tactivate: 'Aktivieren',\r\n\tmissingToken: 'Kontoaktivierung fehlgeschlagen. Bitte versuchen Sie erneut, sich zu registrieren.',\r\n\ttelephone: 'Telefon',\r\n\tvat: 'USt-ID Nr.',\r\n\tregistrationNumber: 'Registrationsnummer',\r\n\tinquiryTitle:\r\n\t\t'Vielen Dank für Ihre Anfrage. Zum Zwecke der Bearbeitung füllen Sie bitte die Kontaktdaten aus, prüfen ggf. (optionale) Zustimmungen zur Datenschutzerklärung und senden die Anfrage über den Senden-Button ab.
Hiermit erklären Sie sich damit einverstanden, dass unser Unternehmen und unsere Vertriebspartner Sie per E-Mail und/oder kontaktieren Telefonisch nutzen wir die bereitgestellten Informationen, um Ihre Anfrage zu bearbeiten, ein Angebot abzugeben oder eine Produktberatung zu erteilen. Im Falle einer Bestellung gestatten Sie uns, Ihre Daten an geprüftes Fachpersonal zur Beratung und Vor-Ort-Besichtigung weiterzugeben, damit die Bestellung abgewickelt werden kann.',\r\n\tinquiryTitleCustomer: 'Kundenkontaktdaten ausfüllen',\r\n\tinquiryTitleExistingCustomer: 'Ansprechpartner auswählen',\r\n\tinquiryDocumentType: 'Dokument Typ',\r\n\taddress: 'Straße und Hausnummer (Adresse)',\r\n\tcity: 'Ort',\r\n\tzip: 'Postleitzahl',\r\n\tpost: 'Postleitzahl',\r\n\tcountry: 'Land',\r\n\tselectCountry: 'Land auswählen',\r\n\tselectDiscountType: 'Typ des Rabatts auswählen',\r\n\tcompanyName: 'Firmenname',\r\n\tcompanyRegistration: 'Handelsregisternummer',\r\n\tcompanyVAT: 'USt-IdNr.',\r\n\tinquiryLegalAdd: 'Zusätzlich für juristische Personen',\r\n\tinquiryConsents: 'Zustimmungen',\r\n\tinquiryConsent1Title: 'Angebote und Erinnerungen',\r\n\tinquiryConsent1: 'z.B. Informieren über relevante Angebote von Produkten, Ersatzteilen, Zubehör und anderen Produkten und Dienstleistungen.',\r\n\tinquiryConsent2Title: 'Benachrichtigungen',\r\n\tinquiryConsent2:\r\n\t\t'Ankündigungen und Einladungen zu Veranstaltungen zur Markteinführung neuer Modelle und Kataloge, Messen, Tage der offenen Tür, sonstige Präsentationen und Veranstaltungen.',\r\n\tinquiryConsent3Title: 'Umfragen',\r\n\tinquiryConsent3: 'Forschung, um Ihre Meinung zur Verbesserung von Produkten und Dienstleistungen einzuholen.',\r\n\tequalPasswords: 'Bitte gleiche Passwörter eingeben',\r\n\ttype: 'Typ',\r\n\tbrands: 'Marken',\r\n\tpartners: 'Partner',\r\n\tdelete: 'Löschen',\r\n\tlanguages: 'Sprachen',\r\n\tclearCache: 'Cache löschen',\r\n\ttags: 'Tag suchen',\r\n\ttext: 'Text',\r\n\tdesc: 'Beschreibung',\r\n\tconfiguration: 'Konfiguration',\r\n\tdocument: 'Dokument',\r\n\tchange: 'Ändern',\r\n\tedit: 'Bearbeiten',\r\n\tview: 'Überblick',\r\n\tclone: 'Klonen',\r\n\tcopy: 'Kopieren',\r\n\tremove: 'Löschen',\r\n\tdefault: 'Default',\r\n\tadd: 'Hinzufügen',\r\n\tdeleting: 'Löschen...',\r\n\tadding: 'Hinzufügen...',\r\n\tcloning: 'Klonieren...',\r\n\tprint: 'Drucken',\r\n\tsubmitForProduction: 'Zur Produktion senden',\r\n\tcartAddingDisabled:\r\n\t\t'Sie haben die maximal zulässige Anzahl gespeicherter Projekte erreicht. Bitte loggen Sie sich für unbegrenzte Projekte ein.\\nZur Registrierung oder Anmeldung klicken Sie bitte auf das Icon in der oberen rechten Ecke.',\r\n\tnotSucceeded: 'gescheitert',\r\n\tdocumentType: 'Typ des Dokuments',\r\n\tprintPrice: 'Preise',\r\n\tprintColorImage: 'Farbbild',\r\n\tprintTechImage: 'Technische Zeichnung',\r\n\tprintConditions: 'Zahlungs- und Lieferbedingungen',\r\n\tselectPrintTemplate: 'Dokumentvorlage auswählen',\r\n\tselectPrintLanguage: 'Sprache des Dokuments auswählen',\r\n\tsendToConfirmation: 'Zur Bestätigung senden',\r\n\tinConfirmation: 'Im Bestätigungsprozess',\r\n\tisFinished: 'Abgeschlossen',\r\n\tconfirm: 'Bestätigen',\r\n\treject: 'Ablehnen',\r\n\treset: 'Zurücksetzen',\r\n\tdownloadPriceFile: 'Xlsx herunterladen',\r\n\ttermsPayment: 'Zahlungsbedingungen',\r\n\ttermsSales: 'Lieferbedingungen',\r\n\taddTermPayment: 'Zahlungsbedingung hinzufügen',\r\n\taddTermSales: 'Lieferbedingung hinzufügen',\r\n\teditTermPayment: 'Zahlungsbedingung bearbeiten',\r\n\teditTermSales: 'Lieferbedingung bearbeiten',\r\n\tviewTermPayment: 'Zahlungsbedingungen anzeigen',\r\n\tviewTermSales: 'Lieferbedingungen anzeigen',\r\n\tterm: 'Bedingung',\r\n\ttermsPage: 'Zahlungs- und Lieferbedingungen',\r\n\tsend: 'Senden',\r\n\tconfirmDelete: 'Möchten Sie den ausgewählten Eintrag wirklich löschen?',\r\n\tconfirmArchive: 'Möchten Sie den ausgewählten Eintrag wirklich archivieren?',\r\n\tconfirmReset: 'Möchten Sie die ausgewählte Konfiguration wirklich auf die Standardeinstellungen zurücksetzen?',\r\n\tconfirmClone: 'Möchten Sie den ausgewählten Eintrag wirklich klonieren?',\r\n\tconfirmCopy: 'Möchten Sie den ausgewählten Eintrag wirklich kopieren?',\r\n\tconfirmChangeStatusToSend: 'Möchten Sie den Status des Dokuments wirklich auf »Gesendet« ändern?',\r\n\tconfirmChangeStatusSpecialTechnical:\r\n\t\t'Aufmerksamkeit! Durch wiederholte Anfrage nach Technische Zeichnung geht die erstellte spezielle technische Dokumentation verloren.',\r\n\tconfirmRequestDocumentation:\r\n\t\t'Aufmerksamkeit! Durch wiederholte Anfrage nach Technische Zeichnung geht die erstellte spezielle technische Dokumentation verloren.',\r\n\tconfirmSend: 'Möchten Sie das Dokument wirklich senden?',\r\n\tconfirmSendDocument:\r\n\t\t'Empfänger des Dokuments ist:
- Partner: {Partner}
- Sachbearbeiter: {Salesman}
- Ansprechpartner: {Contact}

Möchten Sie das Dokument wirklich senden?',\r\n\tchangeRecipient: 'Empfänger ändern',\r\n\ttotalPriceWithoutTax: 'Gesamtpreis ohne USt.',\r\n\ttotalTax: 'Total USt.',\r\n\tfinalPrice: 'Gesamtpreis inkl. USt.',\r\n\tselectTax: 'Steuersatz auswählen',\r\n\ttax: 'USt.',\r\n\tprintTemplateSelect: 'Die Vorlage soll enthalten:',\r\n\tuserUploaded: 'Vom Benutzer hochgeladen',\r\n\tyes: 'Ja',\r\n\tno: 'Nein',\r\n\tcontact: 'Kontaktperson',\r\n\tautoSaveConfiguration: 'Änderungen werden automatisch gespeichert',\r\n\tloginToViewPrices: 'Preise sind nur für registrierten Benutzer sichtbar',\r\n\tcookieLaw:\r\n\t\t'Die Website verwendet Cookies, um ihre volle Funktionalität zu gewährleisten. Cookies speichern Ihre Nutzung der Website. Durch die Nutzung der Website stimmen Sie der Verwendung dieser Cookies zu. Besuchen Sie für weitere Informationen:',\r\n\tcookiesTitle: 'Informationen zur Verwendung von Cookies',\r\n\tdetails: 'Übersicht',\r\n\tsourceDocument: 'Ursprungsdokument',\r\n\tdownload: 'Herunterladen',\r\n\tdownloadPDF: 'PDF herunterladen',\r\n\tclonePart: 'Artikel',\r\n\timageUpload: 'Bild hochladen',\r\n\tnotImage: 'Das hochgeladene Bild muss vom Typ jpg, png oder bmp sein.',\r\n\tlanguageChange: 'Sprache ändern',\r\n\tlanguageChangeConfirm:\r\n\t\t'Durch Ändern der Sprache werden Sie zum Startbildschirm weitergeleitet. Nicht gespeicherte Konfigurationsänderungen werden verworfen.',\r\n\tbrandChange: 'Marke ändern',\r\n\tbrandChangeConfirm:\r\n\t\t'Durch Ändern der Marke werden Sie zum Startbildschirm weitergeleitet. Nicht gespeicherte Konfigurationsänderungen werden verworfen.',\r\n\tspecialOffer: 'Sonderangebot',\r\n\tarchive: 'Archivieren',\r\n\tincludeArchived: 'Archivierte Dokumente anzeigen',\r\n\tshowAll: 'Alle anzeigen',\r\n\tcartEmpty: 'Der Warenkorb ist leer',\r\n\tclipboard: 'In die Zwischenablage kopiert',\r\n\tinputText: 'Bitte Text eingeben',\r\n\tinputNumber: 'Bitte Nummer eingeben',\r\n\ttwoDecimalPlaces: 'zwei Dezimalstellen',\r\n\ttreeDetails: 'Parameterliste',\r\n\tdeliveryTime: 'Liefertermin',\r\n};\r\nexport default locale;\r\n","const locale = {\r\n\tpopular: 'Le plus populaire',\r\n\tsearchResults: 'Résultats de recherche',\r\n\tprice: 'Prix',\r\n\tamount: 'Valeur',\r\n\tmodel: 'Modèle',\r\n\tname: 'Nom',\r\n\turl: 'Url',\r\n\tcompany: 'Société',\r\n\tsave: 'sauvegarder',\r\n\tfilterTypeName: 'Taper',\r\n\tfilterGroupName: 'Style',\r\n\tfiltersClear: 'Effacer les filtres',\r\n\tfilters: 'Filtres',\r\n\tsearchPlaceholder: 'Chercher...',\r\n\tconfigurationStep1: 'Sélection du modèle',\r\n\tconfigurationStep2: 'Configuration du modèle',\r\n\tconfigurationStep3: 'Présentation de la configuration',\r\n\tconfigurationStepCustomerView: 'Aperçu des documents',\r\n\tselect: 'Sélectionner',\r\n\tquantity: 'Quantité',\r\n\toverview: 'Aperçu',\r\n\tversion: 'Version',\r\n\tmodelAndConfig: 'Modèle / ID Config.',\r\n\tstatus: 'Statut',\r\n\tnoResults: 'Aucun résultat',\r\n\tnoData: 'Pas de données',\r\n\tnext: 'Prochain',\r\n\tprev: 'Arrière',\r\n\tnextPage: 'Page suivante',\r\n\tsendInquiry: 'Envoyer une demande',\r\n\tstep: 'Étape',\r\n\tof: 'de',\r\n\tcomment: 'Commenter',\r\n\tdocumentComment: 'Commentaire sur le document',\r\n\tdocumentCommentRemove: 'Supprimer le commentaire du document',\r\n\tclearConfiguration: 'Réinitialiser la configuration',\r\n\tcancel: 'Annuler',\r\n\tcontinue: 'Continuer',\r\n\tclose: 'proche',\r\n\texception: 'Exception',\r\n\tgeneralException: \"Oups! Quelque chose s'est mal passé.\",\r\n\tapiException: 'Mauvaise réponse du serveur',\r\n\tmyProjects: 'Mes projets',\r\n\tallProjects: 'Tous les projets',\r\n\tassignDocument: 'Assigner (en interne)',\r\n\tassignDocumentWithinCompany: \"Affecter au sein de l'entreprise\",\r\n\tassignDocumentOutsideCompany: \"Affecter à l'extérieur de l'entreprise\",\r\n\tassignDocumentToContactTitle: 'Contacter',\r\n\tassignDocumentToContactAddNew: 'Ajouter un nouveau contact',\r\n\tassignDocumentToContactConfirmation: 'Êtes-vous sûr de vouloir changer le contact?',\r\n\tsendDocument: 'Envoyer au partenaire',\r\n\ttoggleProjectStatus: 'Projet',\r\n\tunknownUser: 'Inconnu',\r\n\tsaveConfiguration: 'Ajouter au panier',\r\n\tsaveConfigurationToDocument: 'Enregistrer dans le document',\r\n\taddConfigurationToDocument: 'Ajouter au document',\r\n\tcustomerNewOffer: 'Créer un document',\r\n\tcustomerProcess: 'Traiter',\r\n\tcustomerSendERP: \"Exporter vers l'ERP\",\r\n\tcustomerImportEdi: \"Importer depuis l'ERP\",\r\n\tcustomerNewVersion: 'Définir la valeur par défaut',\r\n\tcustomerAssign: 'Attribuer à la personne',\r\n\tcustomerConfirmOrder: 'Valider conf. commande',\r\n\tcustomerConfirmOrderMessage:\r\n\t\t\"Avec cette confirmation, la commande (document n° {numéro}) est validée pour la production. Avec confirmation, j'accepte les obligations financières associées (obligation de paiement).\",\r\n\tcustomerConfirmInqury: 'Confirmer la demande',\r\n\tcustomerConfirmInquryNewProject: 'Créer dans un nouveau projet',\r\n\tcustomerSendToConfirm: 'Envoyer à la confirmation',\r\n\tcustomerSend: 'Envoyer',\r\n\tcustomerForward: 'Avant',\r\n\tcustomerSendToSupplier: 'Envoyer au fournisseur',\r\n\tcustomerSendOffer: 'Envoyer le document',\r\n\tcustomerSendDocument: 'Envoyer le document',\r\n\tcustomerDelete: 'Supprimer',\r\n\tcustomerDeleteConfirm: \"Êtes-vous sûr de vouloir supprimer l'enregistrement sélectionné?\",\r\n\tconfigurator: 'Configurateur',\r\n\topen: 'Ouvert',\r\n\tcustomerEditingTitleInquiry: \"Édition d'enquête\",\r\n\tcustomerEditingTitleOffer: \"Modification de l'offre\",\r\n\tdocumentEditing: 'Édition de documents',\r\n\tconfigurationEditing: 'Édition de configuration',\r\n\tadminCalculationDiscounts: 'Remises',\r\n\tadminCalculationAddDiscount: 'Ajouter une remise',\r\n\tadminCalculationAdditional: 'Accessoires',\r\n\tadminCalculationCostsNet: 'Prestations de service',\r\n\tadminCalculationAdditionalCosts: 'Coût des accessoires',\r\n\tadminCalculationAddAdditionalCost: 'Ajouter un accessoire',\r\n\tadminCalculationAddNetCost: 'Ajouter un service',\r\n\tadminCalculationConfigurationPrice: 'Prix de configuration',\r\n\tadminCalculationAdditionalSum: 'Coût total des accessoires',\r\n\tadminCalculationConfigurationWithAdditionalSum: 'Prix de configuration inc. accessoires',\r\n\tadminCalculationDiscountPercentageSum: 'Pourcentage de remise total',\r\n\tadminCalculationDiscountSum: 'Valeur totale de la remise',\r\n\tadminCalculationConfigurationWithDiscountSum: 'Prix de configuration inc. accessoires et remises',\r\n\tadminCalculationServiceSum: 'Coût total des services',\r\n\tadminCalculationSum: 'Valeur',\r\n\tadminRemark: 'Remarque',\r\n\tadminRemarkAddImage: 'Télécharger une image',\r\n\tadminDocumentationAdd: 'Télécharger la pièce jointe',\r\n\tadminDocumentationAddUrl: 'Ajouter un lien',\r\n\tadminDocumentCustomer: 'Client',\r\n\tadminDocumentContact: 'Contact',\r\n\tadminDocumentPartner: 'Partenaire responsable',\r\n\tadminDocumentPartnerRecipient: 'Partenaire',\r\n\tadminDocumentDateModified: 'Date de dernière modification',\r\n\tadminDocumentStatus: 'Statut',\r\n\tadminDocumentDocumentNumber: 'Numéro de document',\r\n\tadminDocumentProject: 'Projet',\r\n\tadminDocumentProjectStatus: \"L'état du projet\",\r\n\tadminDocumentDocumentOrder: 'Numéro de commande du document.',\r\n\tadminDocumentBuyerOrderNumber: \"Numéro de commande de l'acheteur\",\r\n\tadminDocumentComission: 'Commission',\r\n\tadminDocumentCustomerNumber: 'Numéro de client',\r\n\tadminDocumentCustomerPosition: 'Position client',\r\n\tadminDocumentCustomerSubPosition: 'Sous-position client',\r\n\tadminDocumentCommission: 'Commission',\r\n\tadminDocumentDeliveryTime: 'Date de livraison',\r\n\tadminMenuDocument: 'Données de document',\r\n\tadminMenuConfigurations: 'Configurations',\r\n\tadminMenuHistory: 'Histoire',\r\n\tadminMenuConfiguration: 'Configuration',\r\n\tadminMenuCalculation: 'Présentation de la configuration',\r\n\tadminMenuImages: 'Images',\r\n\tadminMenuSalesRemarks: 'Remarques de vente',\r\n\tadminMenuInstallerRemarks: \"Remarques de l'installateur\",\r\n\tadminMenuPosition: 'Données de position',\r\n\tadminMenuDiscountsCosts: 'Réductions, Services, TVA',\r\n\tadminMenuTechnicalDocumentation: 'Documentation technique',\r\n\tadminMenuPrintDocument: 'Imprimer et envoyer',\r\n\tinsideView: \"Vue de l'intérieur\",\r\n\tfacade: 'Façade',\r\n\tcartSuccess: \"En cliquant sur l'icône du panier, vous pouvez modifier son contenu.\",\r\n\tsaving: 'Enregistrement',\r\n\tcontactTitle: 'Coordonnées et accords',\r\n\tcontactTitleSales: 'Données de contact',\r\n\tinquirySalesDialog: 'Document',\r\n\tcart: 'Panier',\r\n\tcartSendInquiry: 'Envoyer une demande',\r\n\tcartRemove: 'Supprimer',\r\n\tcartInquirySentText: ', merci pour votre demande. Nous le traiterons dès que possible.',\r\n\tcartInquirySentText2: 'Merci pour votre demande. Nous le traiterons dès que possible.',\r\n\tcartInquirySentText3: 'Document créé',\r\n\tcartInquirySent: 'Demande envoyée avec succès',\r\n\tcartOverride: 'Voulez-vous écraser la configuration existante ou en créer une nouvelle ?',\r\n\tcartSaving: 'Enregistrement de la configuration',\r\n\tcartSavingSuccess: 'Votre configuration a été ajoutée au panier',\r\n\tdocumentSaving: 'Enregistrement du document',\r\n\tcartButtonOverride: 'Écraser la configuration existante',\r\n\tcartButtonNew: 'Créer une nouvelle configuration',\r\n\tcartRemoveTitle: 'Suppression de la configuration',\r\n\tcartRemovalText: 'Configuration supprimée avec succès',\r\n\taddDiscount: 'Remise',\r\n\taddCost: 'Coût',\r\n\taddNetCost: 'Service',\r\n\tdiscountText: 'Nom',\r\n\tdiscountValue: 'Pourcentage (%)',\r\n\tdiscountLevel: 'Niveau',\r\n\tdiscountType: 'Type de remise',\r\n\tdiscount: 'Pour cent',\r\n\tsortOrder: 'Ordre de tri',\r\n\tdiscountAmount: 'Montant de la remise',\r\n\tdiscountValueAfter: 'Valeur après remise',\r\n\tcostText: 'Nom',\r\n\tcostValue: 'Montant',\r\n\trequestDocumentation: 'Demander des documents',\r\n\trequestSpecialDocumentation: 'Demander une documentation spéciale',\r\n\tloadSpecialDocumentation: 'Charger la documentation spéciale',\r\n\tuser: 'Utilisateur',\r\n\timage: 'Image',\r\n\tdate: 'Date',\r\n\tcustomer: 'Client',\r\n\tpartner: 'Partenaire',\r\n\tcommission: 'Commission',\r\n\tresponsiblePerson: 'Personne responsable',\r\n\tposition: 'Position',\r\n\tvalue: 'Valeur',\r\n\tdataLastChange: 'Date du dernier changement',\r\n\tdocumentation: 'Documentation',\r\n\tinquiries: 'Enquêtes',\r\n\toffers: 'Des offres',\r\n\tprintOffer: 'Imprimer le document',\r\n\tprintDownload: 'Télécharger',\r\n\tprintChangeToSend: \"Modifier l'e-mail et envoyer\",\r\n\tprintEditSent: 'Modifier et envoyer',\r\n\tprintEmailSubject: 'Varialis - {number}',\r\n\tprintEmailBody:\r\n\t\t\"Cher Monsieur ou Madame,\\n\\n\\nEn fonction de votre demande, veuillez trouver le devis correspondant nr. {number} en pièce jointe. \\n\\nCordialement,\\nPortail VARIALIS\\n\\n\\n\\nAvertissement : Les e-mails peuvent contenir des informations confidentielles qui ne sont destinées qu'au destinataire. Si le message a été envoyé ailleurs en raison d'une adresse ou d'une erreur de transmission, veuillez en informer l'auteur de l'e-mail. Si le message ne vous était pas destiné, les informations contenues dans le message ne peuvent être utilisées, partagées, diffusées, copiées, imprimées ou exploitées de quelque manière que ce soit.\",\r\n\temail: 'E-mail',\r\n\tpassword: 'Mot de passe',\r\n\tsignIn: \"S'identifier\",\r\n\tsignUp: \"S'inscrire\",\r\n\tprofile: 'Profil',\r\n\tsigningOut: 'Se déconnecter',\r\n\tsalesman: 'Vendeur',\r\n\tsalesmanResponsible: 'Vendeur responsable',\r\n\tsignOut: 'Déconnecter',\r\n\tsubmit: 'Soumettre',\r\n\tloginSuccess: '',\r\n\tloginError: 'Un problème est survenu lors de votre connexion.',\r\n\taddressing: 'Titre',\r\n\tfirstName: 'Prénom',\r\n\tfirstAndLastName: 'Nom et prénom',\r\n\tlastName: 'Nom de famille',\r\n\tloginFailed: 'Échec de la connexion',\r\n\tloginNoPass: 'Tapez votre mot de passe',\r\n\tloginNoUsername: 'Entrer votre Email',\r\n\tforgotPassword: 'mot de passe oublié?',\r\n\tresetPassword: 'réinitialisez votre mot de passe',\r\n\tresetPasswordMessage: \"L'e-mail de confirmation a été envoyé, veuillez vérifier votre boîte de réception pour continuer.\",\r\n\tregistrationFailed: \"Échec de l'enregistrement\",\r\n\tmissingFields: 'Veuillez saisir tous les champs obligatoires.',\r\n\tregistrationSucceeded: \"Merci de vous être inscrit. Vous avez reçu un e-mail avec un lien pour terminer le processus d'inscription.\",\r\n\tprofileUpdateSucceeded: 'Vos données de profil ont été mises à jour.',\r\n\tprofileDeliveryTitle: 'Adresse de livraison',\r\n\tprofileReceiptTitle: 'Adresse de réception',\r\n\tprofileAddressAdd: \"Ajoutez l'adresse\",\r\n\tprofileAddressEdit: \"Modifier l'adresse\",\r\n\tdifferentThenContactAddress: \"Différent de l'adresse de contact\",\r\n\tactivationSucceeded: 'Activation réussie',\r\n\taccountActivation: 'Activation de compte',\r\n\tconfirmPassword: 'Confirmez le mot de passe',\r\n\tactivate: 'Activer',\r\n\tmissingToken: 'Activation non valide. Veuillez vous réinscrire.',\r\n\ttelephone: 'Téléphone',\r\n\tvat: 'numéro de TVA',\r\n\tregistrationNumber: \"Numéro d'enregistrement\",\r\n\tinquiryTitle:\r\n\t\t'Merci pour votre demande. Afin de les traiter, veuillez remplir les coordonnées, vérifier les éventuels consentements (facultatifs) et envoyer la demande en appuyant sur le bouton Envoyer.
Vous consentez par la présente à ce que notre société et nos partenaires commerciaux vous contactent par e-mail et/ou téléphoner en utilisant les informations fournies afin de répondre à votre demande de renseignements, de faire une offre ou de fournir des conseils concernant les produits. En cas de commande, vous nous autorisez à transmettre vos données à un personnel professionnel vérifié pour des conseils et une enquête sur place afin que la commande puisse être exécutée.',\r\n\tinquiryTitleCustomer: 'Remplir les coordonnées du client',\r\n\tinquiryTitleExistingCustomer: 'Sélectionnez un contact existant',\r\n\tinquiryDocumentType: 'Type de document',\r\n\taddress: 'Adresse',\r\n\tcity: 'Ville',\r\n\tzip: 'Zipper',\r\n\tpost: 'Code postal',\r\n\tcountry: 'Pays',\r\n\tselectCountry: 'Choisissez le pays',\r\n\tselectDiscountType: 'Sélectionnez le type de remise',\r\n\tcompanyName: 'Nom de la compagnie',\r\n\tcompanyRegistration: \"Numéro d'entreprise\",\r\n\tcompanyVAT: \"Numéro de TVA de l'entreprise\",\r\n\tinquiryLegalAdd: 'En plus pour les personnes morales',\r\n\tinquiryConsents: 'Consentements',\r\n\tinquiryConsent1Title: 'Offres et rappels',\r\n\tinquiryConsent1: 'par exemple. vous informer sur les offres pertinentes de produits, pièces détachées, accessoires et autres produits et services.',\r\n\tinquiryConsent2Title: 'Avis',\r\n\tinquiryConsent2:\r\n\t\t'annonces et invitations à des événements lors du lancement de nouveaux modèles et catalogues, salons, journées portes ouvertes, autres présentations et événements.',\r\n\tinquiryConsent3Title: 'Enquêtes',\r\n\tinquiryConsent3: \"recherche pour obtenir votre avis afin d'améliorer nos produits et services.\",\r\n\tequalPasswords: 'Veuillez saisir des mots de passe identiques',\r\n\ttype: 'Taper',\r\n\tbrands: 'Marques',\r\n\tpartners: 'Les partenaires',\r\n\tdelete: 'Effacer',\r\n\tlanguages: 'Langues',\r\n\tclearCache: 'Détruire le cache',\r\n\ttags: 'Rechercher une balise',\r\n\ttext: 'Texte',\r\n\tdesc: 'La description',\r\n\tconfiguration: 'Configuration',\r\n\tdocument: 'Document',\r\n\tedit: 'Éditer',\r\n\tchange: 'Changer',\r\n\tview: 'Vue',\r\n\tclone: 'Cloner',\r\n\tcopy: 'Copie',\r\n\tremove: 'Supprimer',\r\n\tdefault: 'Défaut',\r\n\tadd: 'Ajouter',\r\n\tdeleting: 'Suppression...',\r\n\tadding: 'Ajouter...',\r\n\tcloning: 'Clonage…',\r\n\tprint: 'Imprimer',\r\n\tsubmitForProduction: 'Envoyer à la production',\r\n\tcartAddingDisabled:\r\n\t\t\"Vous avez atteint la limite de projets enregistrés. Veuillez vous connecter pour un nombre illimité de projets.\\nPour vous inscrire ou vous connecter, cliquez sur l'icône suivante dans le coin supérieur droit.\",\r\n\tnotSucceeded: 'échoué',\r\n\tdocumentType: 'Type de document',\r\n\tprintPrice: 'Des prix',\r\n\tprintColorImage: 'Image en couleur',\r\n\tprintTechImage: 'Dessin technique',\r\n\tprintConditions: 'Conditions de paiement et de livraison',\r\n\tselectPrintTemplate: 'Sélectionnez le modèle',\r\n\tselectPrintLanguage: 'Choisir la langue',\r\n\tsendToConfirmation: 'Envoyer à la confirmation',\r\n\tinConfirmation: 'En confirmation',\r\n\tisFinished: 'Fini',\r\n\tconfirm: 'Confirmer',\r\n\treject: 'Rejeter',\r\n\treset: 'Réinitialiser',\r\n\tdownloadPriceFile: 'Télécharger xlsx',\r\n\ttermsPayment: 'Modalités de paiement',\r\n\ttermsSales: 'Conditions de vente',\r\n\taddTermPayment: 'Ajouter un délai de paiement',\r\n\taddTermSales: 'Ajouter un délai de livraison',\r\n\teditTermPayment: 'Modifier les conditions de paiement',\r\n\teditTermSales: 'Modifier le délai de livraison',\r\n\tviewTermPayment: 'Voir les conditions de vente',\r\n\tviewTermSales: 'Voir le délai de livraison',\r\n\tterm: 'Nom',\r\n\ttermsPage: 'Conditions de paiement et de livraison',\r\n\tsend: 'Envoyer',\r\n\tconfirmDelete: \"Êtes-vous sûr de vouloir supprimer l'enregistrement sélectionné ?\",\r\n\tconfirmArchive: \"Êtes-vous sûr de vouloir archiver l'enregistrement sélectionné ?\",\r\n\tconfirmReset: 'Voulez-vous vraiment réinitialiser la configuration sélectionnée aux paramètres par défaut ?',\r\n\tconfirmClone: \"Êtes-vous sûr de vouloir cloner l'enregistrement sélectionné ?\",\r\n\tconfirmCopy: \"Êtes-vous sûr de vouloir copier l'enregistrement sélectionné ?\",\r\n\tconfirmChangeStatusToSend: 'Êtes-vous sûr de vouloir changer le statut du document en Envoyé?',\r\n\tconfirmChangeStatusSpecialTechnical:\r\n\t\t'Attention! En répétant la demande de technologie. documentation la documentation technique spéciale préparée sera perdue.',\r\n\tconfirmRequestDocumentation:\r\n\t\t'Attention! En répétant la demande de technologie. documentation la documentation technique spéciale préparée sera perdue.',\r\n\tconfirmSend: 'Êtes-vous sûr de vouloir envoyer le document?',\r\n\tconfirmSendDocument:\r\n\t\t'Le destinataire du document est :
- Partenaire: {Partner}
- Vendeur: {Salesman}
- Contact: {Contact}

Êtes-vous sûr de vouloir envoyer le document?',\r\n\tchangeRecipient: 'Changer de destinataire',\r\n\ttotalPriceWithoutTax: 'Prix total sans TVA',\r\n\ttotalTax: 'TVA totale',\r\n\tfinalPrice: 'Prix total TTC T.V.A.',\r\n\tselectTax: 'Sélectionnez la fiscalité',\r\n\ttax: 'T.V.A.',\r\n\tprintTemplateSelect: 'Le document doit inclure :',\r\n\tuserUploaded: 'Utilisateur téléchargé',\r\n\tyes: 'Oui',\r\n\tno: 'Non',\r\n\tcontact: 'Contact',\r\n\tautoSaveConfiguration: 'Les modifications sont enregistrées automatiquement',\r\n\tloginToViewPrices: 'Veuillez vous connecter pour voir les prix',\r\n\tcookieLaw:\r\n\t\t\"Le site Web utilise des cookies pour assurer sa pleine fonctionnalité. Les cookies stockent votre utilisation du site. En utilisant le Site, vous autorisez l'utilisation de ces cookies. Visitez pour plus d'informations :\",\r\n\tcookiesTitle: \"Informations sur l'utilisation des cookies\",\r\n\tdetails: 'Des détails',\r\n\tsourceDocument: \"Doc. d'origine\",\r\n\tdownload: 'Télécharger',\r\n\tdownloadPDF: 'Télécharger le PDF',\r\n\tclonePart: 'Article',\r\n\timageUpload: \"Téléchargement d'images\",\r\n\tnotImage: \"L'image téléchargée doit être de type jpg, png ou bmp.\",\r\n\tlanguageChange: 'Changement de langue',\r\n\tlanguageChangeConfirm:\r\n\t\t\"En changeant de langue, vous serez redirigé vers l'écran initial. Les modifications de configuration non enregistrées seront ignorées.\",\r\n\tbrandChange: 'Changement de marque',\r\n\tbrandChangeConfirm:\r\n\t\t\"En changeant de marque, vous serez redirigé vers l'écran initial. Les modifications de configuration non enregistrées seront ignorées.\",\r\n\tspecialOffer: 'Offre spéciale',\r\n\tarchive: 'Archiver',\r\n\tincludeArchived: 'Afficher les documents archivés',\r\n\tshowAll: 'Afficher tout',\r\n\tcartEmpty: 'Aucun article dans le panier',\r\n\tclipboard: 'Copié dans le presse-papier',\r\n\tinputText: 'Veuillez saisir du texte',\r\n\tinputNumber: 'Veuillez saisir un numéro',\r\n\ttwoDecimalPlaces: 'Deux places de décimales',\r\n\ttreeDetails: 'Liste de paramètres',\r\n\tdeliveryTime: 'Livraison',\r\n};\r\nexport default locale;\r\n","import LocalizedStrings from \"react-localization\";\r\nimport slovenian from './languages/sl';\r\nimport english from './languages/en';\r\nimport german from './languages/de';\r\nimport french from './languages/fr';\r\n\r\nconst locale = new LocalizedStrings({\r\n sl: slovenian,\r\n en: english,\r\n de: german,\r\n fr: french\r\n});\r\nexport default locale;\r\n","import Helper, { comment_category, status } from '../Helper';\r\nimport { actionCreators } from './Configurator';\r\n\r\nfunction createModelFlat(categories: any[], categoriesPrev: any[], commentId?: string | null): any {\r\n\tlet categoriesList: any[] = categoriesPrev;\r\n\tlet parameterList: any[] = [];\r\n\r\n\tvar recursion = function (categories: any) {\r\n\t\tif (categories) {\r\n\t\t\tcategories.forEach((child: any) => {\r\n\t\t\t\tif (child) {\r\n\t\t\t\t\tlet parameters = child.Parameters;\r\n\t\t\t\t\tlet partId = child.PartId;\r\n\r\n\t\t\t\t\tif (parameters && parameters.length > 0) {\r\n\t\t\t\t\t\tparameters.forEach((parameter: any) => {\r\n\t\t\t\t\t\t\tif (commentId && parameter.ParameterId === commentId) {\r\n\t\t\t\t\t\t\t\tcategoriesList.push({\r\n\t\t\t\t\t\t\t\t\tid: comment_category,\r\n\t\t\t\t\t\t\t\t\tname: Helper.getLocalizedName(parameter.Category),\r\n\t\t\t\t\t\t\t\t\tparentId: parameter.CategoryParentId,\r\n\t\t\t\t\t\t\t\t\tparameters: [],\r\n\t\t\t\t\t\t\t\t\topen: false,\r\n\t\t\t\t\t\t\t\t\torder: parameter.CategoryOrder ? parseInt(parameter.CategoryOrder) : 9999,\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\tlet selectedValue = parameter.SelectedValue;\r\n\t\t\t\t\t\t\t\tconst isEnabled = parameter.IsEnabled;\r\n\t\t\t\t\t\t\t\tlet values = [];\r\n\t\t\t\t\t\t\t\tif (selectedValue) {\r\n\t\t\t\t\t\t\t\t\tlet range = {};\r\n\t\t\t\t\t\t\t\t\tif (parameter.DataType === 1) {\r\n\t\t\t\t\t\t\t\t\t\t//slider\r\n\t\t\t\t\t\t\t\t\t\tlet min = 0;\r\n\t\t\t\t\t\t\t\t\t\tif (selectedValue.MinValue && !isNaN(selectedValue.MinValue)) {\r\n\t\t\t\t\t\t\t\t\t\t\tmin = selectedValue.MinValue as number;\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\tlet max = 0;\r\n\t\t\t\t\t\t\t\t\t\tif (selectedValue.MaxValue && !isNaN(selectedValue.MaxValue)) {\r\n\t\t\t\t\t\t\t\t\t\t\tmax = selectedValue.MaxValue as number;\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\trange = { min: min, max: max };\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\tvalues.push({\r\n\t\t\t\t\t\t\t\t\t\tid: selectedValue.ParameterValueId,\r\n\t\t\t\t\t\t\t\t\t\tname: selectedValue.Name,\r\n\t\t\t\t\t\t\t\t\t\tvalueName: selectedValue.ParameterValueName,\r\n\t\t\t\t\t\t\t\t\t\tbrandValue: selectedValue.ParameterBrandValue,\r\n\t\t\t\t\t\t\t\t\t\trange: range,\r\n\t\t\t\t\t\t\t\t\t\tvalue: selectedValue.ParameterValue,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\tparameterList.push({\r\n\t\t\t\t\t\t\t\t\tpartId: partId,\r\n\t\t\t\t\t\t\t\t\tid: parameter.ParameterId,\r\n\t\t\t\t\t\t\t\t\tparamPartId: parameter.ParameterPartId,\r\n\t\t\t\t\t\t\t\t\tname:\r\n\t\t\t\t\t\t\t\t\t\tHelper.getLocalizedValueOrNull(parameter.ParameterBrandName) ??\r\n\t\t\t\t\t\t\t\t\t\tHelper.getLocalizedValueOrNull(parameter.ParameterTitle) ??\r\n\t\t\t\t\t\t\t\t\t\tparameter.ParameterName,\r\n\t\t\t\t\t\t\t\t\ttype: parameter.DataType,\r\n\t\t\t\t\t\t\t\t\torder: parameter.Order ? parseInt(parameter.Order) : 99999,\r\n\t\t\t\t\t\t\t\t\tvalues: values,\r\n\t\t\t\t\t\t\t\t\tcategoryId: parameter.CategoryId,\r\n\t\t\t\t\t\t\t\t\tprice: 0,\r\n\t\t\t\t\t\t\t\t\tisEnabled: isEnabled,\r\n\t\t\t\t\t\t\t\t\tshowPicture: parameter.ShowPicture,\r\n\t\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\t\tif (\r\n\t\t\t\t\t\t\t\t\tparameter.CategoryId &&\r\n\t\t\t\t\t\t\t\t\tparameter.CategoryStatusId === status.status_active &&\r\n\t\t\t\t\t\t\t\t\tparameter.CategoryId !== '' &&\r\n\t\t\t\t\t\t\t\t\tparameter.CategoryId !== null\r\n\t\t\t\t\t\t\t\t) {\r\n\t\t\t\t\t\t\t\t\tlet foundIndex = categoriesList.findIndex((cat: any) => cat.id === parameter.CategoryId);\r\n\t\t\t\t\t\t\t\t\tif (foundIndex < 0) {\r\n\t\t\t\t\t\t\t\t\t\tcategoriesList.push({\r\n\t\t\t\t\t\t\t\t\t\t\tid: parameter.CategoryId,\r\n\t\t\t\t\t\t\t\t\t\t\tname: Helper.getLocalizedName(parameter.Category),\r\n\t\t\t\t\t\t\t\t\t\t\tparentId: parameter.CategoryParentId,\r\n\t\t\t\t\t\t\t\t\t\t\tparameters: [],\r\n\t\t\t\t\t\t\t\t\t\t\topen: false,\r\n\t\t\t\t\t\t\t\t\t\t\torder: parameter.CategoryOrder ? parseInt(parameter.CategoryOrder) : 9999,\r\n\t\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (child.Childs) {\r\n\t\t\t\t\t\tcategoriesList = recursion(child.Childs);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t\tcategoriesList.sort((a: any, b: any) => parseInt(a.order) - parseInt(b.order));\r\n\t\treturn categoriesList;\r\n\t};\r\n\trecursion(categories);\r\n\r\n\tif (parameterList && categoriesList && parameterList.length > 0 && categoriesList && parameterList.length > 0) {\r\n\t\tparameterList.sort((a: any, b: any) => parseInt(a.order) - parseInt(b.order));\r\n\r\n\t\tfor (let i = 0; i < categoriesList.length; i++) {\r\n\t\t\tfor (let j = 0; j < parameterList.length; j++) {\r\n\t\t\t\tif (categoriesList[i].id === parameterList[j].categoryId) {\r\n\t\t\t\t\tlet foundIndex = categoriesList[i].parameters.findIndex((param: any) => param.id === parameterList[j].id);\r\n\t\t\t\t\tif (foundIndex < 0) {\r\n\t\t\t\t\t\tcategoriesList[i].parameters.push(parameterList[j]);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\treturn categoriesList;\r\n}\r\nfunction findSelectedParameters(categoriesNext: any, selectedParameters: any) {\r\n\tif (categoriesNext && categoriesNext.length > 0 && selectedParameters && selectedParameters.length > 0) {\r\n\t\tlet newParameters: any = [];\r\n\t\tconst recursion = (categories: any) => {\r\n\t\t\tcategories.forEach((child: any) => {\r\n\t\t\t\tlet parameters = child.Parameters;\r\n\t\t\t\tif (parameters && parameters.length > 0) {\r\n\t\t\t\t\tparameters.forEach((parameter: any) => {\r\n\t\t\t\t\t\tconst selectedValue = parameter.SelectedValue;\r\n\t\t\t\t\t\tconst title = selectedValue\r\n\t\t\t\t\t\t\t? Helper.getLocalizedValueOrNull(selectedValue.ParameterBrandValue) ??\r\n\t\t\t\t\t\t\t Helper.getLocalizedValueOrNull(selectedValue.ParameterValue) ??\r\n\t\t\t\t\t\t\t selectedValue.ParameterValueName\r\n\t\t\t\t\t\t\t: '';\r\n\t\t\t\t\t\tnewParameters.push({\r\n\t\t\t\t\t\t\tparameterId: parameter.ParameterId,\r\n\t\t\t\t\t\t\tparameterValue: title,\r\n\t\t\t\t\t\t\tparameterValueId: selectedValue && selectedValue.ParameterValueId,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\tif (child.Childs) {\r\n\t\t\t\t\trecursion(child.Childs);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t};\r\n\r\n\t\trecursion(categoriesNext);\r\n\r\n\t\t//Add all existing (prev) selected parameters that are not in new parameters list\r\n\t\tlet mergedParameters = selectedParameters.filter(\r\n\t\t\t(paramPrev: any) => !newParameters.find((paramNext: any) => paramNext.parameterId === paramPrev.parameterId)\r\n\t\t);\r\n\t\t//Add new parameters to list\r\n\t\tmergedParameters = mergedParameters.concat(newParameters);\r\n\t\treturn mergedParameters;\r\n\t}\r\n\treturn selectedParameters;\r\n}\r\nfunction updateTree(categoriesPrev: any, categoriesNext: any, partId: string): any {\r\n\tlet filterCategories = (categories: any, findPartId: string) => {\r\n\t\tlet filteredCategories = categories.map((child: any) => {\r\n\t\t\tif (child && child.Childs) {\r\n\t\t\t\tchild.Childs = filterCategories(child.Childs, findPartId);\r\n\t\t\t}\r\n\t\t\tif (child && child.PartId === findPartId) {\r\n\t\t\t\tchild.Childs = [];\r\n\t\t\t\tfor (let i = 0; i < categoriesNext.length; i++) {\r\n\t\t\t\t\tchild.Childs.push(categoriesNext[i]);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn child;\r\n\t\t});\r\n\t\treturn filteredCategories;\r\n\t};\r\n\tlet reducedCategories = filterCategories(categoriesPrev, partId);\r\n\treturn reducedCategories;\r\n}\r\n\r\nfunction convertToHierarchy(catFlat: any) {\r\n\tvar arry = catFlat;\r\n\r\n\tvar nodeObjects = createStructure(arry);\r\n\tfor (var i = nodeObjects.length - 1; i >= 0; i--) {\r\n\t\tvar currentNode = nodeObjects[i];\r\n\t\tif (currentNode.parentId === null) {\r\n\t\t\tcontinue;\r\n\t\t}\r\n\t\tvar parent = getParent(currentNode, nodeObjects);\r\n\r\n\t\tif (parent === null) {\r\n\t\t\tcontinue;\r\n\t\t}\r\n\r\n\t\tparent.categories.push(currentNode);\r\n\t\tnodeObjects.splice(i, 1);\r\n\t}\r\n\treturn nodeObjects;\r\n}\r\nfunction createStructure(nodes: any): any {\r\n\tvar objects = [];\r\n\r\n\tfor (var i = 0; i < nodes.length; i++) {\r\n\t\tobjects.push({ ...nodes[i], categories: [] });\r\n\t}\r\n\r\n\treturn objects;\r\n}\r\nfunction getParent(child: any, nodes: any) {\r\n\tvar parent = null;\r\n\r\n\tfor (var i = 0; i < nodes.length; i++) {\r\n\t\tif (nodes[i].id === child.parentId) {\r\n\t\t\treturn nodes[i];\r\n\t\t}\r\n\t}\r\n\r\n\treturn parent;\r\n}\r\n\r\nexport function modelDetailsMapper(tree: any, commentId?: string | null): any {\r\n\tif (tree && tree.length) {\r\n\t\tlet categories = createModelFlat(tree, [], commentId);\r\n\t\tlet categoriesListTree = convertToHierarchy(categories);\r\n\t\treturn categoriesListTree;\r\n\t}\r\n\treturn [];\r\n}\r\nfunction popupParameters(popupParameters: any[]): any[] {\r\n\tlet parameters: any[] = [];\r\n\tif (popupParameters && popupParameters.length > 0) {\r\n\t\tpopupParameters.forEach((parameter: any) => {\r\n\t\t\tlet values: any[] = [];\r\n\t\t\t// Dropdown values (inside, outside)\r\n\t\t\tconst initialValues = parameter.Values;\r\n\t\t\tif (initialValues) {\r\n\t\t\t\tinitialValues.forEach((value: any) => {\r\n\t\t\t\t\tconst title =\r\n\t\t\t\t\t\tHelper.getLocalizedValueOrNull(value.ParameterBrandValue) ??\r\n\t\t\t\t\t\tHelper.getLocalizedValueOrNull(value.ParameterValue) ??\r\n\t\t\t\t\t\tvalue.ParameterValueName;\r\n\t\t\t\t\tvalues.push({\r\n\t\t\t\t\t\tvalue: value.ParameterValueId,\r\n\t\t\t\t\t\tname: title,\r\n\t\t\t\t\t\tvalueName: title,\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\tlet selectedValue = {};\r\n\t\t\t// Initial selected value\r\n\t\t\tconst initialSelectedValue = parameter.SelectedValue;\r\n\t\t\tif (initialSelectedValue) {\r\n\t\t\t\tconst title =\r\n\t\t\t\t\tHelper.getLocalizedValueOrNull(initialSelectedValue.ParameterBrandValue) ??\r\n\t\t\t\t\tHelper.getLocalizedValueOrNull(initialSelectedValue.ParameterValue) ??\r\n\t\t\t\t\tinitialSelectedValue.ParameterValueName;\r\n\t\t\t\tselectedValue = {\r\n\t\t\t\t\tvalue: initialSelectedValue.ParameterValueId,\r\n\t\t\t\t\tname: title,\r\n\t\t\t\t\tvalueName: title,\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t\tparameters.push({\r\n\t\t\t\tname: Helper.getLocalizedName(parameter.Label),\r\n\t\t\t\tid: parameter.ParameterId,\r\n\t\t\t\tpartId: parameter.PartId,\r\n\t\t\t\tvalues: values,\r\n\t\t\t\tdefaultValue: selectedValue,\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n\treturn parameters;\r\n}\r\n\r\nfunction dispatchUpdatedData(data: any, selectedParameters: any, tree: any, partId: string, isPopupParameter: boolean, dispatch: any) {\r\n\tconst metadata = data.Metadata;\r\n\tif (isPopupParameter) {\r\n\t\treturn;\r\n\t}\r\n\r\n\tif (data.Tree) {\r\n\t\tconst categoriesNextTree = updateTree(tree, data.Tree, partId);\r\n\t\tconst categoriesNextTreeClone = JSON.parse(JSON.stringify(categoriesNextTree));\r\n\t\tlet newCategories = modelDetailsMapper(categoriesNextTreeClone, metadata.CommentParameterId);\r\n\r\n\t\tconst selectedParametersNext = findSelectedParameters(data.Tree, selectedParameters);\r\n\t\tdispatch(actionCreators.setSelectedParameters(selectedParametersNext));\r\n\r\n\t\tdispatch(actionCreators.setCategories(newCategories));\r\n\t\tdispatch(actionCreators.setTree(categoriesNextTreeClone));\r\n\t}\r\n}\r\nconst updateCategories =\r\n\t(parameterPartId: string, parameterId: string, parameterValueId: string, customValue: string, isPopupParameter: boolean = false) =>\r\n\t(dispatch: any, getState: any) => {\r\n\t\tconst state = getState();\r\n\t\tdispatch(actionCreators.setConfigurationFlags(undefined, false, undefined, true));\r\n\t\tif (state.configurator && state.configurator.configuration && state.configurator.part && state.configurator.categories) {\r\n\t\t\tconst configurationId = state.configurator.configuration.configurationId;\r\n\t\t\tconst documentId = state.configurator.document.documentId;\r\n\t\t\tconst documentConfigurationId = state.configurator.configuration.documentConfigurationId;\r\n\t\t\tconst selectedParameters = state.configurator.selectedParameters;\r\n\t\t\tconst tree = state.configurator.tree;\r\n\r\n\t\t\tlet parameterValueParam = '';\r\n\t\t\tlet customValueParam = '';\r\n\t\t\tif (parameterValueId && parameterValueId.length > 0) {\r\n\t\t\t\tparameterValueParam = '¶meterValueId=' + parameterValueId;\r\n\t\t\t}\r\n\t\t\tif (customValue && customValue.length > 0) {\r\n\t\t\t\tcustomValueParam = '&customValue=' + customValue;\r\n\t\t\t}\r\n\t\t\tlet url = '';\r\n\t\t\tif (Helper.userAdmin() || Helper.userInstaller()) {\r\n\t\t\t\turl =\r\n\t\t\t\t\t'/configurator/admin/update?brandPartnerId=' +\r\n\t\t\t\t\tHelper.brandPartnerId() +\r\n\t\t\t\t\t'&configurationId=' +\r\n\t\t\t\t\tconfigurationId +\r\n\t\t\t\t\t'&partId=' +\r\n\t\t\t\t\tparameterPartId +\r\n\t\t\t\t\t'¶meterId=' +\r\n\t\t\t\t\tparameterId +\r\n\t\t\t\t\tparameterValueParam +\r\n\t\t\t\t\tcustomValueParam;\r\n\t\t\t} else if (Helper.userLoggedIn()) {\r\n\t\t\t\turl =\r\n\t\t\t\t\t'/configurator/auth/update?brandPartnerId=' +\r\n\t\t\t\t\tHelper.brandPartnerId() +\r\n\t\t\t\t\t'&configurationId=' +\r\n\t\t\t\t\tconfigurationId +\r\n\t\t\t\t\t'&partId=' +\r\n\t\t\t\t\tparameterPartId +\r\n\t\t\t\t\t'¶meterId=' +\r\n\t\t\t\t\tparameterId +\r\n\t\t\t\t\tparameterValueParam +\r\n\t\t\t\t\tcustomValueParam;\r\n\t\t\t} else {\r\n\t\t\t\turl =\r\n\t\t\t\t\t'/configurator/update?brandPartnerId=' +\r\n\t\t\t\t\tHelper.brandPartnerId() +\r\n\t\t\t\t\t'&configurationId=' +\r\n\t\t\t\t\tconfigurationId +\r\n\t\t\t\t\t'&partId=' +\r\n\t\t\t\t\tparameterPartId +\r\n\t\t\t\t\t'¶meterId=' +\r\n\t\t\t\t\tparameterId +\r\n\t\t\t\t\tparameterValueParam +\r\n\t\t\t\t\tcustomValueParam;\r\n\t\t\t}\r\n\r\n\t\t\tif (documentConfigurationId) {\r\n\t\t\t\turl += '&documentConfigurationId=' + documentConfigurationId;\r\n\t\t\t}\r\n\r\n\t\t\tif (documentId) {\r\n\t\t\t\turl += '&documentId=' + documentId;\r\n\t\t\t}\r\n\r\n\t\t\tHelper.getData(url).then((data) => {\r\n\t\t\t\tif (data && (data.Tree || data.Metadata)) {\r\n\t\t\t\t\tconst metadata = data.Metadata;\r\n\t\t\t\t\t// Create new live image if GenerateLiveImage is true for Part and for Parameter\r\n\t\t\t\t\t// If live generator is disabled on Part -> Show static image from part\r\n\t\t\t\t\t// Else live generator is disabled on Parameter -> Leave the existing image\r\n\t\t\t\t\tif (metadata.GenerateLiveImage) {\r\n\t\t\t\t\t\tconst urlImage = '/configurator/' + configurationId + '/image';\r\n\t\t\t\t\t\tHelper.getData(urlImage, 'blob').then((image) => {\r\n\t\t\t\t\t\t\tdispatch(actionCreators.setImage(URL.createObjectURL(image)));\r\n\t\t\t\t\t\t\tdispatch(actionCreators.setConfigurationFlags(undefined, metadata.CanEdit, metadata.InApproval, false));\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t} else if (metadata.PartPicture) {\r\n\t\t\t\t\t\t//No live image generation for Part, show part image\r\n\t\t\t\t\t\tdispatch(actionCreators.setImage(metadata.PartPicture));\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdispatch(\r\n\t\t\t\t\t\tactionCreators.setConfigurationFlags(\r\n\t\t\t\t\t\t\tundefined,\r\n\t\t\t\t\t\t\tmetadata.CanEdit,\r\n\t\t\t\t\t\t\tmetadata.InApproval,\r\n\t\t\t\t\t\t\tfalse,\r\n\t\t\t\t\t\t\tundefined,\r\n\t\t\t\t\t\t\tundefined,\r\n\t\t\t\t\t\t\tmetadata.GenerateLiveImage\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t);\r\n\r\n\t\t\t\t\t// calculate price if not already provided and authenticated\r\n\t\t\t\t\tif (data.Price != null) dispatch(actionCreators.setPartPrice(parseFloat(data.Price)));\r\n\t\t\t\t\telse if (Helper.userLoggedIn()) calculatePrice(data.Metadata.ConfigurationId, dispatch, documentId);\r\n\r\n\t\t\t\t\tdispatchUpdatedData(data, selectedParameters, tree, parameterPartId, isPopupParameter, dispatch);\r\n\t\t\t\t} else if (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\tHelper.onError(data.Message, 'API updateConfiguration', dispatch, actionCreators);\r\n\t\t\t\t\tactionCreators.setConfigurationFlags(\r\n\t\t\t\t\t\tundefined,\r\n\t\t\t\t\t\tstate.configuration && !!state.configuration.canEdit,\r\n\t\t\t\t\t\tstate.configuration && !!state.configuration.inApproval,\r\n\t\t\t\t\t\tfalse\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t};\r\nfunction dispatchData(data: any, published: boolean, dispatch: any, newDocumentConfigurationId?: string) {\r\n\tconst metadata = data.Metadata;\r\n\tconst viewmodel = data.ViewModel;\r\n\tlet image = '';\r\n\tif (metadata.FinalImageUrl && metadata.FinalImageUrl.length > 0) {\r\n\t\timage = metadata.FinalImageUrl + '?t=' + new Date().getTime();\r\n\t} else if (metadata.FinalImage && metadata.FinalImage.length > 0) {\r\n\t\timage = metadata.FinalImage;\r\n\t} else if (!metadata.GenerateLiveImage && metadata.PartPicture) {\r\n\t\t//No live image generation for part, show part image\r\n\t\timage = metadata.PartPicture;\r\n\t}\r\n\r\n\tdispatch(actionCreators.saveConfiguration(metadata.ConfigurationId, newDocumentConfigurationId));\r\n\tdispatch(\r\n\t\tactionCreators.setPart(\r\n\t\t\tmetadata.PartId,\r\n\t\t\tmetadata.PartId,\r\n\t\t\tmetadata.ModelName,\r\n\t\t\tmetadata.ModelTitle,\r\n\t\t\tmetadata.BrandModelName,\r\n\t\t\t'',\r\n\t\t\tmetadata.ModelPrice\r\n\t\t)\r\n\t);\r\n\tdispatch(actionCreators.saveConfigurationComment(metadata.Comment));\r\n\tdispatch(actionCreators.setImage(image));\r\n\tdispatch(actionCreators.setConfigurationFlags(published, metadata.CanEdit, metadata.InApproval, false, metadata.HasDocument, metadata.Position));\r\n\r\n\tif (viewmodel && viewmodel.Tree) {\r\n\t\tlet categories = [];\r\n\t\tconst tree = viewmodel.Tree;\r\n\r\n\t\tif (tree.length > 0 && tree[0].Childs) {\r\n\t\t\tcategories = modelDetailsMapper(tree[0].Childs, metadata.CommentParameterId);\r\n\t\t\tconsole.log('categories', categories);\r\n\t\t\tdispatch(actionCreators.setCategories(categories));\r\n\t\t\tdispatch(actionCreators.setTree(tree));\r\n\t\t}\r\n\t}\r\n\tconst popupParams = popupParameters(viewmodel.PopupParameters);\r\n\tdispatch(actionCreators.setPopupParameters(popupParams));\r\n}\r\nfunction calculatePrice(configurationId: string, dispatch: any, documentId?: string) {\r\n\tdispatch(actionCreators.clearPartPrice());\r\n\tif (Helper.userLoggedIn()) {\r\n\t\tlet url = '/configurator/' + configurationId + '/price';\r\n\t\tif (documentId) url += '?documentId=' + documentId;\r\n\t\tHelper.getData(url).then((data) => {\r\n\t\t\tif (data.Price) {\r\n\t\t\t\tdispatch(actionCreators.setPartPrice(parseFloat(data.Price)));\r\n\t\t\t} else if (data.Message && data.Message.length > 0) {\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n}\r\nconst buildCategories =\r\n\t(newConfigurationId?: string, newPartId?: string, documentConfigurationId?: string, forceImage?: boolean, position?: number) =>\r\n\t(dispatch: any, getState: any) => {\r\n\t\tconst state = getState();\r\n\t\tdispatch(actionCreators.setConfigurationLoading(true));\r\n\t\tconst documentId = state.configurator.document.documentId;\r\n\t\tif (newConfigurationId) {\r\n\t\t\t//new configuration id selected in various places\r\n\t\t\tlet url = '';\r\n\t\t\tif (Helper.userAdmin() || Helper.userInstaller()) {\r\n\t\t\t\turl = '/configurator/admin/create?brandPartnerId=' + Helper.brandPartnerId() + '&configurationId=' + newConfigurationId;\r\n\t\t\t} else if (Helper.userLoggedIn()) {\r\n\t\t\t\turl = '/configurator/auth/create?brandPartnerId=' + Helper.brandPartnerId() + '&configurationId=' + newConfigurationId;\r\n\t\t\t} else {\r\n\t\t\t\turl = '/configurator/create?brandPartnerId=' + Helper.brandPartnerId() + '&configurationId=' + newConfigurationId;\r\n\t\t\t}\r\n\t\t\tif (forceImage) {\r\n\t\t\t\turl += '&showImage=true';\r\n\t\t\t}\r\n\t\t\tif (documentConfigurationId) {\r\n\t\t\t\turl += '&documentConfigurationId=' + documentConfigurationId;\r\n\t\t\t}\r\n\t\t\tif (documentId) {\r\n\t\t\t\turl += '&documentId=' + documentId;\r\n\t\t\t}\r\n\t\t\tHelper.getData(url).then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\tHelper.onError(data.Message, 'API createConfiguration', dispatch, actionCreators);\r\n\t\t\t\t} else if (data && data.Metadata && data.ViewModel) {\r\n\t\t\t\t\tdispatchData(data, true, dispatch, documentConfigurationId);\r\n\r\n\t\t\t\t\t// calculate price if not already provided and authenticated\r\n\t\t\t\t\tif (data.Price != null) dispatch(actionCreators.setPartPrice(parseFloat(data.Price)));\r\n\t\t\t\t\telse if (Helper.userLoggedIn()) calculatePrice(data.Metadata.ConfigurationId, dispatch, documentId);\r\n\t\t\t\t} else if (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\tHelper.onError(data.Message, 'API createConfiguration', dispatch, actionCreators);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t} else if (newPartId) {\r\n\t\t\t//new part selected in step 1\r\n\t\t\tlet url = '';\r\n\r\n\t\t\tif (Helper.userAdmin() || Helper.userInstaller()) {\r\n\t\t\t\turl = '/configurator/admin/create?brandPartnerId=' + Helper.brandPartnerId() + '&partId=' + newPartId;\r\n\t\t\t\tif (position && position > 0) {\r\n\t\t\t\t\turl += '&p=' + position;\r\n\t\t\t\t}\r\n\t\t\t} else if (Helper.userLoggedIn()) {\r\n\t\t\t\turl = '/configurator/auth/create?brandPartnerId=' + Helper.brandPartnerId() + '&partId=' + newPartId;\r\n\t\t\t} else {\r\n\t\t\t\turl = '/configurator/create?brandPartnerId=' + Helper.brandPartnerId() + '&partId=' + newPartId;\r\n\t\t\t}\r\n\t\t\tif (forceImage) {\r\n\t\t\t\turl += '&showImage=true';\r\n\t\t\t}\r\n\t\t\tif (documentConfigurationId) {\r\n\t\t\t\turl += '&documentConfigurationId=' + documentConfigurationId;\r\n\t\t\t}\r\n\t\t\tif (documentId) {\r\n\t\t\t\turl += '&documentId=' + documentId;\r\n\t\t\t}\r\n\r\n\t\t\tHelper.getData(url).then((data) => {\r\n\t\t\t\tif (data && data.Metadata && data.ViewModel && data.Metadata.ConfigurationId) {\r\n\t\t\t\t\tdispatchData(data, false, dispatch, documentConfigurationId);\r\n\r\n\t\t\t\t\t// calculate price if not already provided and authenticated\r\n\t\t\t\t\tif (data.Price != null) dispatch(actionCreators.setPartPrice(parseFloat(data.Price)));\r\n\t\t\t\t\telse if (Helper.userLoggedIn()) calculatePrice(data.Metadata.ConfigurationId, dispatch, documentId);\r\n\t\t\t\t} else if (data && data.Message && data.Message.length > 0) {\r\n\t\t\t\t\tHelper.onError(data.Message, 'API createConfiguration', dispatch, actionCreators);\r\n\t\t\t\t} else Helper.onError2(data.Message, 'API createConfiguration', dispatch, actionCreators);\r\n\t\t\t});\r\n\t\t}\r\n\t};\r\nexport const actionConfigCreators = {\r\n\tbuildCategories,\r\n\tupdateCategories,\r\n};\r\n","import locale from './Locale';\r\nimport { initialState } from './store/Configurator';\r\nimport { configureRefreshFetch, fetchJSON } from 'refresh-fetch';\r\nimport merge from 'lodash/merge';\r\n\r\ninterface ICommonUtilitiesHelper {\r\n\tgetLocalizedName(nameJSON: string, language?: string): string;\r\n\tgetData(endpoint: string): any;\r\n\tpostData(endpoint: string, body: string): any;\r\n\tuserInRole(role: number): boolean;\r\n\tdateWithTimeConvert(date: string): string;\r\n\tdateConvert(date: string): string;\r\n\tuserLang(): string;\r\n}\r\nexport enum roles {\r\n\tadmin = 1, // Administrator\r\n\tprod = 2, // Salesman\r\n\tmon = 3, //Installer\r\n}\r\nexport enum status {\r\n\tstatus_active = '9328d7d7-743b-44f2-8f41-86ba7565e686',\r\n\tstatus_inactive = 'e0fc5b4a-3e14-405c-bf6d-3bc151882498',\r\n}\r\nexport enum documentSatus {\r\n\tdocumentstatus_draft = 'b1fb15a4-876f-4c3b-952a-8968384d9059',\r\n\tdocumentstatus_confirmed = 'd753e7f9-a82b-4692-88b0-b0fe698e77d2',\r\n\tdocumentstatus_confirmedOem = '48338cfa-ddd5-41d8-bbe1-8208a5c8c249',\r\n\tdocumentstatus_archived = '928217fd-fde1-45ed-8355-c11713cd4bd7',\r\n\tdocumentstatus_error = '77717987-1604-4a74-af2d-e36aef09df93',\r\n\tdocumentstatus_errorcloning = '6be488f1-c7cc-402a-bf48-01f296e7be0f',\r\n\tdocumentstatus_errorfinaldocumentation = 'df224c40-e1c2-48a8-8139-971e8b4929b3',\r\n\tdocumentstatus_errorproddocumentation = '435e32b3-1b6d-4800-9f19-27b9ff7ab3a7',\r\n\tdocumentstatus_errortechdocumentation = '66a71ee8-f1f0-4623-acb1-b1c9d3e60ad1',\r\n\tdocumentstatus_errorsenttoconfirmation = 'e7c4d5d7-1b5f-4074-b19f-3ee034e540eb',\r\n\tdocumentstatus_errorsenttoproduction = '929dd72b-bf67-44fb-aa3a-b53efb642fde',\r\n\tdocumentstatus_generatingtechdocumentation = '1b90ee89-5894-4ee0-b051-763a441ab412',\r\n\tdocumentstatus_generatedtechdocumentation = '413fe2c4-44d3-4bee-a244-1001c63fa886',\r\n\tdocumentstatus_senttoproduction = '3967c297-57f5-47ee-8b8d-912a29a6d6c3',\r\n\tdocumentstatus_cloningstarted = '2e49a00d-b0a9-41f9-9ab6-f8619e8cf0f8',\r\n\tdocumentstatus_cloningfinished = 'e87e8313-7913-403a-8a25-040a3f62440c',\r\n\tdocumentstatus_generatingproddocumentation = '1b0b25cb-462e-4170-b0f4-0e8b2768d163',\r\n\tdocumentstatus_generatedproddocumentation = 'cfd04a3d-826e-4d4f-b41d-4b0b0c8c22ec',\r\n\tdocumentstatus_generatingfinaldocumentation = '64e38fc2-de51-45e0-975b-7c9adf80975e',\r\n\tdocumentstatus_generatedfinaldocumentation = 'b59a12c5-c0ab-4413-b990-a0ab9453e3b9',\r\n\tdocumentstatus_sendingtoproduction = '34022cb4-0ddd-4429-b9ca-bd26e32a636c',\r\n\tdocumentstatus_comment = '4f7633fb-fc44-4a82-b793-f82c02a03199',\r\n\tdocumentstatus_offer = 'ef1bca6c-5133-4a10-b89f-f7050ebb30af',\r\n\tdocumentstatus_exportToERP = 'd9478466-c990-4f1b-9ff2-46fe00d2ae47',\r\n\tdocumentstatus_specialtechnicaldocumentationgenerated = '23260f40-98c4-43b2-b085-f3d4437c5c6a',\r\n\tdocumentstatus_received = '6f2f6fe7-59df-4e03-aa04-879e590de8fb',\r\n\tdocumentstatus_forwarded = 'c91d6046-85d8-4296-aad5-bf7d3a0c429d',\r\n}\r\nexport enum projectStatus {\r\n\tactive = '943b4efb-9ee9-4cff-8b0b-9eb49322c5bc',\r\n\tclosed = '0a16ff7e-0b5c-4cce-a8a3-e55c2e256c25',\r\n\tsending = 'cad6e203-c746-400d-83b3-5f887d8751e5',\r\n\tsent = '38434be7-9783-4f38-b026-62b24a8de1f1',\r\n}\r\nexport enum documentType {\r\n\tdocumenttype_inquiry = '8fc7c957-c41b-459f-9ab5-dbfa91114b6f',\r\n\tdocumenttype_offer = 'd5ffa956-85a9-4501-bb82-adfc1dd29943',\r\n\tdocumenttype_order = 'c045dc64-ad10-4156-800e-ec704a9cb7fc',\r\n\tdocumenttype_orderconfirmation = 'e6941888-0f09-4fd3-91ec-e93190b51ae3',\r\n\tdocumenttype_documentation = 'aca56c9c-acc6-4f9b-9e8f-af9946b4f1f1',\r\n\tdocumenttype_configuration = 'd1c5ce1c-9f05-4cd0-b873-1a9ccbdd8acf',\r\n\tdocumenttype_offerprinted = '9287f309-36d1-41e9-afdc-198ca8f5b357',\r\n\tdocumenttype_offersent = '60380a7c-0ab6-4ec3-b21c-b307dfab27d4',\r\n}\r\nexport enum dataType {\r\n\tstring = 0,\r\n\tinteger = 1,\r\n\tdouble = 2,\r\n\tdecimal = 3,\r\n\tdata = 4,\r\n\tcolor = 5,\r\n\ttext = 6,\r\n\tcomment = 7,\r\n}\r\n\r\nexport const comment_category = 'e8b4d35c-1bd1-4cff-8f46-e228b6e3895d';\r\n\r\nconst userLoggedIn = (): boolean => {\r\n\tif (localStorage.getItem('userToken')) {\r\n\t\treturn true;\r\n\t}\r\n\treturn false;\r\n};\r\n\r\nconst retrieveRefreshToken = () => localStorage.getItem('refreshToken');\r\nconst clearRefreshToken = () => localStorage.removeItem('refreshToken');\r\nconst retrieveToken = () => localStorage.getItem('userToken');\r\nconst saveToken = (token: string) => localStorage.setItem('userToken', token);\r\nconst saveRefreshToken = (token: string) => localStorage.setItem('refreshToken', token);\r\nconst clearToken = () => localStorage.removeItem('userToken');\r\n\r\nconst clearCache = () => {\r\n\tclearToken();\r\n\tclearRefreshToken();\r\n\tlocalStorage.removeItem('theme');\r\n\tlocalStorage.removeItem('footer');\r\n\tlocalStorage.removeItem('brandPartnerId');\r\n\tlocalStorage.removeItem('isParentPartner');\r\n\tlocalStorage.removeItem('licenseSettings');\r\n\tlocalStorage.removeItem('userRole');\r\n\tlocalStorage.removeItem('isUserOEM');\r\n\tlocalStorage.removeItem('isUserOEMAdmin');\r\n\r\n\tif (typeof localStorage.getItem('reduxState') === 'string') {\r\n\t\tlet reduxState = JSON.parse(localStorage.getItem('reduxState') || '{}');\r\n\t\treduxState.configurator = JSON.parse(JSON.stringify(initialState));\r\n\t\treduxState = JSON.stringify(reduxState);\r\n\t\tlocalStorage.setItem('reduxState', reduxState);\r\n\t}\r\n\tif (userLoggedIn()) {\r\n\t\twindow.location.href = process.env.REACT_APP_ROOT_PATH + '/configurator/selection';\r\n\t} else {\r\n\t\twindow.location.href = process.env.REACT_APP_ROOT_PATH + '/login';\r\n\t}\r\n};\r\n\r\nconst fetchJSONWithToken = (url: string, options = {}) => {\r\n\tconst token = retrieveToken();\r\n\r\n\tlet optionsWithToken = options;\r\n\tif (token != null) {\r\n\t\toptionsWithToken = merge({}, options, {\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${token}`,\r\n\t\t\t},\r\n\t\t});\r\n\t}\r\n\r\n\treturn fetchJSONSkipError(url, optionsWithToken);\r\n};\r\n\r\nconst fetchJSONSkipError = (url: any | Request | URL, options: Object = {}) => {\r\n\tconst jsonOptions = merge(\r\n\t\t{\r\n\t\t\theaders: {\r\n\t\t\t\t'Content-Type': 'application/json',\r\n\t\t\t},\r\n\t\t},\r\n\t\toptions\r\n\t);\r\n\r\n\treturn fetch(url, jsonOptions).then((response: any) => {\r\n\t\tif (response.status === 401) {\r\n\t\t\treturn fetchJSON(url, options);\r\n\t\t}\r\n\t\treturn getResponseBody(response).then((body: any) => ({\r\n\t\t\tresponse,\r\n\t\t\tbody,\r\n\t\t}));\r\n\t});\r\n};\r\n\r\nvar getResponseBody = function getResponseBody(response: any) {\r\n\tvar contentType = response.headers.get('content-type');\r\n\treturn contentType && contentType.indexOf('json') >= 0 ? response.clone().text().then(tryParseJSON) : response.clone().text();\r\n};\r\n\r\nvar tryParseJSON = function tryParseJSON(json: any) {\r\n\tif (!json) {\r\n\t\treturn null;\r\n\t}\r\n\treturn JSON.parse(json);\r\n};\r\n\r\n// Decide whether this error returned from API means that we want\r\n// to try refreshing the token. error.response contains the fetch Response\r\n// object, error.body contains the parsed JSON response body\r\nconst shouldRefreshToken = (error: any) => {\r\n\treturn error.status === 401;\r\n};\r\n\r\n// Do the actual token refreshing and update the saved token\r\nfunction refreshToken() {\r\n\tconst refreshToken = retrieveRefreshToken();\r\n\tconst body: { [key: string]: string | any } = {\r\n\t\tclient_id: process.env.REACT_APP_CLIENT_ID,\r\n\t\tclient_secret: process.env.REACT_APP_CLIENT_SECRET,\r\n\t\tgrant_type: 'refresh_token',\r\n\t\trefresh_token: refreshToken,\r\n\t};\r\n\treturn fetchJSONWithToken(process.env.REACT_APP_TOKEN_URL + '/api/token', {\r\n\t\tmethod: 'POST',\r\n\t\theaders: {\r\n\t\t\tAccept: '*/*',\r\n\t\t\t'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',\r\n\t\t},\r\n\t\tbody: Object.keys(body)\r\n\t\t\t.map((key) => encodeURIComponent(key) + '=' + encodeURIComponent(body[key]))\r\n\t\t\t.join('&'),\r\n\t})\r\n\t\t.then((response: any) => {\r\n\t\t\tif (response.response.ok && response.body.access_token != null) {\r\n\t\t\t\tsaveToken(response.body.access_token);\r\n\t\t\t\tsaveRefreshToken(response.body.refresh_token);\r\n\t\t\t} else if (!response.response.ok || response.body.error === 'invalid_grant') {\r\n\t\t\t\tclearCache();\r\n\t\t\t\tthrow new Error('Invalid refresh token');\r\n\t\t\t}\r\n\r\n\t\t\treturn response;\r\n\t\t})\r\n\t\t.catch((error) => {\r\n\t\t\t// If we failed by any reason in refreshing, just clear the token,\r\n\t\t\t// it's not that big of a deal\r\n\t\t\tclearCache();\r\n\t\t\tthrow error;\r\n\t\t});\r\n}\r\n\r\nconst fetchRefresh = configureRefreshFetch({\r\n\tshouldRefreshToken,\r\n\trefreshToken,\r\n\tfetch: fetchJSONWithToken,\r\n});\r\n\r\nclass CommonUtilities implements ICommonUtilitiesHelper {\r\n\tpublic brandPartnerId() {\r\n\t\treturn localStorage.getItem('brandPartnerId') ? localStorage.getItem('brandPartnerId') : process.env.REACT_APP_BRANDPARTNER;\r\n\t}\r\n\tpublic isDefaultBrandPartner(): boolean {\r\n\t\tconst brandPartnerId = localStorage.getItem('brandPartnerId');\r\n\t\tif (brandPartnerId === process.env.REACT_APP_BRANDPARTNER) {\r\n\t\t\treturn true;\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\tpublic userLang(): string {\r\n\t\tconst userLanguage = localStorage.getItem('userLanguage');\r\n\t\tif (userLanguage && userLanguage.length > 0) {\r\n\t\t\treturn userLanguage;\r\n\t\t} else {\r\n\t\t\tconst userLang = navigator.language || (navigator as any).userLanguage;\r\n\t\t\treturn userLang.split('-')[0];\r\n\t\t}\r\n\t}\r\n\tpublic userLoggedIn(): boolean {\r\n\t\treturn userLoggedIn();\r\n\t}\r\n\tpublic userInRole(role: number): boolean {\r\n\t\tconst userRole = localStorage.getItem('userRole');\r\n\t\tif (userRole && localStorage.getItem('userToken') && userRole.toLowerCase() === roles[role]) {\r\n\t\t\treturn true;\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\tpublic userIsOem(): boolean {\r\n\t\tconst isUserOEM = localStorage.getItem('isUserOEM');\r\n\t\tif (isUserOEM === 'true') {\r\n\t\t\treturn true;\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\tpublic userIsOemAdmin(): boolean {\r\n\t\tconst isUserOEMAdmin = localStorage.getItem('isUserOEMAdmin');\r\n\t\tif (isUserOEMAdmin === 'true') {\r\n\t\t\treturn true;\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\tpublic userIsParentPartner(): boolean {\r\n\t\tconst isParentPartner = localStorage.getItem('isParentPartner');\r\n\t\tif (isParentPartner === 'true') {\r\n\t\t\treturn true;\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\tpublic userAdmin(): boolean {\r\n\t\treturn this.userInRole(roles.admin) || this.userInRole(roles.prod);\r\n\t}\r\n\tpublic userHeadOfSales(): boolean {\r\n\t\treturn this.userInRole(roles.admin);\r\n\t}\r\n\tpublic userInstaller(): boolean {\r\n\t\treturn this.userInRole(roles.mon);\r\n\t}\r\n\tpublic userSales(): boolean {\r\n\t\treturn this.userInRole(roles.prod);\r\n\t}\r\n\tpublic userRegisteredCustomer(): boolean {\r\n\t\tif (localStorage.getItem('userToken') && userLoggedIn() && !this.userEditor()) {\r\n\t\t\treturn true;\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\tpublic userEditor(): boolean {\r\n\t\treturn this.userAdmin() || this.userInstaller();\r\n\t}\r\n\tpublic themeButtonColor(): string {\r\n\t\tif (localStorage.getItem('theme')) {\r\n\t\t\tconst themeCached = localStorage.getItem('theme') as string;\r\n\t\t\tconst theme = JSON.parse(themeCached);\r\n\t\t\tif (theme.buttonColor) {\r\n\t\t\t\treturn theme.buttonColor;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn '#86A33C';\r\n\t}\r\n\tpublic themeBottonColorWithShadowRGBA(): string {\r\n\t\tif (localStorage.getItem('theme')) {\r\n\t\t\tconst themeCached = localStorage.getItem('theme') as string;\r\n\t\t\tconst theme = JSON.parse(themeCached);\r\n\t\t\tif (theme.buttonColor) {\r\n\t\t\t\tlet inputColor = theme.buttonColor;\r\n\t\t\t\tlet r = parseInt(inputColor.slice(1, 3), 16),\r\n\t\t\t\t\tg = parseInt(inputColor.slice(3, 5), 16),\r\n\t\t\t\t\tb = parseInt(inputColor.slice(5, 7), 16);\r\n\t\t\t\tinputColor = 'rgba(' + r + ', ' + g + ', ' + b + ', ' + 0.2 + ')';\r\n\t\t\t\treturn inputColor;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn 'rgba(0, 0, 0, 0.2)';\r\n\t}\r\n\tpublic themeButtonFontColor(): string {\r\n\t\tif (localStorage.getItem('theme')) {\r\n\t\t\tconst themeCached = localStorage.getItem('theme') as string;\r\n\t\t\tconst theme = JSON.parse(themeCached);\r\n\t\t\tif (theme.buttonFontColor) {\r\n\t\t\t\treturn theme.buttonFontColor;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn '#fff';\r\n\t}\r\n\tpublic dateWithTimeConvert(date: string): string {\r\n\t\tif (date && date.length > 0) {\r\n\t\t\tlet newDate = new Date(date);\r\n\t\t\tlet offset = newDate.getTimezoneOffset();\r\n\t\t\toffset = Math.abs(offset / 60);\r\n\t\t\tnewDate.setHours(newDate.getHours() + offset);\r\n\t\t\treturn newDate.toLocaleString(this.userLang()).substr(0, newDate.toLocaleString(this.userLang()).lastIndexOf(':'));\r\n\t\t}\r\n\t\treturn '';\r\n\t}\r\n\tpublic dateConvert(date: string): string {\r\n\t\tif (date && date.length > 0) {\r\n\t\t\tlet newDate = new Date(date);\r\n\t\t\treturn newDate.toLocaleDateString(this.userLang());\r\n\t\t}\r\n\t\treturn '';\r\n\t}\r\n\t//get string from localized json. Used for API values reading, like {sl:\"tekst\", en:\"text\"}\r\n\tpublic getLocalizedName(nameJSON: string, language?: string) {\r\n\t\ttry {\r\n\t\t\tif (typeof nameJSON !== 'number' || isNaN(nameJSON)) {\r\n\t\t\t\tconst name = JSON.parse(nameJSON);\r\n\t\t\t\tconst lang = language || this.userLang();\r\n\t\t\t\tif (lang === 'en' && name.en) return name.en;\r\n\t\t\t\telse if (lang === 'sl' && name.sl) return name.sl;\r\n\t\t\t\telse if (lang === 'de' && name.de) return name.de;\r\n\t\t\t\telse if (lang === 'fr' && name.fr) return name.fr;\r\n\t\t\t\t//fallback language\r\n\t\t\t\tif (name.sl) return name.sl;\r\n\t\t\t\treturn '';\r\n\t\t\t} else {\r\n\t\t\t\treturn nameJSON;\r\n\t\t\t}\r\n\t\t} catch (e) {\r\n\t\t\treturn nameJSON;\r\n\t\t}\r\n\t}\r\n\tpublic getLocalizedValueOrNull(nameJSON: string, language?: string) {\r\n\t\ttry {\r\n\t\t\tif (typeof nameJSON !== 'number' || isNaN(nameJSON)) {\r\n\t\t\t\tconst name = JSON.parse(nameJSON);\r\n\t\t\t\tconst lang = language || this.userLang();\r\n\t\t\t\tif (lang === 'en' && name.en) return name.en;\r\n\t\t\t\telse if (lang === 'sl' && name.sl) return name.sl;\r\n\t\t\t\telse if (lang === 'de' && name.de) return name.de;\r\n\t\t\t\telse if (lang === 'fr' && name.fr) return name.fr;\r\n\r\n\t\t\t\tif (typeof name === 'string' || typeof name === 'number') {\r\n\t\t\t\t\treturn name;\r\n\t\t\t\t}\r\n\t\t\t\treturn null;\r\n\t\t\t} else {\r\n\t\t\t\treturn nameJSON;\r\n\t\t\t}\r\n\t\t} catch (e) {\r\n\t\t\treturn nameJSON;\r\n\t\t}\r\n\t}\r\n\tpublic onError(data: any, title: string, dispatch: any, actionCreators: any): void {\r\n\t\tdispatch(actionCreators.setError(title, data));\r\n\t\tdispatch(actionCreators.setConfigurationFlags(undefined, false, undefined, false));\r\n\t}\r\n\tpublic onError2(data: any, title: string, dispatch: any, actionCreators: any): void {\r\n\t\tdispatch(actionCreators.setError(title, data));\r\n\t\tdispatch(actionCreators.setConfigurationFlags(undefined, false, undefined, false));\r\n\t}\r\n\tpublic async getData(endpoint: string, type?: 'json' | 'blob') {\r\n\t\ttry {\r\n\t\t\tconst token = retrieveToken();\r\n\t\t\tlet data: any = await fetchRefresh(process.env.REACT_APP_API_URL + endpoint, {\r\n\t\t\t\tmethod: 'GET',\r\n\t\t\t\theaders: {\r\n\t\t\t\t\tAccept: 'application/json; odata=verbose',\r\n\t\t\t\t\t'X-Response-Language': this.userLang(),\r\n\t\t\t\t\tAuthorization: `Bearer ${token}`,\r\n\t\t\t\t},\r\n\t\t\t\tcredentials: 'omit',\r\n\t\t\t});\r\n\t\t\tlet response = data.response;\r\n\t\t\tif (response.status > 399 && response.status < 600) {\r\n\t\t\t\tlet json: any = await response.json();\r\n\t\t\t\tlet message = {\r\n\t\t\t\t\tMessage: json && json.detail ? json.detail : response.status,\r\n\t\t\t\t};\r\n\t\t\t\treturn message;\r\n\t\t\t} else {\r\n\t\t\t\tif (type === 'blob') return await response.blob();\r\n\r\n\t\t\t\tlet json: TResponse = await response.json();\r\n\t\t\t\treturn json;\r\n\t\t\t}\r\n\t\t} catch (error) {\r\n\t\t\treturn locale.apiException;\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async login(endpoint: string, body: string) {\r\n\t\ttry {\r\n\t\t\tlet response = await fetch(endpoint, {\r\n\t\t\t\tmethod: 'POST',\r\n\t\t\t\theaders: {\r\n\t\t\t\t\tAccept: '*/*',\r\n\t\t\t\t\t'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',\r\n\t\t\t\t\t'X-Response-Language': this.userLang(),\r\n\t\t\t\t},\r\n\t\t\t\tcredentials: 'omit',\r\n\t\t\t\tbody: body,\r\n\t\t\t});\r\n\t\t\tlet json: TResponse = await response.json();\r\n\t\t\treturn json;\r\n\t\t} catch (error) {\r\n\t\t\tthrow error;\r\n\t\t}\r\n\t}\r\n\tpublic async postData(endpoint: string, body: string) {\r\n\t\ttry {\r\n\t\t\tconst token = retrieveToken();\r\n\t\t\tlet data: any = await fetchRefresh(process.env.REACT_APP_API_URL + endpoint, {\r\n\t\t\t\tmethod: 'POST',\r\n\t\t\t\theaders: {\r\n\t\t\t\t\tAccept: '*/*',\r\n\t\t\t\t\t'Content-Type': 'application/json',\r\n\t\t\t\t\t'X-Response-Language': this.userLang(),\r\n\t\t\t\t\tAuthorization: `Bearer ${token}`,\r\n\t\t\t\t},\r\n\t\t\t\tcredentials: 'omit',\r\n\t\t\t\tbody: body,\r\n\t\t\t});\r\n\t\t\tlet response = data.response;\r\n\t\t\tif (response.status > 399 && response.status < 600) {\r\n\t\t\t\tlet json: any = await response.json();\r\n\t\t\t\tlet message = {\r\n\t\t\t\t\tMessage: json && json.detail ? json.detail : response.status,\r\n\t\t\t\t};\r\n\t\t\t\treturn message;\r\n\t\t\t} else {\r\n\t\t\t\tlet json: TResponse = await response.json();\r\n\t\t\t\treturn json;\r\n\t\t\t}\r\n\t\t} catch (error) {\r\n\t\t\treturn locale.apiException;\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async putData(endpoint: string, body: string) {\r\n\t\ttry {\r\n\t\t\tconst token = retrieveToken();\r\n\t\t\tlet data: any = await fetchRefresh(process.env.REACT_APP_API_URL + endpoint, {\r\n\t\t\t\tmethod: 'PUT',\r\n\t\t\t\theaders: {\r\n\t\t\t\t\tAccept: '*/*',\r\n\t\t\t\t\t'Content-Type': 'application/json',\r\n\t\t\t\t\t'X-Response-Language': this.userLang(),\r\n\t\t\t\t\tAuthorization: `Bearer ${token}`,\r\n\t\t\t\t},\r\n\t\t\t\tcredentials: 'omit',\r\n\t\t\t\tbody: body,\r\n\t\t\t});\r\n\t\t\tlet response = data.response;\r\n\t\t\tif (response.status > 399 && response.status < 600) {\r\n\t\t\t\tlet json: any = await response.json();\r\n\t\t\t\tlet message = {\r\n\t\t\t\t\tMessage: json && json.detail ? json.detail : response.status,\r\n\t\t\t\t};\r\n\t\t\t\treturn message;\r\n\t\t\t} else {\r\n\t\t\t\tlet json: TResponse = await response.json();\r\n\t\t\t\treturn json;\r\n\t\t\t}\r\n\t\t} catch (error) {\r\n\t\t\treturn locale.apiException;\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async deleteData(endpoint: string) {\r\n\t\ttry {\r\n\t\t\tconst token = retrieveToken();\r\n\t\t\tlet data: any = await fetchRefresh(process.env.REACT_APP_API_URL + endpoint, {\r\n\t\t\t\tmethod: 'DELETE',\r\n\t\t\t\theaders: {\r\n\t\t\t\t\tAccept: '*/*',\r\n\t\t\t\t\t'X-Response-Language': this.userLang(),\r\n\t\t\t\t\tAuthorization: `Bearer ${token}`,\r\n\t\t\t\t},\r\n\t\t\t\tcredentials: 'omit',\r\n\t\t\t});\r\n\t\t\tlet response = data.response;\r\n\t\t\tif (response.status > 399 && response.status < 600) {\r\n\t\t\t\tlet json: any = await response.json();\r\n\t\t\t\tlet message = {\r\n\t\t\t\t\tMessage: json && json.detail ? json.detail : response.status,\r\n\t\t\t\t};\r\n\t\t\t\treturn message;\r\n\t\t\t} else {\r\n\t\t\t\tlet json: TResponse = await response.json();\r\n\t\t\t\treturn json;\r\n\t\t\t}\r\n\t\t} catch (error) {\r\n\t\t\treturn locale.apiException;\r\n\t\t}\r\n\t}\r\n\r\n\tpublic addDefaultSrc(e: any) {\r\n\t\te.target.src = process.env.PUBLIC_URL + '/images/noimage.png';\r\n\t}\r\n}\r\nexport default new CommonUtilities();\r\n\r\n// adapted from https://stackoverflow.com/a/1144249\r\nexport function deepCompare(left: any, right: any, ignoreNullUndefinedDiffs?: boolean) {\r\n\tvar leftChain: any, rightChain: any;\r\n\r\n\tfunction compare2Objects(x: any, y: any) {\r\n\t\tvar p;\r\n\r\n\t\t// ignore null/undefiend diffs\r\n\t\tif (ignoreNullUndefinedDiffs && left == null && right == null) return true;\r\n\r\n\t\t// remember that NaN === NaN returns false\r\n\t\t// and isNaN(undefined) returns true\r\n\t\tif (isNaN(x) && isNaN(y) && typeof x === 'number' && typeof y === 'number') {\r\n\t\t\treturn true;\r\n\t\t}\r\n\r\n\t\t// Compare primitives and functions.\r\n\t\t// Check if both arguments link to the same object.\r\n\t\t// Especially useful on the step where we compare prototypes\r\n\t\tif (x === y) {\r\n\t\t\treturn true;\r\n\t\t}\r\n\r\n\t\t// Works in case when functions are created in constructor.\r\n\t\t// Comparing dates is a common scenario. Another built-ins?\r\n\t\t// We can even handle functions passed across iframes\r\n\t\tif (\r\n\t\t\t(typeof x === 'function' && typeof y === 'function') ||\r\n\t\t\t(x instanceof Date && y instanceof Date) ||\r\n\t\t\t(x instanceof RegExp && y instanceof RegExp) ||\r\n\t\t\t(x instanceof String && y instanceof String) ||\r\n\t\t\t(x instanceof Number && y instanceof Number)\r\n\t\t) {\r\n\t\t\treturn x.toString() === y.toString();\r\n\t\t}\r\n\r\n\t\t// At last checking prototypes as good as we can\r\n\t\tif (!(x instanceof Object && y instanceof Object)) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tif (x.isPrototypeOf(y) || y.isPrototypeOf(x)) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tif (x.constructor !== y.constructor) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tif (x.prototype !== y.prototype) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\t// Check for infinitive linking loops\r\n\t\tif (leftChain.indexOf(x) > -1 || rightChain.indexOf(y) > -1) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\t// Quick checking of one object being a subset of another.\r\n\t\t// todo: cache the structure of arguments[0] for performance\r\n\t\tfor (p in y) {\r\n\t\t\tif (!ignoreNullUndefinedDiffs && y.hasOwnProperty(p) !== x.hasOwnProperty(p)) {\r\n\t\t\t\treturn false;\r\n\t\t\t} else if (typeof y[p] !== typeof x[p]) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tfor (p in x) {\r\n\t\t\tif (ignoreNullUndefinedDiffs && x.hasOwnProperty(p) && !y.hasOwnProperty(p) && x[y] == null) continue;\r\n\r\n\t\t\tif (y.hasOwnProperty(p) !== x.hasOwnProperty(p)) {\r\n\t\t\t\treturn false;\r\n\t\t\t} else if (typeof y[p] !== typeof x[p]) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\r\n\t\t\tswitch (typeof x[p]) {\r\n\t\t\t\tcase 'object':\r\n\t\t\t\tcase 'function':\r\n\t\t\t\t\tleftChain.push(x);\r\n\t\t\t\t\trightChain.push(y);\r\n\r\n\t\t\t\t\tif (!compare2Objects(x[p], y[p])) {\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tleftChain.pop();\r\n\t\t\t\t\trightChain.pop();\r\n\t\t\t\t\tbreak;\r\n\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tif (x[p] !== y[p]) {\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn true;\r\n\t}\r\n\r\n\tif (arguments.length < 1) {\r\n\t\treturn true; //Die silently? Don't know how to handle such case, please help...\r\n\t\t// throw \"Need two or more arguments to compare\";\r\n\t}\r\n\r\n\tleftChain = [];\r\n\trightChain = [];\r\n\r\n\treturn compare2Objects(left, right);\r\n}\r\n","import { actionConfigCreators } from './Categories';\r\n\r\nconst setPart = 'SET_PART';\r\nconst setPartPrice = 'SET_PARTPRICE';\r\nconst clearPartPrice = 'CLEAR_PARTPRICE';\r\nconst clearPart = 'CLEAR_PART';\r\nconst incrementCategoryStep = 'INCREMENT_STEP';\r\nconst decrementCategoryStep = 'DECREMENT_STEP';\r\nconst setCategoryStep = 'SET_STEP';\r\nconst setCategories = 'SET_CATEGORIES';\r\nconst setTree = 'SET_TREE';\r\nconst setTreeModal = 'SET_TREE_MODAL';\r\nconst setLoading = 'SET_LOADING';\r\nconst setPopupParameters = 'SET_POPUPPARAMETERS';\r\n\r\nconst addCategoryComment = 'ADD_CATEGORY_COMMENT';\r\nconst addSelectedParameter = 'ADD_PARAMETER';\r\nconst setSelectedParameters = 'SET_PARAMETER';\r\nconst clearParameters = 'CLEAR_PARAMETERS';\r\nconst addSelectedParameterTag = 'ADD_PARAMETER_TAG';\r\nconst addDefaultParameter = 'ADD_DEFAULT_PARAMETER';\r\nconst saveConfiguration = 'SAVE_CONFIGURATION';\r\nconst clearConfiguration = 'CLEAR_CONFIGURATION';\r\nconst saveConfigurationComment = 'SAVE_CONFIGURATION_COMMENT';\r\nconst setConfigurationPublished = 'SET_CONFIGURATION_PUBLISHED';\r\nconst setConfigurationFlags = 'SET_CONFIGURATION_FLAGS';\r\nconst setConfigurationLoading = 'SET_CONFIGURATION_LOADING';\r\n\r\nconst setAnonymousToken = 'SET_USERTOKEN';\r\nconst setContact = 'SET_CONTACT';\r\nconst setUser = 'SET_USER';\r\nconst setDocument = 'SET_DOCUMENT';\r\nconst setDocumentAddingMode = 'SET_DOCUMENT_ADDING';\r\nconst setImage = 'SET_IMAGE';\r\nconst setError = 'SET_ERROR';\r\nconst setLanguage = 'SET_LANGUAGE';\r\nconst destroySession = 'DESTROY_SESSION';\r\nconst setSearch = 'SET_SEARCH';\r\nconst setCartOpen = 'SET_CART_OPEN';\r\nconst setInquiryDialogOpen = 'SET_INQUIRYDIALOG_OPEN';\r\nconst setShowMessage = 'SET_SHOW_MESSAGE';\r\nconst setCartAddingDisabled = 'SETCARTADDINGDISABLED';\r\nconst setFooter = 'SET_FOOTER';\r\nconst setBrand = 'SET_BRAND';\r\nconst setBrands = 'SET_BRANDS';\r\nconst setNumberOfBrands = 'SET_NUMBEROFBRANDS';\r\nexport interface IGlobalState {\r\n\tpart: object;\r\n}\r\n\r\nexport const initialState = {\r\n\tpart: {},\r\n\tstep: 0,\r\n\tcategories: [],\r\n\tpopupParameters: [],\r\n\ttree: null,\r\n\ttreeModal: false,\r\n\tloading: false,\r\n\tselectedParameters: [],\r\n\tselectedParametersTags: [],\r\n\tcategoryComments: [],\r\n\tanonymousToken: null,\r\n\tuser: null,\r\n\tcontact: {},\r\n\tconfiguration: {\r\n\t\tconfigurationId: null,\r\n\t\tdocumentConfigurationId: null,\r\n\t\tdocumentPosition: null,\r\n\t\tconfigurationPublished: false,\r\n\t\tloading: false,\r\n\t\tloadingImage: false,\r\n\t\thasDocument: false,\r\n\t\tposition: 0,\r\n\t\timage: '',\r\n\t\tinApproval: false,\r\n\t\tcanEdit: true,\r\n\t\tloader: false,\r\n\t},\r\n\tdocument: {\r\n\t\tdocumentId: null,\r\n\t\tinitialDocumentId: null,\r\n\t\tdocumentConfigurations: [],\r\n\t\tname: '',\r\n\t\tproject: '',\r\n\t\taddingMode: false,\r\n\t\tdisableEdit: false,\r\n\t\tdocumentStatusId: null,\r\n\t\tcurrency: 'EUR',\r\n\t},\r\n\terror: { title: '', message: '' },\r\n\ttheme: null,\r\n\tfooter: null,\r\n\tbrandPartnerId: null, //process.env.REACT_APP_BRANDPARTNER,\r\n\tlanguage: navigator.language || (navigator as any).userLanguage,\r\n\tsearch: { selectedCategories: [], query: '' },\r\n\tnavCartOpen: false,\r\n\tinquiryDialogOpen: false,\r\n\tshowMessage: { show: false, title: '', message: '' },\r\n\tcartAddingDisabled: false,\r\n\tbrands: [],\r\n\tnumberOfBrands: 0,\r\n};\r\n\r\nexport const actionCreators = {\r\n\tsetPart: (id: string, partId: string, name: string, title: string, brandName: string, image: string, price: number) => ({\r\n\t\ttype: setPart,\r\n\t\tid,\r\n\t\tpartId,\r\n\t\tname,\r\n\t\ttitle,\r\n\t\tbrandName,\r\n\t\timage,\r\n\t\tprice,\r\n\t}),\r\n\tsetPartPrice: (price: number) => ({ type: setPartPrice, price }),\r\n\tclearPartPrice: () => ({ type: clearPartPrice }),\r\n\tclearPart: (includeDocument?: boolean, position?: number) => ({\r\n\t\ttype: clearPart,\r\n\t\tincludeDocument,\r\n\t\tposition,\r\n\t}),\r\n\tincrementStep: () => ({ type: incrementCategoryStep }),\r\n\tdecrementStep: () => ({ type: decrementCategoryStep }),\r\n\tsetStep: (i: number) => ({ type: setCategoryStep, i }),\r\n\tsetCategories: (categories: any) => ({\r\n\t\ttype: setCategories,\r\n\t\tcategories,\r\n\t}),\r\n\tsetTree: (tree: any) => ({ type: setTree, tree }),\r\n\tsetTreeModal: (treeModal: any) => ({ type: setTreeModal, treeModal }),\r\n\tsetLoading: (loading: boolean) => ({ type: setLoading, loading }),\r\n\tsetPopupParameters: (popupParameters: any[]) => ({\r\n\t\ttype: setPopupParameters,\r\n\t\tpopupParameters,\r\n\t}),\r\n\r\n\tsetAnonymousToken: (userToken: any) => ({\r\n\t\ttype: setAnonymousToken,\r\n\t\tuserToken,\r\n\t}),\r\n\r\n\tsetContact: (contactData: any) => ({ type: setContact, contactData }),\r\n\tsetUser: (email: string, name: string, userType: string, roles: any[]) => ({\r\n\t\ttype: setUser,\r\n\t\temail,\r\n\t\tname,\r\n\t\tuserType,\r\n\t\troles,\r\n\t}),\r\n\r\n\taddSelectedParameter: (param: any) => ({\r\n\t\ttype: addSelectedParameter,\r\n\t\tparam,\r\n\t}),\r\n\tsetSelectedParameters: (selectedParameters: any[]) => ({\r\n\t\ttype: setSelectedParameters,\r\n\t\tselectedParameters,\r\n\t}),\r\n\taddSelectedParameterTag: (param: any) => ({\r\n\t\ttype: addSelectedParameterTag,\r\n\t\tparam,\r\n\t}),\r\n\taddDefaultParameter: (param: any) => ({ type: addDefaultParameter, param }),\r\n\r\n\taddCategoryComment: (comment: any) => ({\r\n\t\ttype: addCategoryComment,\r\n\t\tcomment,\r\n\t}),\r\n\r\n\tclearParameters: () => ({ type: clearParameters }),\r\n\r\n\tsaveConfiguration: (configurationId: string, documentConfigurationId?: string, documentPosition?: string) => ({\r\n\t\ttype: saveConfiguration,\r\n\t\tconfigurationId,\r\n\t\tdocumentConfigurationId,\r\n\t\tdocumentPosition,\r\n\t}),\r\n\tclearConfiguration: () => ({ type: clearConfiguration }),\r\n\tsaveConfigurationComment: (comment?: string) => ({\r\n\t\ttype: saveConfigurationComment,\r\n\t\tcomment,\r\n\t}),\r\n\tsetConfigurationLoading: (loading: boolean) => ({\r\n\t\ttype: setConfigurationLoading,\r\n\t\tloading,\r\n\t}),\r\n\tsetConfigurationPublished: (configurationPublished: boolean) => ({\r\n\t\ttype: setConfigurationPublished,\r\n\t\tconfigurationPublished,\r\n\t}),\r\n\tsetConfigurationFlags: (\r\n\t\tpublished?: boolean,\r\n\t\tcanEdit?: boolean,\r\n\t\tinApproval?: boolean,\r\n\t\tloading?: boolean,\r\n\t\thasDocument?: boolean,\r\n\t\tposition?: number,\r\n\t\tloadingImage?: boolean\r\n\t) => ({\r\n\t\ttype: setConfigurationFlags,\r\n\t\tpublished,\r\n\t\tcanEdit,\r\n\t\tinApproval,\r\n\t\tloading,\r\n\t\thasDocument,\r\n\t\tposition,\r\n\t\tloadingImage,\r\n\t}),\r\n\r\n\tsetDocument: (\r\n\t\tdocumentId: string,\r\n\t\tinitialDocumentId: string,\r\n\t\tname: string,\r\n\t\tproject: string,\r\n\t\tdocumentConfigurations?: any,\r\n\t\tdisableEdit?: boolean,\r\n\t\tdocumentStatusId?: string,\r\n\t\tcurrency?: string\r\n\t) => ({\r\n\t\ttype: setDocument,\r\n\t\tdocumentId,\r\n\t\tinitialDocumentId,\r\n\t\tname,\r\n\t\tproject,\r\n\t\tdocumentConfigurations,\r\n\t\tdisableEdit,\r\n\t\tdocumentStatusId,\r\n\t\tcurrency,\r\n\t}),\r\n\tsetDocumentAddingMode: (adding: boolean) => ({\r\n\t\ttype: setDocumentAddingMode,\r\n\t\tadding,\r\n\t}),\r\n\tsetImage: (image: string) => ({ type: setImage, image }),\r\n\r\n\tsetError: (title: string, message: string) => ({\r\n\t\ttype: setError,\r\n\t\ttitle,\r\n\t\tmessage,\r\n\t}),\r\n\tsetBrand: (\r\n\t\tlogo: string,\r\n\t\tlogotype: string,\r\n\t\ttitle: string,\r\n\t\theader: string,\r\n\t\tcolor: string,\r\n\t\theaderFontColor: string,\r\n\t\tbrandPartnerId: string,\r\n\t\tbuttonColor: string,\r\n\t\tbuttonFontColor: string\r\n\t) => ({ type: setBrand, logo, logotype, title, header, color, headerFontColor, brandPartnerId, buttonColor, buttonFontColor }),\r\n\tsetNumberOfBrands: (numberOfBrands: number) => ({ type: setNumberOfBrands, numberOfBrands }),\r\n\tsetLanguage: (language: string) => ({ type: setLanguage, language }),\r\n\tsetFooter: (text1: string, url1: string, text2: string, url2: string, text3: string, url3: string) => ({\r\n\t\ttype: setFooter,\r\n\t\ttext1,\r\n\t\turl1,\r\n\t\ttext2,\r\n\t\turl2,\r\n\t\ttext3,\r\n\t\turl3,\r\n\t}),\r\n\r\n\tdestroySession: () => ({ type: destroySession }),\r\n\tsetSearch: (selectedCategories: string[], query: string) => ({\r\n\t\ttype: setSearch,\r\n\t\tselectedCategories,\r\n\t\tquery,\r\n\t}),\r\n\tsetCartOpen: (open: boolean) => ({ type: setCartOpen, open }),\r\n\tsetInquiryDialogOpen: (open: boolean) => ({ type: setInquiryDialogOpen, open }),\r\n\tsetShowMessage: (show: boolean, title: string, message: string) => ({ type: setShowMessage, show, title, message }),\r\n\tsetCartAddingDisabled: (disabled: boolean) => ({\r\n\t\ttype: setCartAddingDisabled,\r\n\t\tdisabled,\r\n\t}),\r\n\tsetBrands: (brands: any[]) => ({ type: setBrands, brands }),\r\n\t...actionConfigCreators,\r\n};\r\n\r\nexport const reducer = (state: any, action: any) => {\r\n\tstate = state || initialState;\r\n\r\n\tif (action.type === clearPart) {\r\n\t\tif (action.includeDocument)\r\n\t\t\treturn {\r\n\t\t\t\t...state,\r\n\t\t\t\tselectedParameters: [],\r\n\t\t\t\tselectedParametersTags: [],\r\n\t\t\t\tpart: {},\r\n\t\t\t\tstep: 0,\r\n\t\t\t\tcategories: [],\r\n\t\t\t\tdocument: {\r\n\t\t\t\t\tdocumentId: null,\r\n\t\t\t\t\tinitialDocumentId: null,\r\n\t\t\t\t\tcurrency: 'EUR',\r\n\t\t\t\t\tdocumentConfigurations: [],\r\n\t\t\t\t},\r\n\t\t\t\tconfiguration: {\r\n\t\t\t\t\tconfigurationId: null,\r\n\t\t\t\t\tdocumentConfigurationId: null,\r\n\t\t\t\t\tdocumentPosition: null,\r\n\t\t\t\t\tconfigurationPublished: false,\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\thasDocument: false,\r\n\t\t\t\t\tposition: 0,\r\n\t\t\t\t\timage: '',\r\n\t\t\t\t\tinApproval: false,\r\n\t\t\t\t\tcanEdit: true,\r\n\t\t\t\t},\r\n\t\t\t};\r\n\t\telse\r\n\t\t\treturn {\r\n\t\t\t\t...state,\r\n\t\t\t\tselectedParameters: [],\r\n\t\t\t\tselectedParametersTags: [],\r\n\t\t\t\tpart: {},\r\n\t\t\t\tstep: 0,\r\n\t\t\t\tcategories: [],\r\n\t\t\t\tconfiguration: {\r\n\t\t\t\t\tconfigurationId: null,\r\n\t\t\t\t\tdocumentConfigurationId: null,\r\n\t\t\t\t\tdocumentPosition: null,\r\n\t\t\t\t\tconfigurationPublished: false,\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t\thasDocument: false,\r\n\t\t\t\t\tposition: action.position,\r\n\t\t\t\t\timage: '',\r\n\t\t\t\t\tinApproval: false,\r\n\t\t\t\t\tcanEdit: true,\r\n\t\t\t\t},\r\n\t\t\t};\r\n\t}\r\n\tif (action.type === setPart) {\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\tpart: {\r\n\t\t\t\tid: action.id,\r\n\t\t\t\tpartId: action.partId,\r\n\t\t\t\tname: action.name,\r\n\t\t\t\ttitle: action.title,\r\n\t\t\t\tbrandName: action.brandName,\r\n\t\t\t\timage: action.image,\r\n\t\t\t\tprice: action.price,\r\n\t\t\t},\r\n\t\t};\r\n\t}\r\n\tif (action.type === setPartPrice) {\r\n\t\treturn { ...state, part: { ...state.part, price: action.price } };\r\n\t}\r\n\tif (action.type === clearPartPrice) {\r\n\t\treturn { ...state, part: { ...state.part, price: undefined } };\r\n\t}\r\n\tif (action.type === incrementCategoryStep) {\r\n\t\treturn { ...state, step: state.step + 1 };\r\n\t}\r\n\tif (action.type === decrementCategoryStep) {\r\n\t\treturn { ...state, step: state.step - 1 };\r\n\t}\r\n\tif (action.type === setCategoryStep) {\r\n\t\treturn { ...state, step: action.i };\r\n\t}\r\n\tif (action.type === setCategories) {\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\tcategories: [...action.categories],\r\n\t\t};\r\n\t}\r\n\tif (action.type === setTree) {\r\n\t\treturn { ...state, tree: action.tree };\r\n\t}\r\n\tif (action.type === setTreeModal) {\r\n\t\treturn { ...state, treeModal: action.treeModal };\r\n\t}\r\n\tif (action.type === setLoading) {\r\n\t\treturn { ...state, loading: action.loading };\r\n\t}\r\n\tif (action.type === setPopupParameters) {\r\n\t\treturn { ...state, popupParameters: action.popupParameters };\r\n\t}\r\n\tif (action.type === setAnonymousToken) {\r\n\t\treturn { ...state, anonymousToken: action.userToken };\r\n\t}\r\n\tif (action.type === setContact) {\r\n\t\treturn { ...state, contact: action.contactData };\r\n\t}\r\n\tif (action.type === addSelectedParameter) {\r\n\t\tlet selectedParams = Array.from(state.selectedParameters);\r\n\t\tlet foundIndex = selectedParams.findIndex((param: any) => param.parameterId === action.param.parameterId);\r\n\t\tif (foundIndex >= 0) selectedParams[foundIndex] = action.param;\r\n\t\telse selectedParams.push(action.param);\r\n\t\treturn { ...state, selectedParameters: selectedParams };\r\n\t}\r\n\tif (action.type === setSelectedParameters) {\r\n\t\treturn { ...state, selectedParameters: action.selectedParameters };\r\n\t}\r\n\tif (action.type === addSelectedParameterTag) {\r\n\t\tlet selectedParamTags = state.selectedParametersTags || [];\r\n\t\tlet foundIndex = selectedParamTags.findIndex((param: any) => param.parameterId === action.param.parameterId);\r\n\t\tif (foundIndex >= 0) {\r\n\t\t\tif (action.param.unselect) {\r\n\t\t\t\tselectedParamTags.splice(foundIndex, 1);\r\n\t\t\t} else {\r\n\t\t\t\tselectedParamTags[foundIndex] = action.param;\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tselectedParamTags.push(action.param);\r\n\t\t}\r\n\t\treturn { ...state, selectedParametersTags: selectedParamTags };\r\n\t}\r\n\tif (action.type === addDefaultParameter) {\r\n\t\tlet selectedParams = state.selectedParameters;\r\n\t\tlet foundIndex = selectedParams.findIndex((param: any) => param.parameterId === action.param.parameterId);\r\n\t\tif (foundIndex === -1) selectedParams.push(action.param);\r\n\t\treturn { ...state, selectedParameters: selectedParams };\r\n\t}\r\n\r\n\tif (action.type === addCategoryComment) {\r\n\t\tlet iFound = -1;\r\n\t\tfor (let i = 0; i < state.categoryComments.length; i++) {\r\n\t\t\tif (state.categoryComments[i].categoryId === action.comment.categoryId) {\r\n\t\t\t\tiFound = i;\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\tcategoryComments: [].concat(action.comment, iFound >= 0 ? state.categoryComments.slice(iFound, 1) : state.categoryComments),\r\n\t\t};\r\n\t}\r\n\tif (action.type === clearParameters) {\r\n\t\treturn { ...state, selectedParameters: [], part: action.part, step: 0 };\r\n\t}\r\n\tif (action.type === saveConfiguration) {\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\tconfiguration: {\r\n\t\t\t\t...state.configuration,\r\n\t\t\t\tconfigurationId: action.configurationId,\r\n\t\t\t\tdocumentConfigurationId: action.documentConfigurationId,\r\n\t\t\t\tdocumentPosition: action.documentPosition,\r\n\t\t\t\thasDocument: false,\r\n\t\t\t\tposition: 0,\r\n\t\t\t},\r\n\t\t\tselectedParameters: [],\r\n\t\t\tpart: {},\r\n\t\t\tstep: 0,\r\n\t\t\tcategories: [],\r\n\t\t\tloading: false,\r\n\t\t};\r\n\t}\r\n\tif (action.type === clearConfiguration) {\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\tconfiguration: {\r\n\t\t\t\tconfigurationId: null,\r\n\t\t\t\tdocumentConfigurationId: null,\r\n\t\t\t\tdocumentPosition: null,\r\n\t\t\t\tconfigurationPublished: false,\r\n\t\t\t\tloading: false,\r\n\t\t\t\thasDocument: false,\r\n\t\t\t\tposition: 0,\r\n\t\t\t\timage: '',\r\n\t\t\t\tinApproval: false,\r\n\t\t\t\tcanEdit: true,\r\n\t\t\t},\r\n\t\t\tselectedParameters: [],\r\n\t\t\tpart: {},\r\n\t\t\tstep: 0,\r\n\t\t\tcategories: [],\r\n\t\t\tloading: false,\r\n\t\t};\r\n\t}\r\n\tif (action.type === saveConfigurationComment) {\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\tconfiguration: { ...state.configuration, comment: action.comment },\r\n\t\t};\r\n\t}\r\n\tif (action.type === setConfigurationPublished) {\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\tconfiguration: {\r\n\t\t\t\t...state.configuration,\r\n\t\t\t\tconfigurationPublished: action.configurationPublished,\r\n\t\t\t},\r\n\t\t};\r\n\t}\r\n\tif (action.type === setConfigurationFlags) {\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\tconfiguration: {\r\n\t\t\t\t...state.configuration,\r\n\t\t\t\tconfigurationPublished: action.published !== undefined ? action.published : state.configuration.configurationPublished,\r\n\t\t\t\tcanEdit: action.canEdit !== undefined ? action.canEdit : state.configuration.canEdit,\r\n\t\t\t\tinApproval: action.inApproval !== undefined ? action.inApproval : state.configuration.inApproval,\r\n\t\t\t\tloading: action.loading !== undefined ? action.loading : state.configuration.loading,\r\n\t\t\t\thasDocument: action.hasDocument !== undefined ? action.hasDocument : state.configuration.hasDocument,\r\n\t\t\t\tposition: action.position !== undefined ? action.position : state.configuration.position,\r\n\t\t\t\tloadingImage: action.loadingImage !== undefined ? action.loadingImage : state.configuration.loadingImage,\r\n\t\t\t},\r\n\t\t};\r\n\t}\r\n\tif (action.type === setConfigurationLoading) {\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\tconfiguration: { ...state.configuration, loading: action.loading },\r\n\t\t};\r\n\t}\r\n\tif (action.type === setDocument) {\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\tdocument: {\r\n\t\t\t\t...state.document,\r\n\t\t\t\tdocumentId: action.documentId,\r\n\t\t\t\tdocumentConfigurations: action.documentConfigurations,\r\n\t\t\t\tinitialDocumentId: action.initialDocumentId,\r\n\t\t\t\tname: action.name,\r\n\t\t\t\tproject: action.project,\r\n\t\t\t\taddingMode: false,\r\n\t\t\t\tdisableEdit: action.disableEdit !== undefined ? action.disableEdit : state.document.disableEdit,\r\n\t\t\t\tdocumentStatusId: action.documentStatusId !== undefined ? action.documentStatusId : state.document.documentStatusId,\r\n\t\t\t\tcurrency: action.currency != null ? action.currency : 'EUR',\r\n\t\t\t},\r\n\t\t};\r\n\t}\r\n\tif (action.type === setDocumentAddingMode) {\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\tdocument: {\r\n\t\t\t\t...state.document,\r\n\t\t\t\taddingMode: action.adding,\r\n\t\t\t},\r\n\t\t};\r\n\t}\r\n\tif (action.type === setImage) {\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\tconfiguration: { ...state.configuration, image: action.image, loadingImage: false },\r\n\t\t};\r\n\t}\r\n\tif (action.type === setError) {\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\terror: { title: action.title, message: action.message },\r\n\t\t};\r\n\t}\r\n\tif (action.type === setBrand) {\r\n\t\tconst theme = {\r\n\t\t\tlogo: action.logo,\r\n\t\t\tlogotype: action.logotype,\r\n\t\t\ttitle: action.title,\r\n\t\t\theader: action.header,\r\n\t\t\tcolor: action.color,\r\n\t\t\theaderFontColor: action.headerFontColor,\r\n\t\t\tbuttonColor: action.buttonColor,\r\n\t\t\tbuttonFontColor: action.buttonFontColor,\r\n\t\t};\r\n\t\tlocalStorage.setItem('theme', JSON.stringify(theme));\r\n\t\tlocalStorage.setItem('brandPartnerId', action.brandPartnerId);\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\ttheme: theme,\r\n\t\t\tbrandPartnerId: action.brandPartnerId,\r\n\t\t};\r\n\t}\r\n\r\n\tif (action.type === setNumberOfBrands) {\r\n\t\treturn { ...state, numberOfBrands: action.numberOfBrands };\r\n\t}\r\n\r\n\tif (action.type === setLanguage) {\r\n\t\tlocalStorage.setItem('userLanguage', action.language);\r\n\t\treturn { ...state, language: action.language };\r\n\t}\r\n\r\n\tif (action.type === setFooter) {\r\n\t\tconst footer = {\r\n\t\t\tfooter1text: action.text1,\r\n\t\t\tfooter1url: action.url1,\r\n\t\t\tfooter2text: action.text2,\r\n\t\t\tfooter2url: action.url2,\r\n\t\t\tfooter3text: action.text3,\r\n\t\t\tfooter3url: action.url3,\r\n\t\t};\r\n\t\tlocalStorage.setItem('footer', JSON.stringify(footer));\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\tfooter: footer,\r\n\t\t};\r\n\t}\r\n\tif (action.type === setUser) {\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\tuser: {\r\n\t\t\t\temail: action.email,\r\n\t\t\t\tname: action.name,\r\n\t\t\t\ttype: action.userType,\r\n\t\t\t\troles: action.roles,\r\n\t\t\t},\r\n\t\t};\r\n\t}\r\n\tif (action.type === destroySession) {\r\n\t\tlocalStorage.removeItem('userToken');\r\n\t\tlocalStorage.removeItem('userRole');\r\n\t\tlocalStorage.removeItem('isUserOEM');\r\n\t\tlocalStorage.removeItem('isUserOEMAdmin');\r\n\t\tlocalStorage.removeItem('isParentPartner');\r\n\t\tlocalStorage.removeItem('theme');\r\n\t\tlocalStorage.removeItem('brandPartnerId');\r\n\t\treturn initialState;\r\n\t}\r\n\tif (action.type === setSearch) {\r\n\t\treturn {\r\n\t\t\t...state,\r\n\t\t\tsearch: {\r\n\t\t\t\tselectedCategories: action.selectedCategories,\r\n\t\t\t\tquery: action.query,\r\n\t\t\t},\r\n\t\t};\r\n\t}\r\n\tif (action.type === setCartOpen) {\r\n\t\treturn { ...state, navCartOpen: action.open };\r\n\t}\r\n\tif (action.type === setInquiryDialogOpen) {\r\n\t\treturn { ...state, inquiryDialogOpen: action.open };\r\n\t}\r\n\tif (action.type === setShowMessage) {\r\n\t\treturn { ...state, showMessage: { show: action.show, title: action.title, message: action.message } };\r\n\t}\r\n\tif (action.type === setCartAddingDisabled) {\r\n\t\treturn { ...state, cartAddingDisabled: action.disabled };\r\n\t}\r\n\tif (action.type === setBrands) {\r\n\t\treturn { ...state, brands: action.brands };\r\n\t}\r\n\treturn state;\r\n};\r\n","export default __webpack_public_path__ + \"static/media/loading.639a72af.gif\";","import React from 'react';\r\nimport { Button as ReactStrapButton } from 'reactstrap';\r\nimport loadingImage from '../images/loading.gif';\r\nimport Helper from '../Helper';\r\n\r\ninterface IProps {\r\n\tonClick?(): void;\r\n\tclassName?: string;\r\n\tstyle?: any;\r\n\tdisabled?: boolean;\r\n\tenabled?: string;\r\n\tcolor?: string;\r\n\ttheme?: any;\r\n\tsaved?: boolean;\r\n\tisNarrow?: boolean;\r\n\tloading?: boolean;\r\n\tsaving?: boolean;\r\n\tchildren?: any;\r\n}\r\nconst Button: React.FunctionComponent = (props) => {\r\n\tlet disabled = props.disabled;\r\n\tif (props.saved || props.loading || props.saving) {\r\n\t\tdisabled = true;\r\n\t}\r\n\tlet styles = {};\r\n\tif (props.color !== 'none' && props.color !== 'gray' && props.color !== 'selector') {\r\n\t\tif (props.style) styles = props.style;\r\n\t\telse styles = { backgroundColor: Helper.themeButtonColor(), color: Helper.themeButtonFontColor() };\r\n\t}\r\n\treturn (\r\n\t\t\r\n\t\t\t{props.children}\r\n\t\t\t{(props.loading || props.saving) && !props.saved ? {'Loading...'} : null}\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default Button;\r\n","import React from 'react';\r\nimport { Row, Col, Label, Input, FormGroup } from 'reactstrap';\r\nimport './Configurator.css';\r\nimport locale from '../Locale';\r\nimport Button from './Button';\r\nimport Helper from '../Helper';\r\n\r\ninterface IProps {\r\n\tsetUserContactData(contactData: any): void;\r\n\tcontact: any;\r\n}\r\n\r\ninterface IState {\r\n\tAddressing: { value: string; validate: string };\r\n\tAddressingD: { value: string; validate: string };\r\n\tAddressingR: { value: string; validate: string };\r\n\tFirstName: { value: string; validate: string };\r\n\tFirstNameD: { value: string; validate: string };\r\n\tFirstNameR: { value: string; validate: string };\r\n\tLastName: { value: string; validate: string };\r\n\tLastNameD: { value: string; validate: string };\r\n\tLastNameR: { value: string; validate: string };\r\n\tEmail: { value: string; validate: string };\r\n\tTelephone: { value: string; validate: string };\r\n\tTelephoneD: { value: string; validate: string };\r\n\tAddress: { value: string; validate: string };\r\n\tAddressD: { value: string; validate: string };\r\n\tAddressR: { value: string; validate: string };\r\n\tCity: { value: string; validate: string };\r\n\tCityD: { value: string; validate: string };\r\n\tCityR: { value: string; validate: string };\r\n\tZip: { value: string; validate: string };\r\n\tZipD: { value: string; validate: string };\r\n\tZipR: { value: string; validate: string };\r\n\tCountryId: string;\r\n\tCountryIdD: string;\r\n\tCountryIdR: string;\r\n\tCountries: any[];\r\n\tCompanyName: { value: string; validate: string };\r\n\tCompanyNameD: { value: string; validate: string };\r\n\tCompanyNameR: { value: string; validate: string };\r\n\tCompanyRegistration: { value: string; validate: string };\r\n\tCompanyRegistrationD: { value: string; validate: string };\r\n\tCompanyRegistrationR: { value: string; validate: string };\r\n\tCompanyVAT: { value: string; validate: string };\r\n\tCompanyVATD: { value: string; validate: string };\r\n\tCompanyVATR: { value: string; validate: string };\r\n\tMarketing: boolean;\r\n\tNotifications: boolean;\r\n\tPersonalData: boolean;\r\n\tDeliveryAddress: boolean;\r\n\tReceiptAddress: boolean;\r\n\tShowConsents: boolean;\r\n\tSaveMessage: string;\r\n}\r\n\r\nexport default class Inquiry extends React.Component {\r\n\tprivate timeout: any;\r\n\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.timeout = 0;\r\n\r\n\t\tthis.state = {\r\n\t\t\tAddressing: { value: (this.props.contact && this.props.contact.Addressing) || '', validate: '' },\r\n\t\t\tAddressingD: { value: (this.props.contact && this.props.contact.AddressingD) || '', validate: '' },\r\n\t\t\tAddressingR: { value: (this.props.contact && this.props.contact.AddressingR) || '', validate: '' },\r\n\t\t\tFirstName: { value: (this.props.contact && this.props.contact.FirstName) || '', validate: '' },\r\n\t\t\tFirstNameD: { value: (this.props.contact && this.props.contact.FirstNameD) || '', validate: '' },\r\n\t\t\tFirstNameR: { value: (this.props.contact && this.props.contact.FirstNameR) || '', validate: '' },\r\n\t\t\tLastName: { value: (this.props.contact && this.props.contact.LastName) || '', validate: '' },\r\n\t\t\tLastNameD: { value: (this.props.contact && this.props.contact.LastNameD) || '', validate: '' },\r\n\t\t\tLastNameR: { value: (this.props.contact && this.props.contact.LastNameR) || '', validate: '' },\r\n\t\t\tEmail: { value: (this.props.contact && this.props.contact.Email) || '', validate: '' },\r\n\t\t\tTelephone: { value: (this.props.contact && this.props.contact.Telephone) || '', validate: '' },\r\n\t\t\tTelephoneD: { value: (this.props.contact && this.props.contact.TelephoneD) || '', validate: '' },\r\n\t\t\tAddress: { value: (this.props.contact && this.props.contact.Address) || '', validate: '' },\r\n\t\t\tAddressD: { value: (this.props.contact && this.props.contact.AddressD) || '', validate: '' },\r\n\t\t\tAddressR: { value: (this.props.contact && this.props.contact.AddressR) || '', validate: '' },\r\n\t\t\tCity: { value: (this.props.contact && this.props.contact.City) || '', validate: '' },\r\n\t\t\tCityD: { value: (this.props.contact && this.props.contact.CityD) || '', validate: '' },\r\n\t\t\tCityR: { value: (this.props.contact && this.props.contact.CityR) || '', validate: '' },\r\n\t\t\tZip: { value: (this.props.contact && this.props.contact.Zip) || '', validate: '' },\r\n\t\t\tZipD: { value: (this.props.contact && this.props.contact.ZipD) || '', validate: '' },\r\n\t\t\tZipR: { value: (this.props.contact && this.props.contact.ZipR) || '', validate: '' },\r\n\t\t\tCountryId: (this.props.contact && this.props.contact.CountryId) || '',\r\n\t\t\tCountryIdD: (this.props.contact && this.props.contact.CountryIdD) || '',\r\n\t\t\tCountryIdR: (this.props.contact && this.props.contact.CountryIdR) || '',\r\n\t\t\tCountries: [],\r\n\t\t\tCompanyName: { value: (this.props.contact && this.props.contact.CompanyName) || '', validate: '' },\r\n\t\t\tCompanyNameD: { value: (this.props.contact && this.props.contact.CompanyNameD) || '', validate: '' },\r\n\t\t\tCompanyNameR: { value: (this.props.contact && this.props.contact.CompanyNameR) || '', validate: '' },\r\n\t\t\tCompanyRegistration: { value: (this.props.contact && this.props.contact.CompanyRegistration) || '', validate: '' },\r\n\t\t\tCompanyRegistrationD: { value: (this.props.contact && this.props.contact.CompanyRegistrationD) || '', validate: '' },\r\n\t\t\tCompanyRegistrationR: { value: (this.props.contact && this.props.contact.CompanyRegistrationR) || '', validate: '' },\r\n\t\t\tCompanyVAT: { value: (this.props.contact && this.props.contact.CompanyVAT) || '', validate: '' },\r\n\t\t\tCompanyVATD: { value: (this.props.contact && this.props.contact.CompanyVATD) || '', validate: '' },\r\n\t\t\tCompanyVATR: { value: (this.props.contact && this.props.contact.CompanyVATR) || '', validate: '' },\r\n\t\t\tMarketing: false,\r\n\t\t\tNotifications: false,\r\n\t\t\tPersonalData: false,\r\n\t\t\tDeliveryAddress: false,\r\n\t\t\tReceiptAddress: false,\r\n\t\t\tShowConsents: true,\r\n\t\t\tSaveMessage: '',\r\n\t\t};\r\n\t}\r\n\r\n\tcomponentDidMount() {\r\n\t\tHelper.getData('/selection/countrylist')\r\n\t\t\t.then((data: any) => {\r\n\t\t\t\tlet countriesFromApi = data\r\n\t\t\t\t\t.map((country: any) => {\r\n\t\t\t\t\t\treturn { value: country.CountryId, display: Helper.getLocalizedName(country.Name) };\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.sort((a: any, b: any) => a.display.localeCompare(b.display));\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\tCountries: [\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tvalue: '',\r\n\t\t\t\t\t\t\tdisplay: locale.selectCountry,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t].concat(countriesFromApi),\r\n\t\t\t\t});\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\r\n\t\tHelper.getData('/cart/settings?brandPartnerId=' + Helper.brandPartnerId())\r\n\t\t\t.then((data: any) => {\r\n\t\t\t\tthis.setState({ ShowConsents: data.ShowConsents });\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\r\n\tvalidateEmail(e: any) {\r\n\t\tlet state = this.state;\r\n\t\tconst emailRex =\r\n\t\t\t/^(([^<>()[\\]\\\\.,;:\\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\t\tlet { validate } = state.Email;\r\n\t\tlet value = e.target.value;\r\n\t\tif (this.timeout) clearTimeout(this.timeout);\r\n\t\tthis.timeout = setTimeout(() => {\r\n\t\t\tif (emailRex.test(value)) {\r\n\t\t\t\tvalidate = 'has-success';\r\n\t\t\t} else {\r\n\t\t\t\tvalidate = 'has-danger';\r\n\t\t\t}\r\n\t\t\tstate.Email.validate = validate;\r\n\t\t\tthis.setState(state);\r\n\t\t}, 700);\r\n\t}\r\n\r\n\thandleChange(e: any) {\r\n\t\tconst state: any = this.state;\r\n\t\tconst { target } = e;\r\n\t\tif (target.type === 'checkbox') {\r\n\t\t\tstate[target.name] = target.checked;\r\n\t\t} else {\r\n\t\t\tstate[target.name].value = target.value;\r\n\t\t}\r\n\t\tthis.setState(state);\r\n\t}\r\n\r\n\tsetUserContactData() {\r\n\t\tconst state: IState = this.state;\r\n\t\tconst ContactData = {\r\n\t\t\tAddressing: state['Addressing'].value,\r\n\t\t\tFirstName: state['FirstName'].value,\r\n\t\t\tLastName: state['LastName'].value,\r\n\t\t\tEmail: state['Email'].value,\r\n\t\t\tTelephone: state['Telephone'].value,\r\n\t\t\tAddress: state['Address'].value,\r\n\t\t\tCity: state['City'].value,\r\n\t\t\tZip: state['Zip'].value,\r\n\t\t\tCountryId: state['CountryId'],\r\n\t\t\tCompanyName: state['CompanyName'].value,\r\n\t\t\tCompanyRegistration: state['CompanyRegistration'].value,\r\n\t\t\tCompanyVAT: state['CompanyVAT'].value,\r\n\t\t\tMarketing: state['Marketing'],\r\n\t\t\tNotifications: state['Notifications'],\r\n\t\t\tPersonalData: state['PersonalData'],\r\n\t\t};\r\n\t\tlet DeliveryData;\r\n\t\tif (state['DeliveryAddress']) {\r\n\t\t\tDeliveryData = {\r\n\t\t\t\tAddressing: state['AddressingD'].value,\r\n\t\t\t\tFirstName: state['FirstNameD'].value,\r\n\t\t\t\tLastName: state['LastNameD'].value,\r\n\t\t\t\tTelephone: state['TelephoneD'].value,\r\n\t\t\t\tAddress: state['AddressD'].value,\r\n\t\t\t\tCity: state['CityD'].value,\r\n\t\t\t\tZip: state['ZipD'].value,\r\n\t\t\t\tCountryId: state['CountryIdD'],\r\n\t\t\t\tCompanyName: state['CompanyNameD'].value,\r\n\t\t\t\tCompanyRegistration: state['CompanyRegistrationD'].value,\r\n\t\t\t\tCompanyVAT: state['CompanyVATD'].value,\r\n\t\t\t};\r\n\t\t} else {\r\n\t\t\tDeliveryData = null;\r\n\t\t}\r\n\t\tlet ReceiptData;\r\n\t\tif (state['ReceiptAddress']) {\r\n\t\t\tReceiptData = {\r\n\t\t\t\tAddressing: state['Addressing'].value,\r\n\t\t\t\tFirstName: state['FirstNameR'].value,\r\n\t\t\t\tLastName: state['LastNameR'].value,\r\n\t\t\t\tAddress: state['AddressR'].value,\r\n\t\t\t\tCity: state['CityR'].value,\r\n\t\t\t\tZip: state['ZipR'].value,\r\n\t\t\t\tCountryId: state['CountryIdR'],\r\n\t\t\t\tCompanyName: state['CompanyNameR'].value,\r\n\t\t\t\tCompanyRegistration: state['CompanyRegistrationR'].value,\r\n\t\t\t\tCompanyVAT: state['CompanyVATR'].value,\r\n\t\t\t};\r\n\t\t} else {\r\n\t\t\tReceiptData = null;\r\n\t\t}\r\n\t\tconst contactFormData = {\r\n\t\t\tContactData: ContactData,\r\n\t\t\tDeliveryAddress: state['DeliveryAddress'],\r\n\t\t\tReceiptAddress: state['ReceiptAddress'],\r\n\t\t\tDeliveryData: DeliveryData,\r\n\t\t\tReceiptData: ReceiptData,\r\n\t\t};\r\n\t\tthis.props.setUserContactData(contactFormData);\r\n\t}\r\n\r\n\trender() {\r\n\t\tconst {\r\n\t\t\tAddressing,\r\n\t\t\tAddressingD,\r\n\t\t\tAddressingR,\r\n\t\t\tEmail,\r\n\t\t\tFirstName,\r\n\t\t\tFirstNameD,\r\n\t\t\tFirstNameR,\r\n\t\t\tLastName,\r\n\t\t\tLastNameD,\r\n\t\t\tLastNameR,\r\n\t\t\tAddress,\r\n\t\t\tAddressD,\r\n\t\t\tAddressR,\r\n\t\t\tCity,\r\n\t\t\tCityD,\r\n\t\t\tCityR,\r\n\t\t\tZip,\r\n\t\t\tZipD,\r\n\t\t\tZipR,\r\n\t\t\tTelephone,\r\n\t\t\tTelephoneD,\r\n\t\t\tCompanyName,\r\n\t\t\tCompanyNameD,\r\n\t\t\tCompanyNameR,\r\n\t\t\tCompanyRegistration,\r\n\t\t\tCompanyRegistrationD,\r\n\t\t\tCompanyRegistrationR,\r\n\t\t\tCompanyVAT,\r\n\t\t\tCompanyVATD,\r\n\t\t\tCompanyVATR,\r\n\t\t} = this.state;\r\n\t\tconst disabled =\r\n\t\t\tFirstName.value === '' ||\r\n\t\t\tLastName.value === '' ||\r\n\t\t\t//Address.value === \"\" ||\r\n\t\t\tCity.value === '' ||\r\n\t\t\tZip.value === '' ||\r\n\t\t\tthis.state.CountryId === '' ||\r\n\t\t\tthis.state.CountryId === '00000000-0000-0000-0000-000000000000' ||\r\n\t\t\t//Telephone.value === \"\" ||\r\n\t\t\tEmail.value === '' ||\r\n\t\t\tEmail.validate === 'has-danger' ||\r\n\t\t\t(this.state.DeliveryAddress &&\r\n\t\t\t\t(FirstNameD.value === '' ||\r\n\t\t\t\t\tLastNameD.value === '' ||\r\n\t\t\t\t\tAddressD.value === '' ||\r\n\t\t\t\t\tCityD.value === '' ||\r\n\t\t\t\t\tZipD.value === '' ||\r\n\t\t\t\t\tthis.state.CountryIdD === '' ||\r\n\t\t\t\t\tthis.state.CountryIdD === '00000000-0000-0000-0000-000000000000' ||\r\n\t\t\t\t\tTelephoneD.value === '')) ||\r\n\t\t\t(this.state.ReceiptAddress &&\r\n\t\t\t\t(FirstNameR.value === '' ||\r\n\t\t\t\t\tLastNameR.value === '' ||\r\n\t\t\t\t\tAddressR.value === '' ||\r\n\t\t\t\t\tCityR.value === '' ||\r\n\t\t\t\t\tZipR.value === '' ||\r\n\t\t\t\t\tthis.state.CountryIdR === '' ||\r\n\t\t\t\t\tthis.state.CountryIdR === '00000000-0000-0000-0000-000000000000'));\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.validateEmail(e);\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
{locale.inquiryLegalAdd}
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
{locale.profileDeliveryTitle}
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\r\n\t\t\t\t\t\t\t\t\t

{locale.differentThenContactAddress}

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\t\t\t\t\tCountryIdD: e.target.value,\r\n\t\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t{this.state.Countries.map((Country) => (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
{locale.inquiryLegalAdd}
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
{locale.profileReceiptTitle}
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t

{locale.differentThenContactAddress}

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\t\t\t\t\tCountryIdR: e.target.value,\r\n\t\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t{this.state.Countries.map((Country) => (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
{locale.inquiryLegalAdd}
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
{locale.inquiryConsents}
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\t{locale.inquiryConsent1Title} - {locale.inquiryConsent1}\r\n\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\t{locale.inquiryConsent2Title} - {locale.inquiryConsent2}\r\n\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\t{locale.inquiryConsent3Title} - {locale.inquiryConsent3}\r\n\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t{' '}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n","import React from 'react';\r\nimport { Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';\r\nimport './Configurator.css';\r\nimport locale from '../Locale';\r\nimport Button from './Button';\r\n\r\ninterface IProps {\r\n\tmessage: string;\r\n\ttitle?: string;\r\n\tisError: boolean;\r\n\tclose?(): void;\r\n}\r\n\r\ninterface IState {\r\n\tisOpen: boolean;\r\n}\r\n\r\nexport default class Notify extends React.Component {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.state = {\r\n\t\t\tisOpen: true,\r\n\t\t};\r\n\t}\r\n\ttoggleNotifyModal() {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.isOpen = !state.isOpen;\r\n\t\tthis.setState(state);\r\n\t\t// this.props.close;\r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t this.toggleNotifyModal()} className='inquiry-popup'>\r\n\t\t\t\t this.toggleNotifyModal()}>{this.props.isError ? locale.exception : this.props.title}\r\n\t\t\t\t{this.props.message}\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n","import React from 'react';\r\nimport { Row, Col, Label, Input, FormGroup } from 'reactstrap';\r\nimport './Configurator.css';\r\nimport locale from '../Locale';\r\nimport Button from './Button';\r\nimport Helper from '../Helper';\r\nimport Loading from 'react-fullscreen-loading';\r\n\r\ninterface IProps {\r\n\tsetUserAddressData(contactFormData: any): void;\r\n\tcontact?: any;\r\n}\r\n\r\ninterface IState {\r\n\tCountries: any[];\r\n\tContactAddressName: string;\r\n\tDeliveryAddress: boolean;\r\n\tDeliveryAddressData: any;\r\n\tDeliveryAddressDataId: string;\r\n\tReceiptAddress: boolean;\r\n\tReceiptAddressData: any;\r\n\tReceiptAddressDataId: string;\r\n\tSaveMessage: string;\r\n\tloading: boolean;\r\n}\r\n\r\nexport default class InquiryUser extends React.Component {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.state = {\r\n\t\t\tCountries: [],\r\n\t\t\tContactAddressName: (this.props.contact && this.props.contact.CountryId) || '',\r\n\t\t\tDeliveryAddress: false,\r\n\t\t\tDeliveryAddressData: [],\r\n\t\t\tDeliveryAddressDataId: (this.props.contact && this.props.contact.CountryId) || '',\r\n\t\t\tReceiptAddress: false,\r\n\t\t\tReceiptAddressData: [],\r\n\t\t\tReceiptAddressDataId: (this.props.contact && this.props.contact.CountryId) || '',\r\n\t\t\tSaveMessage: '',\r\n\t\t\tloading: false,\r\n\t\t};\r\n\t}\r\n\r\n\tgetDeliveryAddressData(deliveryAddressData: any) {\r\n\t\tlet state: IState = this.state;\r\n\t\tlet deliveryAddress: any = [];\r\n\t\tif (deliveryAddressData.length > 0) {\r\n\t\t\tdeliveryAddressData.forEach((item: any) => {\r\n\t\t\t\tdeliveryAddress.push({\r\n\t\t\t\t\tid: item.UserAddressId,\r\n\t\t\t\t\tname:\r\n\t\t\t\t\t\titem.FirstName +\r\n\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\titem.LastName +\r\n\t\t\t\t\t\t', ' +\r\n\t\t\t\t\t\titem.Address +\r\n\t\t\t\t\t\t', ' +\r\n\t\t\t\t\t\titem.Zip +\r\n\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\titem.City +\r\n\t\t\t\t\t\t(state.Countries.find((element) => element.value === item.CountryId) !== undefined\r\n\t\t\t\t\t\t\t? ', ' + state.Countries.find((element) => element.value === item.CountryId).code\r\n\t\t\t\t\t\t\t: '') +\r\n\t\t\t\t\t\t(item.CompanyName !== '' ? ', ' + item.CompanyName : '') +\r\n\t\t\t\t\t\t(item.Telephone !== '' ? ', ' + item.Telephone : ''),\r\n\t\t\t\t\tisDefault: item.Default,\r\n\t\t\t\t});\r\n\t\t\t\tif (item.Default) {\r\n\t\t\t\t\tstate.DeliveryAddress = true;\r\n\t\t\t\t\tstate.DeliveryAddressDataId = item.UserAddressId;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t\tstate.DeliveryAddressData = deliveryAddress;\r\n\t\tthis.setState(state);\r\n\t}\r\n\r\n\tgetReceiptAddressData(receiptAddressData: any) {\r\n\t\tlet state: IState = this.state;\r\n\t\tlet receiptAddress: any = [];\r\n\t\tif (receiptAddressData.length > 0) {\r\n\t\t\treceiptAddressData.forEach((item: any) => {\r\n\t\t\t\treceiptAddress.push({\r\n\t\t\t\t\tid: item.UserAddressId,\r\n\t\t\t\t\tname:\r\n\t\t\t\t\t\titem.FirstName +\r\n\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\titem.LastName +\r\n\t\t\t\t\t\t', ' +\r\n\t\t\t\t\t\titem.Address +\r\n\t\t\t\t\t\t', ' +\r\n\t\t\t\t\t\titem.Zip +\r\n\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\titem.City +\r\n\t\t\t\t\t\t(state.Countries.find((element) => element.value === item.CountryId) !== undefined\r\n\t\t\t\t\t\t\t? ', ' + state.Countries.find((element) => element.value === item.CountryId).code\r\n\t\t\t\t\t\t\t: '') +\r\n\t\t\t\t\t\t(item.CompanyName !== '' ? ', ' + item.CompanyName : '') +\r\n\t\t\t\t\t\t(item.Telephone !== '' ? ', ' + item.Telephone : ''),\r\n\t\t\t\t\tisDefault: item.Default,\r\n\t\t\t\t});\r\n\t\t\t\tif (item.Default) {\r\n\t\t\t\t\tstate.ReceiptAddress = true;\r\n\t\t\t\t\tstate.ReceiptAddressDataId = item.UserAddressId;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t\tstate.ReceiptAddressData = receiptAddress;\r\n\t\tthis.setState(state);\r\n\t}\r\n\r\n\tasync componentDidMount() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tawait this.getCountries();\r\n\t\tlet state: IState = this.state;\r\n\t\tlet url = '/account/info';\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data: any) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\tContactAddressName:\r\n\t\t\t\t\t\t\tdata.FirstName +\r\n\t\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\t\tdata.LastName +\r\n\t\t\t\t\t\t\t', ' +\r\n\t\t\t\t\t\t\tdata.Address +\r\n\t\t\t\t\t\t\t', ' +\r\n\t\t\t\t\t\t\tdata.Zip +\r\n\t\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\t\tdata.City +\r\n\t\t\t\t\t\t\t(state.Countries.find((element) => element.value === data.CountryId) !== undefined\r\n\t\t\t\t\t\t\t\t? ', ' + state.Countries.find((element) => element.value === data.CountryId).code\r\n\t\t\t\t\t\t\t\t: '') +\r\n\t\t\t\t\t\t\t(data.CompanyName !== '' ? ', ' + data.CompanyName : '') +\r\n\t\t\t\t\t\t\t(data.Telephone !== '' ? ', ' + data.Telephone : ''),\r\n\t\t\t\t\t});\r\n\t\t\t\t\tif (data.DeliveryAddress && data.DeliveryAddress.length > 0) {\r\n\t\t\t\t\t\tthis.getDeliveryAddressData(data.DeliveryAddress);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (data.ReceiptAddress && data.ReceiptAddress.length > 0) {\r\n\t\t\t\t\t\tthis.getReceiptAddressData(data.ReceiptAddress);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\r\n\tasync getCountries() {\r\n\t\tconst data: any = await Helper.getData('/selection/countrylist');\r\n\t\tlet countriesFromApi = data\r\n\t\t\t.map((country: any) => {\r\n\t\t\t\treturn { value: country.CountryId, code: country.Code, display: Helper.getLocalizedName(country.Name) };\r\n\t\t\t})\r\n\t\t\t.sort((a: any, b: any) => a.display.localeCompare(b.display));\r\n\t\tthis.setState({\r\n\t\t\tCountries: [\r\n\t\t\t\t{\r\n\t\t\t\t\tvalue: '',\r\n\t\t\t\t\tcode: '',\r\n\t\t\t\t\tdisplay: locale.selectCountry,\r\n\t\t\t\t},\r\n\t\t\t].concat(countriesFromApi),\r\n\t\t});\r\n\t}\r\n\r\n\thandleCheckbox(e: any) {\r\n\t\tconst state: IState = this.state;\r\n\t\tconst { target } = e;\r\n\t\tif (target.name === 'DeliveryAddress') {\r\n\t\t\tstate.DeliveryAddress = !state.DeliveryAddress;\r\n\t\t} else if (target.name === 'ReceiptAddress') {\r\n\t\t\tstate.ReceiptAddress = !state.ReceiptAddress;\r\n\t\t}\r\n\t\tthis.setState(state);\r\n\t}\r\n\r\n\tsetUserContactData() {\r\n\t\tconst state: IState = this.state;\r\n\t\tlet contactFormData: any = null;\r\n\t\tcontactFormData = {\r\n\t\t\tUserAddress: true,\r\n\t\t\tDeliveryAddress: state['DeliveryAddress'],\r\n\t\t\tDeliveryId: state['DeliveryAddressDataId'],\r\n\t\t\tReceiptAddress: state['ReceiptAddress'],\r\n\t\t\tReceiptId: state['ReceiptAddressDataId'],\r\n\t\t};\r\n\t\tthis.props.setUserAddressData(contactFormData);\r\n\t}\r\n\r\n\topenProfile() {\r\n\t\twindow.location.href = process.env.REACT_APP_ROOT_PATH + '/Profile';\r\n\t}\r\n\r\n\trender() {\r\n\t\tconst { ContactAddressName } = this.state;\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{this.state.loading ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
{locale.profileDeliveryTitle}
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t this.handleCheckbox(e)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleCheckbox(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t

{locale.differentThenContactAddress}

\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t this.setState({ DeliveryAddressDataId: e.target.value })}\r\n\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t{this.state.DeliveryAddressData.map((Delivery: any) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
{locale.profileReceiptTitle}
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleCheckbox(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleCheckbox(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t

{locale.differentThenContactAddress}

\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t this.setState({ ReceiptAddressDataId: e.target.value })}\r\n\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t{this.state.ReceiptAddressData.map((Receipt: any) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n","import React, { Fragment } from 'react';\r\nimport { Row, Col, Label, Modal, ModalHeader, ModalBody } from 'reactstrap';\r\nimport './Cart.css';\r\nimport NumericInput from 'react-numeric-input';\r\nimport locale from '../Locale';\r\nimport Helper from '../Helper';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../store/Configurator';\r\nimport Inquiry from './Inquiry';\r\nimport Notify from './Notify';\r\nimport Button from './Button';\r\nimport InquiryUser from './InquiryUser';\r\nimport { history } from '../index';\r\nimport Loading from 'react-fullscreen-loading';\r\n\r\ninterface IProps {\r\n\tanonymousToken?: string;\r\n\tconfiguration?: any;\r\n\tcontact?: string;\r\n\tcartOpen: boolean;\r\n\tinquiryDialogOpen?: boolean;\r\n\tcloseCart(): void;\r\n\ttheme?: any;\r\n\tuser?: any;\r\n\tshowMessage?: any;\r\n}\r\ninterface IState {\r\n\tconfigurations: any;\r\n\tnotify: any;\r\n\tinquiryModal: boolean;\r\n\tinquiryCustomerModal: boolean;\r\n\tinquiryUserModal: boolean;\r\n\r\n\tloading: boolean;\r\n}\r\nclass Cart extends React.Component {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\tnotify: { open: false, title: '', message: '', isError: false },\r\n\t\t\tconfigurations: [],\r\n\t\t\tinquiryModal: false,\r\n\t\t\tinquiryCustomerModal: false,\r\n\t\t\tinquiryUserModal: false,\r\n\t\t\tloading: false,\r\n\t\t};\r\n\t}\r\n\tcomponentDidMount() {\r\n\t\tif (this.props.cartOpen) {\r\n\t\t\tthis.cart();\r\n\t\t}\r\n\t\tif (this.props.inquiryDialogOpen) {\r\n\t\t\tthis.toggleInquiryModal();\r\n\t\t}\r\n\t}\r\n\tcomponentDidUpdate(nextProps: any) {\r\n\t\tif ((nextProps.user !== this.props.user || nextProps.configuration !== this.props.configuration) && this.props.cartOpen) {\r\n\t\t\tthis.cart();\r\n\t\t}\r\n\t}\r\n\tremoveConfiguration(configurationId: string) {\r\n\t\tconst state: IState = this.state;\r\n\r\n\t\tlet url = '/cart/' + configurationId;\r\n\t\tif (this.props.anonymousToken && !localStorage.getItem('userToken')) {\r\n\t\t\turl += '/' + this.props.anonymousToken;\r\n\t\t}\r\n\r\n\t\tHelper.deleteData(url).then((data) => {\r\n\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t}\r\n\t\t\tthis.setState(state);\r\n\t\t\tthis.cart();\r\n\t\t});\r\n\t\t(this.props as any).setConfigurationPublished(false);\r\n\t}\r\n\tconfigurationData(configData: any): any {\r\n\t\tlet configurations: any = [];\r\n\t\tif (configData && configData.length > 0 && Array.isArray(configData)) {\r\n\t\t\tconfigData.forEach((item: any) => {\r\n\t\t\t\tconfigurations.push({\r\n\t\t\t\t\tid: item.ConfigurationId,\r\n\t\t\t\t\tmodelName: Helper.getLocalizedName(item.ConfigurationName),\r\n\t\t\t\t\timage: item.Image,\r\n\t\t\t\t\tquantity: item.Quantity === 0 ? 1 : item.Quantity,\r\n\t\t\t\t\tprice: item.ConfigurationPrice\r\n\t\t\t\t\t\t? item.ConfigurationPrice.toLocaleString('de-DE', {\r\n\t\t\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\t\t\tcurrency: 'EUR',\r\n\t\t\t\t\t\t })\r\n\t\t\t\t\t\t: '',\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t}\r\n\t\treturn configurations;\r\n\t}\r\n\tcart() {\r\n\t\tconst state: IState = this.state;\r\n\t\tif (!this.props.anonymousToken && !localStorage.getItem('userToken')) {\r\n\t\t\tstate.configurations = [];\r\n\t\t\tstate.loading = false;\r\n\t\t\tthis.setState(state);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.setState({ loading: true });\r\n\t\tlet url = '/cart/user';\r\n\t\tif (this.props.anonymousToken && !localStorage.getItem('userToken')) {\r\n\t\t\turl = '/cart/' + this.props.anonymousToken;\r\n\t\t}\r\n\t\tHelper.getData(url).then((data) => {\r\n\t\t\tlet items = this.configurationData(data);\r\n\t\t\tstate.configurations = items;\r\n\t\t\tstate.loading = false;\r\n\t\t\tthis.setState(state);\r\n\t\t});\r\n\t}\r\n\tsetConfiguration(configurationId: string) {\r\n\t\tthis.props.closeCart();\r\n\t\t(this.props as any).buildCategories(configurationId);\r\n\t\tif (window.location.pathname.indexOf('/configurator/configuration') === -1) {\r\n\t\t\thistory.push(process.env.REACT_APP_ROOT_PATH + '/configurator/configuration');\r\n\t\t}\r\n\t}\r\n\tcreateSalesDocument(contactData: any) {\r\n\t\tconst state: IState = this.state;\r\n\t\tconst urlConfiguration = '/cart/inquiry';\r\n\t\tlet configurationsBody: any[] = [];\r\n\t\tfor (let i = 0; i < state.configurations.length; i++) {\r\n\t\t\tconfigurationsBody.push(state.configurations[i].id);\r\n\t\t}\r\n\t\tconst body = {\r\n\t\t\tUserTokenId: this.props.anonymousToken,\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tConfigurations: configurationsBody,\r\n\t\t\tConfigurationContact: contactData,\r\n\t\t\tWebUrl: window.location.protocol + '//' + window.location.host + process.env.REACT_APP_ROOT_PATH + '/configurator/confirmation',\r\n\t\t\tLang: Helper.userLang(),\r\n\t\t};\r\n\t\tHelper.postData(urlConfiguration, JSON.stringify(body))\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\tif (data && data.Message) {\r\n\t\t\t\t\t\tstate.notify.message = data.Message;\r\n\t\t\t\t\t\tstate.notify.title = locale.exception;\r\n\t\t\t\t\t\tstate.notify.open = true;\r\n\t\t\t\t\t\tthis.setState(state);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tstate.configurations = [];\r\n\t\t\t\t\t\t(this.props as any).setConfigurationPublished(false);\r\n\t\t\t\t\t\t(this.props as any).clearConfiguration();\r\n\r\n\t\t\t\t\t\tlet contactName = '';\r\n\t\t\t\t\t\tstate.notify.title = locale.cartInquirySent;\r\n\t\t\t\t\t\tif (Helper.userAdmin()) {\r\n\t\t\t\t\t\t\tstate.notify.message = locale.cartInquirySentText3;\r\n\t\t\t\t\t\t\tstate.notify.title = locale.cartInquirySentText3;\r\n\t\t\t\t\t\t} else if (contactData && contactData.Name && contactData.Name.indexOf(' ') > 0) {\r\n\t\t\t\t\t\t\tcontactName = contactData.Name.split(' ')[0];\r\n\t\t\t\t\t\t\tstate.notify.message = contactName + locale.cartInquirySentText;\r\n\t\t\t\t\t\t} else if (this.props.user && this.props.user.name) {\r\n\t\t\t\t\t\t\tstate.notify.message = this.props.user.name + locale.cartInquirySentText;\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tstate.notify.message = locale.cartInquirySentText2;\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t(this.props as any).setShowMessage(true, state.notify.title, state.notify.message);\r\n\r\n\t\t\t\t\t\tif (Helper.userInstaller()) {\r\n\t\t\t\t\t\t\twindow.location.href = process.env.REACT_APP_ROOT_PATH + '/admin/allProjects';\r\n\t\t\t\t\t\t} else if (Helper.userEditor()) {\r\n\t\t\t\t\t\t\twindow.location.href = process.env.REACT_APP_ROOT_PATH + '/admin/myProjects';\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\twindow.location.href = process.env.REACT_APP_ROOT_PATH + '/configurator/selection';\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tstate.notify.message = error.message;\r\n\t\t\t\tstate.notify.isError = true;\r\n\t\t\t\tstate.notify.open = true;\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t\tstate.inquiryModal = false;\r\n\t\t\t\tstate.inquiryCustomerModal = false;\r\n\t\t\t\tstate.inquiryUserModal = false;\r\n\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t});\r\n\t}\r\n\r\n\topenConfiguration(configurationId: string) {\r\n\t\tthis.setConfiguration(configurationId);\r\n\t}\r\n\ttoggleInquiryModal() {\r\n\t\tif (localStorage.getItem('userToken')) {\r\n\t\t\tthis.toggleInquiryUserModal();\r\n\t\t} else {\r\n\t\t\tconst state: IState = this.state;\r\n\t\t\tstate.inquiryModal = !state.inquiryModal;\r\n\t\t\tthis.setState(state);\r\n\t\t}\r\n\t}\r\n\ttoggleInquiryUserModal() {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.inquiryUserModal = !state.inquiryUserModal;\r\n\t\tthis.setState(state);\r\n\t}\r\n\tsetQuantity(id: string, value: number) {\r\n\t\tthis.setState({ loading: true });\r\n\r\n\t\tlet url = '/cart/' + id;\r\n\t\tif (this.props.anonymousToken && !localStorage.getItem('userToken')) {\r\n\t\t\turl += '/' + this.props.anonymousToken;\r\n\t\t}\r\n\r\n\t\tconst body = {\r\n\t\t\tQuantity: value,\r\n\t\t};\r\n\t\tHelper.putData(url, JSON.stringify(body)).then((data) => {\r\n\t\t\tif (data) {\r\n\t\t\t\tthis.cart();\r\n\t\t\t}\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t}\r\n\tsetUserContactData(contactData: any) {\r\n\t\tif (\r\n\t\t\tcontactData &&\r\n\t\t\tcontactData.ContactData.Email &&\r\n\t\t\tcontactData.ContactData.FirstName &&\r\n\t\t\tcontactData.ContactData.LastName &&\r\n\t\t\tcontactData.ContactData.Email !== '' &&\r\n\t\t\tcontactData.ContactData.FirstName !== '' &&\r\n\t\t\tcontactData.ContactData.LastName !== ''\r\n\t\t) {\r\n\t\t\t(this.props as any).setContact(contactData);\r\n\t\t\tthis.toggleInquiryModal();\r\n\t\t\tthis.createSalesDocument(contactData);\r\n\t\t}\r\n\t}\r\n\tsetUserAddressData(contactData: any) {\r\n\t\t(this.props as any).setContact(contactData);\r\n\t\tthis.toggleInquiryModal();\r\n\t\tthis.createSalesDocument(contactData);\r\n\t}\r\n\trender() {\r\n\t\tlet inputColor = this.props.theme && this.props.theme.color ? this.props.theme.color : '#86A33C';\r\n\t\tlet r = parseInt(inputColor.slice(1, 3), 16),\r\n\t\t\tg = parseInt(inputColor.slice(3, 5), 16),\r\n\t\t\tb = parseInt(inputColor.slice(5, 7), 16);\r\n\t\tinputColor = 'rgba(' + r + ', ' + g + ', ' + b + ', ' + 0.2 + ')';\r\n\r\n\t\tconst { configurations } = this.state;\r\n\t\tconst configurationList = configurations.map((item: any, i: number) => {\r\n\t\t\tlet selectedConfigurationClassName = '';\r\n\r\n\t\t\tif (item.id === this.props.configuration.configurationId) {\r\n\t\t\t\tselectedConfigurationClassName = ' cart-selected';\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{item.modelName}\r\n\t\t\t\t\t\t{Helper.userLoggedIn() ? (\r\n\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t{item.price}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t this.setQuantity(item.id, value)}\r\n\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t this.setQuantity(item.id, value)}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{item.modelName}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{item.price}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t this.setQuantity(item.id, value)} />\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t this.openConfiguration(item.id)}\r\n\t\t\t\t\t\t\t\tcolor='secondary'\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t{locale.select}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t this.removeConfiguration(item.id)}\r\n\t\t\t\t\t\t\t\tcolor='secondary'\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t{locale.cartRemove}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t});\r\n\t\tconst hasResults: boolean = configurationList && configurationList.length;\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{this.state.notify.open ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : null}\r\n\r\n\t\t\t\t this.toggleInquiryModal()} className='inquiry-popup'>\r\n\t\t\t\t\t this.toggleInquiryModal()}>{locale.contactTitle}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t this.setUserContactData(contactData)} />\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t this.toggleInquiryUserModal()} className='inquiry-popup'>\r\n\t\t\t\t\t this.toggleInquiryUserModal()}>{locale.contactTitleSales}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t this.setUserAddressData(contactData)} />\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t{this.state.loading ? (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t) : (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{Helper.userLoggedIn() ? (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
{hasResults ? configurationList :
{locale.cartEmpty}
}
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{hasResults ? (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t this.toggleInquiryModal()}\r\n\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.cartSendInquiry}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t this.props.closeCart()}\r\n\t\t\t\t\t\t\t\t\t\tcolor='secondary'\r\n\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t{locale.close}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(Cart);\r\n","import React from 'react';\r\nimport { DropdownItem } from 'reactstrap';\r\nimport { connect } from 'react-redux';\r\nimport { bindActionCreators } from 'redux';\r\nimport { actionCreators } from '../store/Configurator';\r\nimport Helper from '../Helper';\r\nimport locale from '../Locale';\r\n\r\ninterface IProps {\r\n\tbrands?: any[];\r\n\ttoggleConfirmationModal(): void;\r\n}\r\ninterface IState {\r\n\tbrands: any[];\r\n}\r\nclass Brands extends React.Component {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\tbrands: this.props.brands || [],\r\n\t\t};\r\n\t}\r\n\tsetBrand(i: number) {\r\n\t\tconst state = this.state;\r\n\t\tconst theme = {\r\n\t\t\tlogo: state.brands[i].style.logo,\r\n\t\t\tlogotype: state.brands[i].style.logotype,\r\n\t\t\ttitle: state.brands[i].brandName,\r\n\t\t\theader: state.brands[i].style.title,\r\n\t\t\tcolor: state.brands[i].style.color,\r\n\t\t\theaderFontColor: state.brands[i].style.headerFontColor,\r\n\t\t\tbrandPartnerId: state.brands[i].brandPartnerId,\r\n\t\t\tbuttonColor: state.brands[i].style.buttonColor,\r\n\t\t\tbuttonFontColor: state.brands[i].style.buttonFontColor,\r\n\t\t};\r\n\t\tlocalStorage.setItem('selectedBrand', JSON.stringify(theme));\r\n\t\tthis.props.toggleConfirmationModal();\r\n\t}\r\n\r\n\tcomponentDidMount() {\r\n\t\tif (!Helper.userAdmin() && !Helper.userInstaller()) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst state: IState = this.state;\r\n\r\n\t\tif (this.state.brands.length === 0) {\r\n\t\t\tconst url = '/brand';\r\n\t\t\tHelper.getData(url)\r\n\t\t\t\t.then((data) => {\r\n\t\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\t\t\tthis.setState(state);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tif (data && data.length > 0) {\r\n\t\t\t\t\t\t\tstate.brands = data.map((item: any) => ({\r\n\t\t\t\t\t\t\t\tbrandId: item.BrandId,\r\n\t\t\t\t\t\t\t\tbrandPartnerId: item.BrandPartnerId,\r\n\t\t\t\t\t\t\t\tbrandName: Helper.getLocalizedName(item.BrandName),\r\n\t\t\t\t\t\t\t\tstyle: {\r\n\t\t\t\t\t\t\t\t\tcolor: item.Style.BackgroundColor,\r\n\t\t\t\t\t\t\t\t\theaderFontColor: item.Style.HeaderFontColor,\r\n\t\t\t\t\t\t\t\t\tbuttonColor: item.Style.ButtonColor,\r\n\t\t\t\t\t\t\t\t\tbuttonFontColor: item.Style.ButtonFontColor,\r\n\t\t\t\t\t\t\t\t\tlogo: item.Style.HeaderLogo,\r\n\t\t\t\t\t\t\t\t\tlogotype: item.Style.HeaderLogotype,\r\n\t\t\t\t\t\t\t\t\ttitle: Helper.getLocalizedName(item.Style.HeaderText),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t}));\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t(this.props as any).setBrands(state.brands);\r\n\t\t\t\t\t\tthis.setState(state);\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.catch((error) => {\r\n\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t});\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst items = this.state.brands.map((item: any, i: number) => (\r\n\t\t\t this.setBrand(i)}>\r\n\t\t\t\t{item.brandName}\r\n\t\t\t\r\n\t\t));\r\n\t\treturn items;\r\n\t}\r\n}\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(Brands);\r\n","export default __webpack_public_path__ + \"static/media/logo_Varialis.7c171269.png\";","import React, { Fragment } from \"react\";\r\nimport { DropdownItem } from \"reactstrap\";\r\nimport { connect } from \"react-redux\";\r\nimport { bindActionCreators } from \"redux\";\r\nimport { actionCreators } from \"../store/Configurator\";\r\n\r\ninterface IProps {\r\n toggleConfirmationModal(): void;\r\n}\r\ninterface IState {\r\n languages: any[];\r\n}\r\nclass Languages extends React.Component {\r\n constructor(props: IProps) {\r\n super(props);\r\n this.state = {\r\n languages: [\r\n { name: \"SI\", code: \"sl\" },\r\n { name: \"DE\", code: \"de\" },\r\n { name: \"EN\", code: \"en\" },\r\n { name: \"FR\", code: \"fr\" }\r\n ]\r\n };\r\n }\r\n\r\n setLanguage(code: string) {\r\n localStorage.setItem(\"selectedLang\", code);\r\n this.props.toggleConfirmationModal();\r\n }\r\n\r\n render() {\r\n const items = this.state.languages.map((item: any, i: number) => (\r\n this.setLanguage(item.code)}>\r\n {item.name}\r\n \r\n ));\r\n return {items};\r\n }\r\n}\r\nexport default connect(\r\n (state: any) => state.configurator,\r\n dispatch => bindActionCreators(actionCreators, dispatch)\r\n)(Languages);\r\n","import React from 'react';\r\nimport {\r\n\tContainer,\r\n\tNavbar,\r\n\tNavbarToggler,\r\n\tNavItem,\r\n\tNavLink,\r\n\tDropdown,\r\n\tDropdownToggle,\r\n\tDropdownMenu,\r\n\tDropdownItem,\r\n\tButton,\r\n\tUncontrolledDropdown,\r\n\tModal,\r\n\tModalHeader,\r\n\tModalBody,\r\n} from 'reactstrap';\r\nimport './NavMenu.css';\r\nimport { NavLink as RRNavLink } from 'react-router-dom';\r\nimport Cart from './Cart';\r\nimport locale from '../Locale';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../store/Configurator';\r\nimport Brands from './Brands';\r\nimport logoImage from '../images/logo.png';\r\nimport logoVarialis from '../images/logo_Varialis.png';\r\n\r\nimport Helper from '../Helper';\r\nimport Languages from './Languages';\r\nimport Loading from 'react-fullscreen-loading';\r\n\r\ninterface IProps {\r\n\tuser?: any;\r\n\ttheme?: any;\r\n\tnavCartOpen?: boolean;\r\n\tinquiryDialogOpen?: boolean;\r\n\tpart?: any;\r\n\tconfiguration?: any;\r\n\tnumberOfBrands?: number;\r\n}\r\n\r\ninterface IState {\r\n\tisOpen: boolean;\r\n\tuserOpen: boolean;\r\n\tcartOpen: boolean;\r\n\tinquiryDialogOpen: boolean;\r\n\tconfirmationModal: boolean;\r\n\tconfirmationModalTitle: string;\r\n\tconfirmationModalMessage: string;\r\n\tconfirmationModalAction: string;\r\n\tlanguage: string;\r\n\tbrand: any;\r\n\tloader: boolean;\r\n}\r\n\r\nclass NavMenu extends React.Component {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\tisOpen: false,\r\n\t\t\tuserOpen: false,\r\n\t\t\tcartOpen: false,\r\n\t\t\tinquiryDialogOpen: false,\r\n\t\t\tconfirmationModal: false,\r\n\t\t\tconfirmationModalTitle: '',\r\n\t\t\tconfirmationModalMessage: '',\r\n\t\t\tconfirmationModalAction: '',\r\n\t\t\tlanguage: '',\r\n\t\t\tbrand: null,\r\n\t\t\tloader: this.props.configuration.loader,\r\n\t\t};\r\n\t}\r\n\tcomponentDidUpdate(nextProps: any) {\r\n\t\tif (nextProps.navCartOpen !== this.props.navCartOpen && this.props.navCartOpen === true) {\r\n\t\t\tconst state: IState = this.state;\r\n\t\t\tstate.cartOpen = true;\r\n\t\t\tthis.setState(state);\r\n\t\t\t(this.props as any).setCartOpen(false);\r\n\t\t}\r\n\r\n\t\tif (nextProps.inquiryDialogOpen !== this.props.inquiryDialogOpen && this.props.inquiryDialogOpen === true) {\r\n\t\t\tconst state: IState = this.state;\r\n\t\t\tstate.cartOpen = true;\r\n\t\t\tthis.setState(state);\r\n\t\t\t(this.props as any).setCartOpen(false);\r\n\t\t}\r\n\t}\r\n\tcomponentWillReceiveProps(prevProps: any) {\r\n\t\tif (prevProps.configuration.loader !== this.props.configuration.loader) {\r\n\t\t\tthis.setState({ loader: this.props.configuration.loader });\r\n\t\t}\r\n\t}\r\n\tredirect() {\r\n\t\tthis.toggleConfirmationModal();\r\n\t\t(this.props as any).clearPart(true);\r\n\t\tsetTimeout(() => {\r\n\t\t\tif (Helper.userInstaller()) {\r\n\t\t\t\twindow.location.href = process.env.REACT_APP_ROOT_PATH + '/admin/allProjects';\r\n\t\t\t} else if (Helper.userEditor()) {\r\n\t\t\t\twindow.location.href = process.env.REACT_APP_ROOT_PATH + '/admin/myProjects';\r\n\t\t\t} else if(window.location.pathname.toLowerCase().replace(/\\/$/, '').indexOf('documents') >= 0) {\r\n\t\t\t\t// eslint-disable-next-line no-self-assign\r\n\t\t\t\twindow.location.href = window.location.href;\r\n\t\t\t}\r\n\t\t\telse{\r\n\t\t\t\twindow.location.href = process.env.REACT_APP_ROOT_PATH + '/configurator/selection';\r\n\t\t\t}\r\n\t\t}, 700);\r\n\t}\r\n\tconfirmSetLanguage(lang: string) {\r\n\t\t(this.props as any).configuration.loader = true;\r\n\t\tlocale.setLanguage(lang);\r\n\t\t(this.props as any).setLanguage(lang);\r\n\t\tthis.redirect();\r\n\t}\r\n\tconfirmSetBrand(brand: any) {\r\n\t\tlocalStorage.setItem('theme', JSON.stringify(brand));\r\n\t\tlocalStorage.setItem('brandPartnerId', brand.brandPartnerId);\r\n\t\t(this.props as any).setBrand(\r\n\t\t\tbrand.logo,\r\n\t\t\tbrand.logotype,\r\n\t\t\tbrand.title,\r\n\t\t\tbrand.header,\r\n\t\t\tbrand.color,\r\n\t\t\tbrand.headerFontColor,\r\n\t\t\tbrand.brandPartnerId,\r\n\t\t\tbrand.buttonColor,\r\n\t\t\tbrand.buttonFontColor\r\n\t\t);\r\n\t\tthis.redirect();\r\n\t}\r\n\tconfirmationAction(action: string) {\r\n\t\tif (action === 'setLanguage') {\r\n\t\t\tthis.confirmSetLanguage(this.state.language);\r\n\t\t} else if (action === 'setBrand') {\r\n\t\t\tthis.confirmSetBrand(this.state.brand);\r\n\t\t}\r\n\t}\r\n\ttoggleConfirmationModal() {\r\n\t\tconst state: any = this.state;\r\n\t\tstate.confirmationModal = !this.state.confirmationModal;\r\n\t\tconst lang = localStorage.getItem('selectedLang') ?? '';\r\n\t\tconst brand = localStorage.getItem('selectedBrand') ?? '';\r\n\t\tif (lang !== '') {\r\n\t\t\tstate.confirmationModalTitle = locale.languageChange;\r\n\t\t\tstate.confirmationModalMessage = locale.languageChangeConfirm;\r\n\t\t\tstate.confirmationModalAction = 'setLanguage';\r\n\t\t\tstate.language = lang;\r\n\t\t\tlocalStorage.removeItem('selectedLang');\r\n\t\t} else if (brand !== '') {\r\n\t\t\tstate.confirmationModalTitle = locale.brandChange;\r\n\t\t\tstate.confirmationModalMessage = locale.brandChangeConfirm;\r\n\t\t\tstate.confirmationModalAction = 'setBrand';\r\n\t\t\tstate.brand = JSON.parse(brand);\r\n\t\t\tlocalStorage.removeItem('selectedBrand');\r\n\t\t}\r\n\t\tthis.setState(state);\r\n\t}\r\n\ttoggle() {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.isOpen = !state.isOpen;\r\n\t\tthis.setState(state);\r\n\t}\r\n\tuserToggle() {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.userOpen = !state.userOpen;\r\n\t\tthis.setState(state);\r\n\t}\r\n\tcartToggle(open: boolean) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.cartOpen = open;\r\n\t\tthis.setState(state);\r\n\t}\r\n\trender() {\r\n\t\tconst pathName = window.location.pathname.toLowerCase().replace(/\\/$/, '');\r\n\t\t\r\n\t\tconst loggedIn = Helper.userLoggedIn();\r\n\t\tconst headerTitle = this.props.theme && this.props.theme.header ? this.props.theme.header : '';\r\n\t\tconst isAdmin = Helper.userAdmin();\r\n\t\tconst isInstaller = Helper.userInstaller();\r\n\t\tconst isPublicDocuments = pathName.indexOf('documents') >= 0;\r\n\r\n\t\tconst logo = this.props.theme && this.props.theme.logo ? this.props.theme.logo : logoImage;\r\n\t\tconst logotype = this.props.theme && this.props.theme.logotype ? this.props.theme.logotype : null;\r\n\t\tconst themeHeaderColor = isPublicDocuments ? '#fff' : (this.props.theme && this.props.theme.color ? this.props.theme.color : '#86A33C');\r\n\r\n\t\tconst showBrandsSelection = this.props.numberOfBrands && this.props.numberOfBrands > 1;\r\n\t\tconst { confirmationModal, confirmationModalMessage, confirmationModalTitle, confirmationModalAction } = this.state;\r\n\t\t\r\n\t\tconst buttonColor = isPublicDocuments ? '#86a33c': Helper.themeButtonColor();\r\n\t\tconst buttonFontColor = isPublicDocuments ? '#000000': Helper.themeButtonFontColor();\r\n\r\n\t\tconst fontColor = isPublicDocuments ? '#565658': (this.props.theme && this.props.theme.headerFontColor ? this.props.theme.headerFontColor : '#fff');\r\n\r\n\t\treturn this.state.loader ? (\r\n\t\t\t\r\n\t\t) : (\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\twindow.location.href =\r\n\t\t\t\t\t\t\t\t\tprocess.env.REACT_APP_ROOT_PATH + (isAdmin ? '/admin/myprojects' : isInstaller ? '/admin/allprojects' : '/configurator/selection');\r\n\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\tLogo\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{isPublicDocuments ? locale.configurator : headerTitle}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{logotype ? (\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\tLogotype\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t{(isAdmin || isInstaller) && showBrandsSelection && loggedIn ? (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{this.props.theme && this.props.theme.title ? this.props.theme.title : locale.brands}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t this.toggleConfirmationModal()} />\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{Helper.userLang().replace('sl', 'si')}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t this.toggleConfirmationModal()} />\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t{!isAdmin && !isInstaller && !isPublicDocuments ? (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t this.cartToggle(true)}>\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.cart}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t this.cartToggle(false)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tcolor='cart-close'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName='close float-right d-none d-md-block'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\taria-label='Close'\r\n\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t this.cartToggle(false)} cartOpen={this.state.cartOpen} />\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t{!isPublicDocuments ? (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t this.userToggle()}>\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{loggedIn && this.props.user && this.props.user.name ? this.props.user.name : locale.unknownUser}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.signIn}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.profile}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.signOut}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t this.toggleConfirmationModal()}>\r\n\t\t\t\t\t this.toggleConfirmationModal()}>{confirmationModalTitle}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{confirmationModalMessage}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t this.confirmationAction(confirmationModalAction)}\r\n\t\t\t\t\t\t\tstyle={{ backgroundColor: buttonColor, color: buttonFontColor }}\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t{locale.confirm}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t this.toggleConfirmationModal()}\r\n\t\t\t\t\t\t\tstyle={{ backgroundColor: buttonColor, color: buttonFontColor }}\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t{locale.cancel}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(NavMenu);\r\n","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAM0AAABLCAYAAADTVQOsAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAE5VJREFUeNrsXQlYFFe2vt0NKgQURFEBRVEQJajIokTN06hx3xM0bqOijjEvCSYYvzGaPI1xzEz0MTNqVOIuikoUEpdPFETUiICIqCACNksLhkWQsAVo+53TVPvKFhT6VnV3kvt/399VVDen/jp1z92rrsTBwX4BERY1wBJgNjBLoXj4lIgI0N8dNkOB3sBeQCegDbADUML7aT2wGFgIfAC8B7wOvAwaS0TQ1Qo2gzm6AZ2BdsCOQHOtn1cCHwELgBnAZGAcMLGl/hPhftZy9/MhMBP01BCRAdcghY0ncBDQg7uv6DtbYFutn1cBfwHmcb5LAMaAznQdz+0Dm7eBFsAUYDjYquL/RgI/Uol4/Xiya8AzwKNw8ocCORWdtxg4B9iX0hwmysvAvZzGGkptw2HzV+AEoCWltiLgD8DvQFdKM88v5v1EX90FxgJ/BEaBLqWAwYIBsgw4jctcaIBB8z1wF2gsb8a528HmCBAzu1Ag/o8vcBJwKdiIfiFofH19iYmJqWDeraurJaWlpUShyCOVlVUah58EbgAByTo6FXPoNcAVwDb871q3bk369+8PHEB69OhBunXrRqytrUn79tZEKpXBtZmQ+vp68vSpkjx+XKrWlpubS+TyB+TmzZskJSWF1NbWKsDUatB3UAdtmCv+L+fo59ClSxfi5eVFXF37kO7du5NOnWyJjU0HYm5uTiQSCeiTEqVSSaqrq0HbY1JY+AvokpP79++T+Ph48rAhrzkB/AS05TQnaIS+n0plvVrbo0ePSFlZmeZwPnAbcDvoKqMIFhfYbAZO1P4O76Gnpxdxc+tLnJx6gu86wT1tT9q1a6f+3sREBvdVSWpqap7py86Wk1u3bql9B8ewlPwM9O15hYYI2PwMvIk1gWHD3iRBQUHtKyoqHDZs2LAsLu7a8LS0e/efC5rU1DRiaWkpSvaEgZOUdJPExl4ip0+fVoGQfXA4EC7kcQsc25cLOhfNMQyEMWPGkunTp5OhQ4eqE6GuqKysBH2xJCzsOImOjj4JATZXu1huQhdWAVcD1wFlmuN2dvZk9uzZZOzYsaR3795U/svKyiRnz54lhw8frsjLy5sPuk6+KmjEvJ+Y4dy9e5ckJMST8+cjye3bd0o4HwSDNlULA2YRbLYCzTTHMCjefdePTJgwgQwYMECdsehULD59ShITE+GehpGIiJMhVVXVi0BfbSMaBsAmCL4b3r27Y/a+ffsz3NzcPM+cOS2ZM2fu33NyciZbWFi42draTgItV9RORpaXl6v0AchNVUeOhKhGjBj+C5c7N6vYBpZqtCIDAj5S5eXliqIxMzMT7adxJdurtG3j6/Ly8lQdPXpUBUEnuC60efz48adTp0758GVBo8/7iYASUbVmzRpVr149T8O5LVsQMCv5vuvTx1W1Y8cOdRoRGvn5+ap169bFcpmcto5PgMtxPzg4uAzOfywkJGTy5MmTiuH/+n755RcWEMCZYCYL6GoQJyPq6upUe/fuqYPgGf8Kx3YE5mt0QjGtgpJALxqhZJTDps1LtK3g3/TFi/1VpaWPRdcFOb0qIiIiwFiChp8wV6/+Wwac36wZATOD77vp06epFAqF6Bqh2nYJNjItLV8AZ8Hx9pAR17q69r6Ynp6uhMzzFBw7Ckx1cen1ALbTgAcM6mQEOEp54kTY+Jc4N1Sj0cOjvzpX0yeKioruwsa8EV09gTUabatWfaaCdonedGGpA/X4ucYUNBokJCRkNeYznsYOwBKN1oULF4pSujQFaLsego2Ep8cPGATH3t2/f98TdQ9MUVG+j4/PdjjWGn6fA5n7FdiXYmkjJQaGvb29dMKEST+CmGGNOLc/bGZq2i+7d+8lzs7OetXXoUOHvlzPmjbWYv8D7gwfPpxs3Ph3dYNeX5DJZMTU1HQf+G0IMTJ4eXk5QdBiImuqxPkUmy644+7+Otm2bRtp06aN3vSB37DXdTnvEPYETpTL5b2hva0efrCxsSk6cuTIPGgXle7evftxRkbGNmjPYGdWrdQYnNyqVSsZ5NJnwck9tb5aotkJCFhBPDw8DCXRD7TN4gWzFWzew31oIJLNm7foNWA0kGK3ICEYOK2MLXDatm3rwfWsaWeEJrDx12SEW7YEETMzM0NI/Br8ZtXQUaUeZvhw06ZN70+YMPE+tnsA2L4afOjQwXuOjo44ZhMKv1ePEUmNxcmQc74Gm/38YhMwtSG3tyFLliwxtMQNvLrweK4/n/j7+xNbW1tD6sKBv0XEOLGwkRrEEM0YjJ/fTOLq6moobe24sT6uh/fh2aSkG1PNzNq84eLikpOVldnn/PlzIevXr/9+7Nix1Xl5imHcUMcxqZE5GR06mcuRumPtDfffecePqjtZIGApOIrbH6qpIs2fP98Y/LacGC9WNXKP1Zg7d66htc3k/5GYeCPB1rbT7Kio6IqePXsNTU5OGZCV9WA7lDpe8DXOFMBB139KjdDJH3DbZ+Mx48aNMxZt0/jacNANnGwMutwbqdoaC8ZpqkEc1INWjo7doD3jTj1kBI10mv8fCNqe6yKHADlFGmZ0fAvf3QHGkIbZBY7AEfB9hVBBg9MPuuzbt/ebhIQEWlsjQSgWnTjXSD3S369fPxp7WK/u6uPj7T1y5Fvk+vU4GltDNf0X+DF48GAaW9jgHIPNIk/PgYdXrPiYUCYAITsEznBVqDfDwsIe40wKmqYXkF9Fc8CPQYOofFcHnAEJuL2Li/OT9evX0Wh7YeQZ7F4G/hdpmDeIxWEv+PtDYKmQbZpaMPho7dq1x/383iVXrlyhdfIbXJ2TODk5qRuMOuJX4MegTVFQUFCP01I2btxIo80Fux0JN3rt7EyVuWNvTCSwsrCwsC4s7AcSFRVFY0/IxkEd6CrGxLNiRcDlpUuX0trja1PXs3v1ouoF3Q3acFqRevpRcHAwKS8v19WWXVNfYKmCaQeo1E6gQkKJudKuXTuFcLK6Q8De3oHGTrb2BWdnZ9PYMyW8iYSdO9vR2JJrH8A5ZxSwIyIBp8okJSXRmOD3lKgznC5dqKq157QPVFRU6GqrxXONRGnTpKffpzXRVbOD1TMKvDCtHucjUeJZ/6iBukpf1hskGjIy0mn+/YWZo5aWbWns5Ql4aaZGETRVVZWCJUzNbFZjBGVACw2JmMZran4zpms1NeTJpUaaHs0IA0PTsGZBw8DQMlixoGFgYCUNAwMraRgYjAmdWNAw/JnwqwA2BrGgYfgzoVAAGz4qlaoHCxqGPzL4k9fS8KOujmo+m0SpVP6NBQ3DHxn8tw7hO9PIkyelVAYlEok/lDb4EkacfWzduXPnPH1djAm7nwyvgBCPHPDnVV0E5svl2VRz5aSAoqKis3l5CpyBXAt/PmVBw2BwODjYvwWb1xsSqYzG1CXNjkLxsA7sfhcXF/cVrb6OHTt2vX379mnYHU14T9O2ELksaBioUVtbawoJGx8GfPYchZ2dzgVDNJQERVrHNicnJy9UKPKcHBy6Uml1d3cfde7cuQNwDr09QsvaNAwv4PLlWMy18a2XbRtKHAcyZIjOz7i98IQYlDbV0JD3P3TokCBVqlGjRs07duzYdhY0DAaHVCoh+E7jkJDDur5iKRhKgNjGvoDAiYGgWZWTkyOATimZMWPG+0eOhOxiQcNgEHh4DCTh4REkKSkZ3x+tfnpWl2oZ8L9f9oO7d1O/DQraclqAZ5zUgePnN2vJgQP797KgYdA78AXknp6e+MI8XU3sB47DXq1X/TAs7IcpwcHBd4QpGaVkzpy5C0JCQoJZ0DD8XpAFfAeCZUFzAoarpik3bPhq0Pnzkb8IFTizZs1aLGYbhwUNAzXyAYWFhVgVc4Vg+aGl/49Lmmzfvt0tPj6+XKjAwTZOePiJIBY0DEaHmJgYEhgYaDdokM+XXbs6jNXVDrShSg4ePOCelpZaJVTgTJo05eOIiIh/sKBhMCrgy9+xs+DatbiOy5a9/6O3t9fHutraunVb7pkzZzzkcnmtUIEzfvz4ladO/bSKBQ2D0aFz587k888/l0RE/BgUHLxrta52AgNX3g8NPeKTm5tbJ4QubrW8TRcvXlzKgobBKIHriy5a5P91SUmJzu+XXr3681tnz54dAk0lwQLH19d3x7Vr1yaxoGEwSmC1yNraeqtKpZqoq41ly5Yl/PTTT0MKCwvrhdDUunVriZub24m8vLx+LGgYxIDmXc5Djx8/XqzLO6YlDavL4to51jSBExMTPQJKLUECx9LS0sTC4rWroMmOBQ2D0NC8y/nqJ5+suLp0qc5rA+HoaCCNkJkz37sSFXVesMCxsrK2KCsri8FlAVnQMIgGfDF7fPx1Xf/dX3thWMMHjpWzUqncpnMbiSUJhuYgMzOL+Pjo9D4LfHMMLkSTjH84ONjPIbyXyDcXn34aGBkQEPDWrFnvXbS3t5fRXo9MJsNgPgel6XEWNAxCQ51G6uqohk58NUEDWAnsr4ONhYGBK/cVFBRMX7nys/BOnToJ8e5qXNH5FARONQsaBiFhof6wsKSx0U37gLe3d4tWkYPfD/T39y+D3Xv+/ovWb9685UuoZtFeG3YIYIPt3yxoGASHTEaVsb/Qg/bBBx+QkSNHtcTGhxzX7dmz939gO27Hjp0+pqbUCwgsa2nQsI4ABn2gjdAGIyMj53799QYhnvzsA1U0JxY0DEJC3TXbMOyiM6qFFqVQPMzYvXv30UuXLglhzpcFDYOQMBOgTSPWilAH165dQygX0kUMYEHDYGyoFsnuZblcTk6ePElrpz0LGgZjgyglDVTRcHXayqNHQ1nQMBgV1K9xouylqhJRX/2NGzfIb79RxaWEBQ2DkFCnkTZtqJZBrRVTILZpSkpK9OsQBgaRUflHuhgWNAzNSyhSqqRSx4KG4U8HCwsL5gQWNAx6bMRbsaBh+DNB3YivrKxknhApaNgE0D8eVPihVCqZJ0QKGheB7GCne73A2iRGfB9kRqztiQBB0463XyGUMAcHe1zE6bXfbdBwF/AR7puZmdGaw3p0mZEGNOJXgbW5GnHQqGcSV1VRVc/4K5QJWc9bIlDtpkXjSIJUp3Jzc/FhHlxLUf08bNeu3WhNKoDqhUsqKnRPn1APt4Rgxkdt+wK/VecSUkHyiWzg63V1uvekJiUldQNtOLvWD+glgCaxunWFGDXklwZZNIbCw0/MBr91h11n4Bua45QzFp7oPWiSkhJH8/+eP596JTdcNjsFc7nq6hqdU7lEInEyMTFJ4c+C1XGtFT5wWeIbwIk0jeNr137GFcKeWyWsJU8yNoIykYJGvTIz3AcaG/y5XUn4UV7+RCdDHh6ezhYWFs4VFf9fy/P19cX1N2n05ek9aDTo0aMHWb78fTJlyhTa6sBVheLhE8hRrisUeb66GjI3NyfffLOJbN/+HSksLISA6UnWrFlLlYAgEFFXJOx/WVDwUGdDc+bMJSkpKSQu7joxMZGpn2IcPXo0jbYMkYKmqCGRU73Qn7/QzXn8KCh4pJMhR0dHEhUVDbxASkvL4O+uZMyYcbTXeEfvQfP222PJnTt3Sbt27YQwdx4TJrf/fWZmpm9NTY2uy9fh6lhqCoSrmoICmJ6aeq/3tGm6GcLn23fuFHS1uziRgka9+nFZGVVB9qykgcwwBzKdqNTU1JG6GsNFc+fNE2xdWuwdvKz3jgDM0QUKGMR3vP1D0G7ITEhIMJZG8UnuxqOjv4iNvWQsujDb/lkk29nqhg3dhEgHrb+/unr1irF0Y19qZPVp8YNGQMTCBUTwciXs1VgQFhamMgJthcBQnrZjkFueSEtLNQa/bQW/1Ytk+y5+5Ofn09iwU6lUJjzfXSouLtkp0KPKtPhXS//BmIIGK82LtQ+Cg69GRp5b9ODBA0PrC2zk/Vjz9uzZk25gXVgSbBHLOPgfG25FCoWCxgymM+0u1Y8OHjxw3cC+w/NH/F6DBgczca3GRhuz9+6l7zt9+tRKAxbne0DbwUYSVFVoaOjAxMTEXAPpqub8Vi3yeWIyMtIJ5SrM/bV8V3vhwoU3o6Oj0wzkOxzLwLVBW16LgUaZClleXq4yEIqBbzYv11MEGEDfoVe9ixi+b1taWnpfz7oqgG+JdD/DtWy+hzblcjmNza+a8F2r4uLiZD37rgo4hqbYNCQuAAdAtMc2L8AdcOFRP7xoPWjD9hQuOzcP9L20iIPvy62srDzxFad68tttoDecN1pP5zuBeVZ8fDyNjVFN+K7WxsbmDSjFjurpWrCeOQrOe44maEYgzc3N9TmNFQe4poLw0cAWVZbxhdVAHOEPF1Ef1nP7wXn+0dziG373q1QqxZW2/kJaOFjWAmAXFi5dMRDO11S1RvD7CVUprD5PLisrpVkteRBkKt2a8F2VTCbDcYE5IvoOZ0xsBbrD+YTpaYQLKhOxOFQCbwH/CfQSygtgyx34b2C+ABofAf8DfF0AXa2A84AXgHWUup4CrwDxLfev6el+hjdhUwakqaP9p5m+WwCM4dINLbDavB7oIFS6k/DEzibPT6wTonqDI2LY+3JfzMYqaMfrwGXhfLkGJ85L6koaRqJtGul0KORytAyu1MNBy5ug8akI2vBtLsOAnkA3YA9gF06X9sxWnLKCYwaZ2P/B9e7EtHQcQYD7mdtU1Q/soo91bQ+gf//FG7x+1TXgoCi2d72BfYA4B6oT5zvTRkrhYtIwGIs9mjfxvsK5BO/d/D8BBgAZLoTXwabMvAAAAABJRU5ErkJggg==\"","import React from \"react\";\r\nimport { Modal, ModalHeader, ModalBody } from \"reactstrap\";\r\nimport { bindActionCreators } from \"redux\";\r\nimport { connect } from \"react-redux\";\r\nimport { actionCreators } from \"../store/Configurator\";\r\nimport Button from \"./Button\";\r\nimport locale from \"../Locale\";\r\n\r\ninterface IProps {\r\n error?: any;\r\n}\r\ninterface IState {\r\n show: boolean;\r\n}\r\nclass ErrorModal extends React.Component {\r\n constructor(props: IProps) {\r\n super(props);\r\n this.state = {\r\n show: false,\r\n };\r\n }\r\n showError() {\r\n if (this.props.error && this.props.error.message && this.props.error.message !== \"\") {\r\n this.setState({ show: true });\r\n }\r\n }\r\n componentDidMount() {\r\n this.showError();\r\n }\r\n componentDidUpdate(nextProps: any) {\r\n if (nextProps.error !== this.props.error) {\r\n this.showError();\r\n }\r\n }\r\n render() {\r\n if (this.props.error) {\r\n return (\r\n this.toggleModal()}\r\n >\r\n this.toggleModal()}>\r\n {this.props.error.title}\r\n \r\n \r\n {this.props.error.message}\r\n
\r\n
\r\n this.toggleModal()}\r\n >\r\n {locale.close}\r\n \r\n
\r\n \r\n );\r\n } else {\r\n return null;\r\n }\r\n }\r\n toggleModal() {\r\n (this.props as any).setError(\"\", \"\");\r\n this.setState({ show: !this.state.show });\r\n }\r\n}\r\n\r\nexport default connect(\r\n (state: any) => state.configurator,\r\n (dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(ErrorModal);\r\n","import React, { Fragment } from 'react';\r\nimport { NavLink as RRNavLink } from 'react-router-dom';\r\nimport { Collapse, Container, Navbar, NavItem, NavLink, NavbarToggler } from 'reactstrap';\r\nimport './SubNavMenu.css';\r\nimport locale from '../Locale';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../store/Configurator';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport ErrorModal from './ErrorModal';\r\nimport Helper from '../Helper';\r\nimport { history } from '../index';\r\n\r\ninterface IProps extends RouteComponentProps {\r\n\tpart: any;\r\n\tconfiguration: any;\r\n\tdocument?: any;\r\n\tuser?: any;\r\n\tnavCartOpen?: boolean;\r\n\tinquiryDialogOpen?: boolean;\r\n}\r\n\r\ninterface IState {\r\n\tisOpen: boolean;\r\n}\r\n\r\nclass SubNavMenu extends React.Component {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.state = {\r\n\t\t\tisOpen: false,\r\n\t\t};\r\n\t}\r\n\tcomponentDidUpdate(nextProps: any) {\r\n\t\tif (nextProps.navCartOpen === true) {\r\n\t\t\t(this.props as any).setCartOpen(false);\r\n\t\t}\r\n\t\tif (nextProps.inquiryDialogOpen === true) {\r\n\t\t\t(this.props as any).setInquiryDialogOpen(false);\r\n\t\t}\r\n\t}\r\n\ttoggle() {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.isOpen = !state.isOpen;\r\n\t\tthis.setState(state);\r\n\t}\r\n\tgoToDocument() {\r\n\t\thistory.push(process.env.REACT_APP_ROOT_PATH + '/admin/document/configurations');\r\n\t}\r\n\tgoToProjects(filter: string) {\r\n\t\thistory.push(process.env.REACT_APP_ROOT_PATH + '/admin/myProjects?project=' + filter);\r\n\t}\r\n\tgoToConfiguration() {\r\n\t\thistory.push(process.env.REACT_APP_ROOT_PATH + '/admin/document/configuration');\r\n\t}\r\n\trender() {\r\n\t\tconst baseName = (process.env.REACT_APP_ROOT_PATH || '').toLowerCase();\r\n\t\tconst pathName = window.location.pathname.toLowerCase().replace(/\\/$/, '');\r\n\r\n\t\tconst checkActiveConfiguration = () => pathName.indexOf('admin/configuration') >= 0;\r\n\t\tconst checkActiveDocument = () => pathName.indexOf('admin/document') >= 0;\r\n\t\tconst checkActiveMyProjects = () => pathName.indexOf('admin/myprojects') >= 0;\r\n\t\tconst checkActiveAllProjects = () => pathName.indexOf('admin/allprojects') >= 0;\r\n\r\n\t\tconst checkActiveStep1 = () =>\r\n\t\t\tpathName === baseName + '/' ||\r\n\t\t\tpathName === baseName + '' ||\r\n\t\t\tpathName === baseName + '/configurator' ||\r\n\t\t\tpathName === baseName + '/configurator/selection';\r\n\r\n\t\tconst isStep1 = () => pathName.indexOf('configurator/selection') >= 0;\r\n\r\n\t\tconst isStep2 = () => pathName.indexOf('configurator/configuration') >= 0;\r\n\r\n\t\tconst isStep3 = () => pathName.indexOf('configurator/confirmation') >= 0;\r\n\r\n\t\tconst isPublicDocuments = pathName.indexOf('documents') >= 0;\r\n\r\n\t\tconst navTitle = checkActiveConfiguration()\r\n\t\t\t? locale.configurationEditing\r\n\t\t\t: checkActiveDocument()\r\n\t\t\t? locale.documentEditing\r\n\t\t\t: checkActiveMyProjects()\r\n\t\t\t? locale.myProjects\r\n\t\t\t: checkActiveAllProjects()\r\n\t\t\t? locale.allProjects\r\n\t\t\t: checkActiveStep1()\r\n\t\t\t? locale.configurationStep1\r\n\t\t\t: isStep2()\r\n\t\t\t? locale.configurationStep2\r\n\t\t\t: isStep3()\r\n\t\t\t? locale.configurationStep3\r\n\t\t\t: '';\r\n\r\n\t\tconst adminVisible = Helper.userEditor();\r\n\t\tconst headOfSalesVisible = Helper.userHeadOfSales();\r\n\t\tconst installerVisible = Helper.userInstaller();\r\n\r\n\t\tconst documentDisabled = !this.props.document || !this.props.document.documentId;\r\n\t\tconst documentConfigurationDisabled =\r\n\t\t\t!this.props.configuration || !this.props.configuration.configurationId || !this.props.configuration.documentConfigurationId;\r\n\t\tconst configurationDisabled = !this.props.configuration || !this.props.configuration.configurationId;\r\n\r\n\t\tconst configurationVersion =\r\n\t\t\tthis.props.configuration && this.props.configuration.documentPosition ? ' (' + this.props.configuration.documentPosition + ')' : '';\r\n\r\n\t\tconst modelAndPriceDiv = (\r\n\t\t\t\r\n\t\t\t\t{this.props.document && this.props.document.documentId && this.props.document.project ? (\r\n\t\t\t\t\t
this.goToProjects(this.props.document.project)} style={{ cursor: 'pointer' }}>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{this.props.document.project}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t) : null}\r\n\r\n\t\t\t\t{this.props.document && this.props.document.documentId && this.props.document.name ? (\r\n\t\t\t\t\t
this.goToDocument()} style={{ cursor: 'pointer' }}>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{this.props.document.name}\r\n\t\t\t\t\t\t\t\t{configurationVersion}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t) : null}\r\n\r\n\t\t\t\t{this.props.part && this.props.part.name && (isStep1() || isStep2() || isStep3()) ? (\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{Helper.getLocalizedValueOrNull(this.props.part.brandName) ??\r\n\t\t\t\t\t\t\t\t\tHelper.getLocalizedValueOrNull(this.props.part.title) ??\r\n\t\t\t\t\t\t\t\t\tthis.props.part.name}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t) : null}\r\n\r\n\t\t\t\t{this.props.part && this.props.part.price && Helper.userLoggedIn() && (isStep1() || isStep2() || isStep3()) ? (\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{this.props.part.price.toLocaleString('de-DE', {\r\n\t\t\t\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\t\t\t\tcurrency: this.props.document.currency,\r\n\t\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t) : null}\r\n\t\t\t
\r\n\t\t);\r\n\r\n\t\treturn !isPublicDocuments && (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t{pathName.indexOf('/admin') === -1 || !adminVisible ? (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{pathName.indexOf('/profile') === -1 || !(adminVisible || headOfSalesVisible || installerVisible) ? (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.configurationStep1}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.configurationStep2}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.configurationStep3}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{adminVisible ? (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.myProjects}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t) : ( \t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{!installerVisible ? (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.myProjects}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t{headOfSalesVisible || installerVisible ? (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.allProjects}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.documentEditing}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.configurationEditing + configurationVersion}{' '}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
{modelAndPriceDiv}
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t this.toggle()} className='mr-2 d-block d-lg-none' />\r\n\t\t\t\t\t
{navTitle}
\r\n\t\t\t\t\t
{modelAndPriceDiv}
\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch),\r\n\tundefined,\r\n\t{ pure: false }\r\n)(SubNavMenu) as any;\r\n","import React from \"react\";\r\nimport Helper from \"../Helper\";\r\nimport { RouteComponentProps } from \"react-router-dom\";\r\nimport { connect } from \"react-redux\";\r\nimport { actionCreators } from \"../store/Configurator\";\r\nimport { bindActionCreators } from \"redux\";\r\nimport queryString from \"query-string\";\r\n\r\ninterface IProps extends RouteComponentProps {\r\n footer?: any;\r\n brandPartnerId?: string;\r\n}\r\ninterface IState {\r\n footer: { footer1text: any; footer1url: any; footer2text: any; footer2url: any; footer3text: any; footer3url: any; };\r\n brandPartnerId: any;\r\n}\r\nclass AppFooter extends React.Component {\r\n constructor(props: IProps) {\r\n super(props);\r\n this.state = {\r\n footer: this.props.footer || \"\",\r\n brandPartnerId: this.props.brandPartnerId || \"\"\r\n };\r\n }\r\n\r\n getFooter(){\r\n const url = \"/footer/\" + this.state.brandPartnerId;\r\n Helper.getData(url).then((data: any) => {\r\n if (data) {\r\n const footer1text = data.Footer1text || \"\";\r\n const footer1url = data.Footer1url || \"\";\r\n const footer2text = data.Footer2text || \"\";\r\n const footer2url = data.Footer2url || \"\";\r\n const footer3text = data.Footer3text || \"\";\r\n const footer3url = data.Footer3url || \"\";\r\n\r\n (this.props as any).setFooter(\r\n footer1text,\r\n footer1url,\r\n footer2text,\r\n footer2url,\r\n footer3text,\r\n footer3url\r\n ); \r\n }\r\n });\r\n }\r\n componentDidMount() {\r\n const state: IState = this.state;\r\n const queryValues = queryString.parse(this.props.location?.search);\r\n if (queryValues && queryValues.bpi) {\r\n state.brandPartnerId = queryValues.bpi.toString()\r\n }\r\n else {\r\n state.brandPartnerId = Helper.brandPartnerId()\r\n }\r\n this.setState(state);\r\n this.getFooter();\r\n }\r\n\r\n render() {\r\n const pathName = window.location.pathname.toLowerCase().replace(/\\/$/, '');\r\n\t\tconst isPublicDocuments = pathName.indexOf('documents') >= 0;\r\n\r\n const footer1text = (this.props.footer && Helper.getLocalizedName(this.props.footer.footer1text)) || \"\";\r\n const footer1url = (this.props.footer && this.props.footer.footer1url) || \"\";\r\n const footer2text = (this.props.footer && Helper.getLocalizedName(this.props.footer.footer2text)) || \"\";\r\n const footer2url = (this.props.footer && this.props.footer.footer2url) || \"\";\r\n const footer3text = (this.props.footer && Helper.getLocalizedName(this.props.footer.footer3text)) || \"\";\r\n const footer3url = (this.props.footer && this.props.footer.footer3url) || \"\";\r\n return !isPublicDocuments && (\r\n
\r\n
\r\n v{process.env.REACT_APP_VERSION}\r\n
\r\n
\r\n bpi:{this.state.brandPartnerId}\r\n
\r\n
\r\n { (footer1text) ? (\r\n {footer1text}\r\n ): null\r\n }\r\n
\r\n
\r\n { (footer2text) ? (\r\n {footer2text}\r\n ): null\r\n }\r\n
\r\n
\r\n { (footer3text) ? (\r\n {footer3text}\r\n ): null\r\n }\r\n
\r\n
\r\n )\r\n }\r\n}\r\nexport default connect(\r\n (state: any) => state.configurator,\r\n dispatch => bindActionCreators(actionCreators, dispatch)\r\n)(AppFooter) as any;\r\n","import React from 'react';\r\nimport { Container } from 'reactstrap';\r\nimport NavMenu from './NavMenu';\r\nimport SubNavMenu from './SubNavMenu';\r\nimport AppFooter from './AppFooter';\r\nimport locale from '../Locale';\r\nimport CookieConsent from 'react-cookie-consent';\r\nimport Helper from '../Helper';\r\n\r\ninterface Iprops {}\r\n\r\nexport default class Layout extends React.Component {\r\n\trender() {\r\n\t\tlocale.setLanguage(Helper.userLang());\r\n\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{this.props.children}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{locale.cookieLaw}{' '}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{locale.details}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n","export default __webpack_public_path__ + \"static/media/selected-transparent.de891198.png\";","import React, { Fragment } from 'react';\r\nimport { Navbar, NavbarToggler, NavbarBrand, Row, Col, FormGroup, Label, Input, UncontrolledCollapse, Collapse } from 'reactstrap';\r\nimport './Configurator.css';\r\nimport selectedIcon from '../images/selected-transparent.png';\r\nimport searchIcon from '../images/search.png';\r\nimport clearIcon from '../images/clear-search-24.png';\r\nimport locale from '../Locale';\r\n\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../store/Configurator';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport Helper from '../Helper';\r\nimport Loading from 'react-fullscreen-loading';\r\nimport Notify from './Notify';\r\nimport queryString from 'query-string';\r\n\r\nconst imagePath = process.env.REACT_APP_IMG_URL;\r\n\r\ninterface IProps extends RouteComponentProps {\r\n\tpart: any;\r\n\ttheme?: any;\r\n\tbrandPartnerId?: string;\r\n\tsearch?: any;\r\n\tshowMessage: any;\r\n\tconfiguration?: any;\r\n}\r\n\r\ninterface IState {\r\n\tcollapsed: boolean;\r\n\tparts: any;\r\n\tpartsPage: any;\r\n\terror: any;\r\n\tshowMessage: any;\r\n\tfilterCategories: any;\r\n\tcategories: any[];\r\n\tquery: '';\r\n\tloading: boolean;\r\n\tselectedPartId: string;\r\n\tbrandPartnerId: string;\r\n\tnotify: any;\r\n}\r\n\r\nclass ConfiguratorStep1 extends React.Component {\r\n\tprivate timeout: any;\r\n\tprivate pageNumber: number = 0;\r\n\tprivate pageSize: number = 25;\r\n\tprivate pageStart = (): number => this.pageSize * this.pageNumber;\r\n\tprivate lastRequestedItem = () => this.pageStart() + this.pageSize;\r\n\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.timeout = 0;\r\n\r\n\t\tthis.state = {\r\n\t\t\tcollapsed: true,\r\n\t\t\tparts: [],\r\n\t\t\tpartsPage: [],\r\n\t\t\tquery: (this.props.search && this.props.search.query) || '',\r\n\t\t\terror: null,\r\n\t\t\tshowMessage: this.props.showMessage || null,\r\n\t\t\tloading: false,\r\n\t\t\tselectedPartId: (this.props.part && this.props.part.id) || '',\r\n\t\t\tbrandPartnerId: this.props.brandPartnerId || '',\r\n\t\t\tfilterCategories: [],\r\n\t\t\tcategories: [],\r\n\t\t\tnotify: { open: false, title: '', message: '', isError: false },\r\n\t\t};\r\n\t}\r\n\r\n\tisValueSelected(catId: string, id: string): boolean {\r\n\t\tconst foundCategory = this.state.filterCategories.find((cat: any) => cat.id === catId);\r\n\t\tif (foundCategory) {\r\n\t\t\treturn !!foundCategory.values.some((val: any) => val.id === id && val.selected);\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\r\n\tgetModels() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tlet urlParts = '';\r\n\t\tlet urlCategories = '';\r\n\t\tif (Helper.userLoggedIn()) {\r\n\t\t\turlParts = '/selection/auth/models/' + Helper.brandPartnerId();\r\n\t\t\turlCategories = '/selection/auth/categories/' + Helper.brandPartnerId();\r\n\t\t} else {\r\n\t\t\turlParts = '/selection/models/' + Helper.brandPartnerId();\r\n\t\t\turlCategories = '/selection/categories/' + Helper.brandPartnerId();\r\n\t\t}\r\n\t\tconst categories = this.state.filterCategories.map((category: any) => {\r\n\t\t\tconst values = category.values\r\n\t\t\t\t.filter((value: any) => {\r\n\t\t\t\t\treturn value.selected;\r\n\t\t\t\t})\r\n\t\t\t\t.map((value: any) => ({ id: value.id }));\r\n\r\n\t\t\treturn {\r\n\t\t\t\tid: category.id,\r\n\t\t\t\tvalues: values,\r\n\t\t\t};\r\n\t\t});\r\n\t\tPromise.all([\r\n\t\t\tHelper.postData(\r\n\t\t\t\turlParts,\r\n\t\t\t\tJSON.stringify({\r\n\t\t\t\t\tcategories: categories,\r\n\t\t\t\t\ttextFilter: this.state.query,\r\n\t\t\t\t\tlang: Helper.userLang(),\r\n\t\t\t\t})\r\n\t\t\t),\r\n\t\t\tHelper.postData(\r\n\t\t\t\turlCategories,\r\n\t\t\t\tJSON.stringify({\r\n\t\t\t\t\tcategories: categories,\r\n\t\t\t\t\ttextFilter: this.state.query,\r\n\t\t\t\t\tlang: Helper.userLang(),\r\n\t\t\t\t})\r\n\t\t\t),\r\n\t\t])\r\n\t\t\t.then(([partsData, catData]) => {\r\n\t\t\t\t/* CATEGORIES */\r\n\t\t\t\tthis.pageNumber = 0;\r\n\r\n\t\t\t\tlet categories: any[] = [];\r\n\r\n\t\t\t\tif (catData) {\r\n\t\t\t\t\tcatData.forEach((cat: any) => {\r\n\t\t\t\t\t\tlet values: any[] = [];\r\n\t\t\t\t\t\tlet catValues = cat.CategoryValues;\r\n\t\t\t\t\t\tif (catValues) {\r\n\t\t\t\t\t\t\tcatValues.forEach((catValue: any) => {\r\n\t\t\t\t\t\t\t\tvalues.push({\r\n\t\t\t\t\t\t\t\t\tid: catValue.BrandPartnerCategoryValueId,\r\n\t\t\t\t\t\t\t\t\tname: Helper.getLocalizedName(catValue.Name),\r\n\t\t\t\t\t\t\t\t\tselected: this.isValueSelected(cat.BrandPartnerCategoryId, catValue.BrandPartnerCategoryValueId),\r\n\t\t\t\t\t\t\t\t\tdisabled: !catValue.Active,\r\n\t\t\t\t\t\t\t\t\torder: catValue.Order ?? Number.MAX_SAFE_INTEGER,\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tcategories.push({\r\n\t\t\t\t\t\t\tid: cat.BrandPartnerCategoryId,\r\n\t\t\t\t\t\t\tname: Helper.getLocalizedName(cat.Name),\r\n\t\t\t\t\t\t\torder: cat.Order?? Number.MAX_SAFE_INTEGER,\r\n\t\t\t\t\t\t\tvalues: values,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\t/* PARTS */\r\n\t\t\t\tconst parts = this.partsData(partsData);\r\n\t\t\t\t//First order, then by name\r\n\t\t\t\tparts.sort((a: any, b: any) => a.order - b.order || a.brandName?.localeCompare(b.brandName) || a.name.localeCompare(b.name));\r\n\t\t\t\tlet partsPage = [];\r\n\t\t\t\tif (parts && parts.length > this.pageSize) {\r\n\t\t\t\t\tpartsPage = parts.slice(0, this.pageSize);\r\n\t\t\t\t} else if (parts && parts.length > 0) {\r\n\t\t\t\t\tpartsPage = parts.slice(0);\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\tparts: parts,\r\n\t\t\t\t\tpartsPage: partsPage,\r\n\t\t\t\t\tfilterCategories: categories,\r\n\t\t\t\t\tloading: false,\r\n\t\t\t\t});\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tthis.setState({ error: error.message + '', loading: false });\r\n\t\t\t});\r\n\t}\r\n\r\n\tloadModels() {\r\n\t\tif (window.innerHeight + document.documentElement.scrollTop >= document.documentElement.scrollHeight - 200) {\r\n\t\t\tconst { parts } = this.state;\r\n\t\t\tif (parts && parts.length > 0) {\r\n\t\t\t\tif (this.pageStart() < parts.length) {\r\n\t\t\t\t\tthis.pageNumber += 1;\r\n\r\n\t\t\t\t\tif (this.lastRequestedItem() >= parts.length - 1) {\r\n\t\t\t\t\t\t//reached end\r\n\t\t\t\t\t\tthis.setState({ partsPage: parts.slice(0) });\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t//not reached end yet\r\n\r\n\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\tpartsPage: parts.slice(0, this.lastRequestedItem()),\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tgetTheme(brandPartnerId: string) {\r\n\t\tconst url = '/brand/' + brandPartnerId + '/data';\r\n\t\tHelper.getData(url).then((data: any) => {\r\n\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/configurator/selection');\r\n\t\t\t\t}, 200);\r\n\t\t\t} else {\r\n\t\t\t\tconst logo = (data.Style && data.Style.HeaderLogo) || '';\r\n\t\t\t\tconst logotype = (data.Style && data.Style.HeaderLogotype) || '';\r\n\t\t\t\tconst title = Helper.getLocalizedName(data.BrandName) || '';\r\n\t\t\t\tconst header = (data.Style && Helper.getLocalizedName(data.Style.HeaderText)) || '';\r\n\t\t\t\tconst color = (data.Style && data.Style.BackgroundColor) || '';\r\n\t\t\t\tconst headerFontColor = (data.Style && data.Style.HeaderFontColor) || '';\r\n\t\t\t\tconst buttonColor = (data.Style && data.Style.ButtonColor) || '';\r\n\t\t\t\tconst buttonFontColor = (data.Style && data.Style.ButtonFontColor) || '';\r\n\r\n\t\t\t\tconst theme = {\r\n\t\t\t\t\tlogo: logo,\r\n\t\t\t\t\ttitle: title,\r\n\t\t\t\t\theader: header,\r\n\t\t\t\t\tcolor: color,\r\n\t\t\t\t\theaderFontColor,\r\n\t\t\t\t\tbuttonColor,\r\n\t\t\t\t\tbuttonFontColor,\r\n\t\t\t\t};\r\n\t\t\t\tlocalStorage.setItem('theme', JSON.stringify(theme));\r\n\t\t\t\tlocalStorage.setItem('brandPartnerId', data.BrandPartnerId);\r\n\r\n\t\t\t\t(this.props as any).setBrand(logo, logotype, title, header, color, headerFontColor, data.BrandPartnerId, buttonColor, buttonFontColor);\r\n\r\n\t\t\t\tlocalStorage.setItem('brandPartnerId', brandPartnerId.toString());\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tgetFooter() {\r\n\t\tconst url = '/footer/' + Helper.brandPartnerId();\r\n\t\tHelper.getData(url).then((data: any) => {\r\n\t\t\tif (data) {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/configurator/selection?bpi=' + (process.env.REACT_APP_BRANDPARTNER ?? ''));\r\n\t\t\t\t\t}, 200);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconst footer1text = data.Footer1text || '';\r\n\t\t\t\t\tconst footer1url = data.Footer1url || '';\r\n\t\t\t\t\tconst footer2text = data.Footer2text || '';\r\n\t\t\t\t\tconst footer2url = data.Footer2url || '';\r\n\t\t\t\t\tconst footer3text = data.Footer3text || '';\r\n\t\t\t\t\tconst footer3url = data.Footer3url || '';\r\n\t\t\t\t\tconst footer = {\r\n\t\t\t\t\t\tfooter1text: footer1text,\r\n\t\t\t\t\t\tfooter1url: footer1url,\r\n\t\t\t\t\t\tfooter2text: footer2text,\r\n\t\t\t\t\t\tfooter2url: footer2url,\r\n\t\t\t\t\t\tfooter3text: footer3text,\r\n\t\t\t\t\t\tfooter3url: footer3url,\r\n\t\t\t\t\t};\r\n\t\t\t\t\tlocalStorage.setItem('footer', JSON.stringify(footer));\r\n\t\t\t\t\t(this.props as any).setFooter(footer1text, footer1url, footer2text, footer2url, footer3text, footer3url);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tasync componentDidMount() {\r\n\t\tconst queryValues = queryString.parse(this.props.location.search);\r\n\t\tconst brandPartnerId = queryValues && queryValues.bpi ? queryValues.bpi.toString() : Helper.brandPartnerId();\r\n\r\n\t\tconst isActive: { isActive: boolean; redirectBpi?: string; message?: string } = await Helper.getData('/brand/' + brandPartnerId + '/active');\r\n\r\n\t\tif (!isActive.isActive) {\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tif (isActive.message) (this.props as any).setError(locale.exception, isActive.message);\r\n\r\n\t\t\t\tthis.getTheme(isActive.redirectBpi ?? process.env.REACT_APP_BRANDPARTNER ?? '');\r\n\t\t\t\tthis.props.history.push(\r\n\t\t\t\t\tprocess.env.REACT_APP_ROOT_PATH + '/configurator/selection?bpi=' + (isActive.redirectBpi ?? process.env.REACT_APP_BRANDPARTNER ?? '')\r\n\t\t\t\t);\r\n\t\t\t}, 200);\r\n\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (queryValues && queryValues.bpi) {\r\n\t\t\tif (queryValues.bpi.toString() !== Helper.brandPartnerId()) {\r\n\t\t\t\tthis.getTheme(queryValues.bpi.toString());\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tthis.getFooter();\r\n\t\tthis.getModels();\r\n\t\tconst state: IState = this.state;\r\n\t\tif (state.showMessage && state.showMessage.show) {\r\n\t\t\tstate.notify.title = state.showMessage.title;\r\n\t\t\tstate.notify.message = state.showMessage.message;\r\n\t\t\t(this.props as any).setShowMessage(false, '', '');\r\n\t\t\tstate.notify.open = true;\r\n\t\t\tthis.setState(state);\r\n\t\t}\r\n\r\n\t\t(this.props as any).configuration.loader = false;\r\n\r\n\t\twindow.addEventListener('scroll', () => {\r\n\t\t\tthis.loadModels();\r\n\t\t});\r\n\t}\r\n\tcomponentDidUpdate(nextProps: any) {\r\n\t\tif (nextProps.brandPartnerId !== this.props.brandPartnerId) {\r\n\t\t\tthis.getModels();\r\n\t\t}\r\n\t}\r\n\ttoggleNavbar() {\r\n\t\tthis.setState({\r\n\t\t\tcollapsed: !this.state.collapsed,\r\n\t\t});\r\n\t}\r\n\r\n\tpartsData(partsData: any): any {\r\n\t\tlet parts: any = [];\r\n\r\n\t\tif (partsData && partsData.BrandModelsSpecial && partsData.BrandModelsSpecial.length) {\r\n\t\t\tpartsData.BrandModelsSpecial.forEach((part: any) => {\r\n\t\t\t\tparts.push({\r\n\t\t\t\t\tid: part.Id,\r\n\t\t\t\t\tname: part.Name,\r\n\t\t\t\t\ttitle: part.Title,\r\n\t\t\t\t\tbrandName: Helper.getLocalizedValueOrNull(part.BrandName),\r\n\t\t\t\t\timage: part.ImageUrl ? imagePath + part.ImageUrl.replace(imagePath, '').replace('_Original.', '_XXL.') : '',\r\n\t\t\t\t\tselected: 'invisible',\r\n\t\t\t\t\tspecial: true,\r\n\t\t\t\t\torder: part.Order?? Number.MAX_SAFE_INTEGER,\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t}\r\n\t\tif (partsData && partsData.BrandModelsSpecial && partsData.BrandModelsNotSpecial.length) {\r\n\t\t\tpartsData.BrandModelsNotSpecial.forEach((part: any) => {\r\n\t\t\t\tparts.push({\r\n\t\t\t\t\tid: part.Id,\r\n\t\t\t\t\tname: part.Name,\r\n\t\t\t\t\ttitle: part.Title,\r\n\t\t\t\t\tbrandName: Helper.getLocalizedValueOrNull(part.BrandName),\r\n\t\t\t\t\timage: part.ImageUrl ? imagePath + part.ImageUrl.replace(imagePath, '').replace('_Original.', '_XXL.') : '',\r\n\t\t\t\t\tselected: 'invisible',\r\n\t\t\t\t\tspecial: false,\r\n\t\t\t\t\torder: part.Order?? Number.MAX_SAFE_INTEGER,\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t}\r\n\t\treturn parts;\r\n\t}\r\n\r\n\tmutateFilters(id: string, checked: boolean, reset: boolean): any[] {\r\n\t\t//apply new filter, remove filter, reset all filters\r\n\t\treturn this.state.filterCategories.map((category: any) => {\r\n\t\t\tlet values: any[] = [];\r\n\t\t\tcategory.values.forEach((value: any) => {\r\n\t\t\t\tif (reset) {\r\n\t\t\t\t\tvalues.push({ ...value, selected: false });\r\n\t\t\t\t} else if (value.id === id) {\r\n\t\t\t\t\tvalues.push({ ...value, selected: checked });\r\n\t\t\t\t} else {\r\n\t\t\t\t\tvalues.push(value);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\treturn { ...category, values: values };\r\n\t\t});\r\n\t}\r\n\tfiltersReset() {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.filterCategories = this.mutateFilters('', false, true);\r\n\t\tstate.query = '';\r\n\t\tthis.setState(state, () => this.getModels());\r\n\t}\r\n\r\n\tapplyFilterCategory(e: any) {\r\n\t\tconst state: any = this.state;\r\n\t\tstate.filterCategories = this.mutateFilters(e.target.id, e.target.checked, false);\r\n\t\tthis.setState(state, () => this.getModels());\r\n\t}\r\n\r\n\tisGuid(stringToTest: string): boolean {\r\n\t\tif (stringToTest[0] === '{') {\r\n\t\t\tstringToTest = stringToTest.substring(1, stringToTest.length - 1);\r\n\t\t}\r\n\t\tvar regexGuid = /^(\\{){0,1}[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}(\\}){0,1}$/gi;\r\n\t\treturn regexGuid.test(stringToTest);\r\n\t}\r\n\r\n\tapplySearch(e: any) {\r\n\t\t//Open configuration by search with configurationId\r\n\t\tconst query = e.target.value;\r\n\t\tthis.setState({ query: query });\r\n\t\tif (this.isGuid(query)) {\r\n\t\t\t(this.props as any).buildCategories(query);\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/configurator/configuration');\r\n\t\t\t}, 700);\r\n\t\t} else {\r\n\t\t\tif (this.timeout) clearTimeout(this.timeout);\r\n\t\t\tthis.timeout = setTimeout(() => {\r\n\t\t\t\tthis.getModels();\r\n\t\t\t}, 700);\r\n\t\t}\r\n\t}\r\n\r\n\tselectPart(id: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.selectedPartId = id;\r\n\t\tthis.setState(state);\r\n\t\t(this.props as any).clearPart(false, (this.props as any).configuration.position);\r\n\t\t(this.props as any).buildCategories(null, id, null, null, (this.props as any).configuration.position);\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/configurator/configuration?bpi=' + Helper.brandPartnerId());\r\n\t\t}, 700);\r\n\t}\r\n\r\n\tclearSearch() {\r\n\t\tthis.setState({ query: '' }, () => this.getModels());\r\n\t}\r\n\r\n\trenderPart(part: any, i: number) {\r\n\t\treturn (\r\n\t\t\t this.selectPart(part.id)} className='door-item' xs='6' lg='2'>\r\n\t\t\t\t{part.brandName\r\n\t\t\t\t
{part.brandName ?? Helper.getLocalizedValueOrNull(part.title) ?? part.name}
\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\trender() {\r\n\t\tconst state: IState = this.state;\r\n\r\n\t\tconst categoriesList = state.filterCategories.map((cat: any, i: number) => {\r\n\t\t\tif (cat.values && cat.values.length > 0) {\r\n\t\t\t\tconst values = cat.values.map((value: any, j: number) => {\r\n\t\t\t\t\tconst disabled = value.disabled;\r\n\t\t\t\t\tconst checked = value.selected;\r\n\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t);\r\n\t\t\t\t});\r\n\t\t\t\treturn (\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{cat.name}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{values}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t\treturn null;\r\n\t\t});\r\n\r\n\t\tlet partsList: any = null;\r\n\t\tlet partsListSpecial: any = null;\r\n\t\tlet configuratorBackgroundClass = '';\r\n\t\tlet configuratorBackgroundClassSpecial = '';\r\n\r\n\t\tif (state.loading) {\r\n\t\t\tpartsList = null;\r\n\t\t} else if (state.partsPage && state.partsPage.length > 0) {\r\n\t\t\tpartsList = state.partsPage.filter((part: any) => !part.special).map((part: any, i: number) => this.renderPart(part, i));\r\n\t\t\tpartsListSpecial = state.partsPage.filter((part: any) => part.special).map((part: any, i: number) => this.renderPart(part, i));\r\n\t\t\tconfiguratorBackgroundClassSpecial = 'configurator-background p-2 pb-3';\r\n\t\t\tconfiguratorBackgroundClass = 'configurator-background p-2 pb-3 mb-4';\r\n\t\t}\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{this.state.notify.open ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : null}\r\n\t\t\t\t{this.state.loading ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
this.filtersReset()}>\r\n\t\t\t\t\t\t\t\t{locale.filtersClear}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{categoriesList}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
this.filtersReset()}>\r\n\t\t\t\t\t\t\t\t{locale.filtersClear}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t this.toggleNavbar()} className='mr-auto text-uppercase'>\r\n\t\t\t\t\t\t\t\t\t{locale.filters}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t this.toggleNavbar()} />\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{categoriesList}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t this.applySearch(e)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName='search-input'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tid='search'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tplaceholder={locale.searchPlaceholder}\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{state.query.length > 0 ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t this.clearSearch()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tid='clearIcon'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName='clear-icon d-none d-lg-block'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tsrc={clearIcon}\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t\t\t\t\tsearchIcon\r\n\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{partsListSpecial && partsListSpecial.length ? (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.specialOffer}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{partsListSpecial}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t{partsList && partsList.length ? (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{partsList}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(ConfiguratorStep1);\r\n","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAQAAABKfvVzAAAAAmJLR0QA/4ePzL8AAAB3SURBVDjLzZMxDsAgCEX/JUrqEfW4dehx6FJjrHzRdJHBAd5LEBTYOCKE1gTxm0pQZKIIMhSpTR64oLgROrxUTlYIc7itDPFecfFWmcLrTPJ7iodXZRovbdlD/t9SvSpfpYnbexnirmLPnSp8TURZft7LH2ijeACXV1aEtBH0WwAAAABJRU5ErkJggg==\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAVCAYAAACpF6WWAAABTklEQVQ4ja2UvytGURjHPy9FIkXKpAwoFimDa/JjYXnLJFcMYvQHmCTxJ8jGYFAiixST0SAWG4OBEikx+RHd+t463c55zzn1PvV0uvf5PJ97z497ccQUsAd8AH/AM7AFjLsaKsUocCdRnm+F6wugO1Q4bzRuAwnQpForMAYcGcyQTzhowCMeNhX3A7S4oBLwJDCJnNW5C5gQsBsozONGfT224oGKvZHSsvrWbMVfZV2ktE3Sw2KhRvmljIlvsc026SdQDzRGShs0vtqk+zoBfZHSSY1XtmKitTmLlD6qr90FXAtIA4Ub4lcqQR3GF7XkEW4a7Izv6cMGfAnMAV2aXnaGl4H7ws8lywWfuBM4sTSauQrMFu4tmpKSQz6g3e3XOXzRLh8DD2KmdXLyyN54x/fWIZHGLkVoZJtliterJc6WIpee1lZJeqt/wTtQ/gchK2XOuAXnEgAAAABJRU5ErkJggg==\"","import React, { Fragment } from 'react';\r\n\r\nfunction PartImage(props: any) {\r\n\r\n const { alt, imageBase64 } = props;\r\n let src = imageBase64;\r\n\r\n if (src && src !== null && src !==\"\"){\r\n return (\r\n \r\n {alt}\r\n \r\n );\r\n }\r\n else {\r\n return null;\r\n }\r\n}\r\n\r\nexport default PartImage;","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAFCAYAAACjKgd3AAAAbUlEQVQYlWNmgAAlBgaGNAYGBk4GBoZ7DKgAJO7CwMBwjYGB4QeSDLI4gyADA8M7BgaG/1AMkoCBciTx3fjEQZpgAiAMUgADIAXIcnjFz0A5IBeBvAYDoUgKO4gQB7sI5DV0ADLUGJd4Q0MDAwA9piVEBck1YAAAAABJRU5ErkJggg==\"","export default __webpack_public_path__ + \"static/media/logo-doors.a3ed4e4e.png\";","import React, { Fragment } from \"react\";\r\nimport {\r\n DropdownToggle,\r\n DropdownMenu,\r\n DropdownItem,\r\n Row,\r\n Col,\r\n UncontrolledDropdown\r\n} from \"reactstrap\";\r\nimport \"./Configurator.css\";\r\nimport { bindActionCreators } from \"redux\";\r\nimport { connect } from \"react-redux\";\r\nimport { actionCreators } from \"../store/Configurator\";\r\nimport { RouteComponentProps } from \"react-router-dom\";\r\nimport PartImage from \"./PartImage\";\r\nimport moreImage from \"../images/mini-more.png\";\r\nimport locale from \"../Locale\";\r\nimport Button from \"./Button\";\r\nimport logoImage from \"../images/logo-doors.png\";\r\n\r\ninterface IProps extends RouteComponentProps {\r\n configuration?: any;\r\n popupParameters?: any;\r\n selectedParameters?: any;\r\n theme?: any;\r\n print?: boolean;\r\n}\r\n\r\ninterface IState {\r\n images: any;\r\n imageBase64: string;\r\n loading: boolean;\r\n configuration?: any;\r\n}\r\n\r\nclass Part extends React.Component {\r\n constructor(props: IProps) {\r\n super(props);\r\n\r\n this.state = {\r\n images: [],\r\n imageBase64: \"\",\r\n loading: true,\r\n configuration: null,\r\n };\r\n }\r\n getSelectedParameter(parameterId: string, defaultValue: string): string {\r\n let selectedParameters = this.props.selectedParameters || [];\r\n if (this.props.selectedParameters) {\r\n for (let i = 0; i < this.props.selectedParameters.length; i++) {\r\n if (selectedParameters[i].parameterId === parameterId) {\r\n if (selectedParameters[i].parameterValue) {\r\n return selectedParameters[i].parameterValue;\r\n }\r\n }\r\n }\r\n }\r\n return defaultValue;\r\n }\r\n setSelectedParameter(\r\n parameterId: string,\r\n parameterPartId: string,\r\n parameterValue: string,\r\n parameterValueId: string\r\n ) {\r\n let selectedParameter: any = {\r\n parameterId: parameterId,\r\n parameterValue: parameterValue,\r\n parameterValueId: parameterValueId\r\n };\r\n (this.props as any).addSelectedParameter(selectedParameter);\r\n (this.props as any).updateCategories(\r\n parameterPartId,\r\n parameterId,\r\n parameterValueId,\r\n \"\",\r\n true\r\n );\r\n this.forceUpdate();\r\n }\r\n render() {\r\n let parameterList: any = [];\r\n let headerTitle = locale.configurator;\r\n if (this.props.theme && this.props.theme.title) {\r\n headerTitle = this.props.theme.title;\r\n }\r\n const logo =\r\n this.props.theme && this.props.theme.logo\r\n ? this.props.theme.logo\r\n : logoImage;\r\n\r\n if (this.props.popupParameters && this.props.popupParameters.length > 0) {\r\n const _this = this;\r\n parameterList = this.props.popupParameters.map(\r\n (parameter: any, i: number) => {\r\n const parameterDefaultValue = parameter.defaultValue;\r\n const defaultValue = _this.getSelectedParameter(\r\n parameter.id,\r\n parameterDefaultValue.name || \"\"\r\n );\r\n const values = parameter.values;\r\n\r\n const parameterValuesList = values.map(\r\n (value: any, j: string) => {\r\n if (value.name !== defaultValue) {\r\n return (\r\n \r\n _this.setSelectedParameter(\r\n parameter.id,\r\n parameter.partId,\r\n value.name,\r\n value.value\r\n )\r\n }\r\n >\r\n {value.name}\r\n \r\n );\r\n }\r\n else \r\n return (null);\r\n }\r\n );\r\n\r\n return (\r\n \r\n \r\n \r\n {defaultValue}\r\n \r\n \r\n \r\n {parameterValuesList}\r\n \r\n \r\n
\r\n );\r\n }\r\n );\r\n }\r\n if (this.props.print) {\r\n parameterList.push(\r\n
\r\n
\r\n {\r\n window.print();\r\n }}\r\n >\r\n {locale.print}\r\n \r\n
\r\n
\r\n );\r\n }\r\n return (\r\n \r\n {this.props.configuration.loadingImage &&
}\r\n \r\n \r\n {\" \"}\r\n {headerTitle}\r\n \r\n \r\n \r\n \r\n {parameterList}\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(\r\n (state: any) => state.configurator,\r\n dispatch => bindActionCreators(actionCreators, dispatch)\r\n)(Part);\r\n","import * as React from 'react';\r\nimport {\r\n SliderItem,\r\n GetHandleProps,\r\n GetTrackProps\r\n} from 'react-compound-slider';\r\n\r\n// *******************************************************\r\n// HANDLE COMPONENT\r\n// *******************************************************\r\ninterface IHandleProps {\r\n domain: number[];\r\n handle: SliderItem;\r\n getHandleProps: GetHandleProps;\r\n}\r\n\r\nexport const Handle: React.SFC = ({\r\n domain: [min, max],\r\n handle: { id, value, percent },\r\n getHandleProps\r\n}) => (\r\n \r\n);\r\n\r\n// *******************************************************\r\n// TRACK COMPONENT\r\n// *******************************************************\r\ninterface ITrackProps {\r\n source: SliderItem;\r\n target: SliderItem;\r\n getTrackProps: GetTrackProps;\r\n}\r\n\r\nexport const Track: React.SFC = ({\r\n source,\r\n target,\r\n getTrackProps\r\n}) => (\r\n \r\n);\r\n// *******************************************************\r\n// TICK COMPONENT\r\n// *******************************************************\r\ninterface ITickProps {\r\n tick: any;\r\n count: number;\r\n}\r\n\r\nexport const Tick: React.SFC = ({\r\n tick,\r\n count\r\n}) => (\r\n
\r\n \r\n \r\n {(tick.value)}\r\n
\r\n \r\n);\r\n","import React from 'react';\r\nimport './Configurator.css';\r\nimport moreImage from '../images/mini-more.png';\r\nimport { Slider as SliderElement, Rail, Handles, Tracks, Ticks } from 'react-compound-slider';\r\nimport { Handle, Track, Tick } from './components';\r\n\r\ninterface IProps {\r\n\tparameterId: string;\r\n\tselectedValue: string;\r\n\tmin: number;\r\n\tmax: number;\r\n\tupdate: boolean;\r\n\tcanEdit: boolean;\r\n\tsetSelectedParameter(name: string, id: string, keepOpen?: boolean, close?: boolean): void;\r\n}\r\n\r\ninterface IState {\r\n\tvalues: any;\r\n\tsliderValue: any;\r\n\tinputValue: string;\r\n\tupdateEnabled: boolean;\r\n}\r\n\r\nclass Slider extends React.Component {\r\n\tprivate timeout: number;\r\n\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.timeout = 0;\r\n\t\tthis.state = {\r\n\t\t\tvalues: [this.props.selectedValue],\r\n\t\t\tsliderValue: [this.props.selectedValue],\r\n\t\t\tinputValue: this.props.selectedValue,\r\n\t\t\tupdateEnabled: false,\r\n\t\t};\r\n\t}\r\n\r\n\tcomponentDidUpdate(prevProps: any) {\r\n\t\tif (prevProps !== this.props && this.state.updateEnabled === true) {\r\n\t\t\tthis.setState({ updateEnabled: false });\r\n\t\t}\r\n\t}\r\n\r\n\tonSliderChange(values: any) {\r\n\t\tif (values !== this.props.selectedValue && values !== this.state.sliderValue && this.state.updateEnabled) {\r\n\t\t\tthis.props.setSelectedParameter(values[0], values[0].toString());\r\n\t\t}\r\n\t}\r\n\r\n\tonSliderUpdate(value: any) {\r\n\t\tif (this.state.sliderValue !== value && value !== [this.props.selectedValue]) {\r\n\t\t\tthis.setState({ inputValue: value, updateEnabled: true });\r\n\t\t}\r\n\t}\r\n\r\n\tonInputChange(e: any) {\r\n\t\tconst rex = /^[-+]?\\d+$/;\r\n\t\tlet value = e.target.value;\r\n\t\tif (value === '-') {\r\n\t\t\tthis.setState({ inputValue: value, updateEnabled: true });\r\n\t\t} else if (value === '' || rex.test(value)) {\r\n\t\t\tthis.setState({ inputValue: value, updateEnabled: true });\r\n\t\t\tif (this.timeout) {\r\n\t\t\t\twindow.clearTimeout(this.timeout);\r\n\t\t\t}\r\n\t\t\tthis.timeout = window.setTimeout(() => {\r\n\t\t\t\tthis.setState({ inputValue: value, sliderValue: [value] });\r\n\t\t\t}, 1000);\r\n\t\t}\r\n\t}\r\n\r\n\thandleFocus = (event: any) => event.target.select();\r\n\r\n\thandleOpen() {\r\n\t\tthis.props.setSelectedParameter('', '', false, true);\r\n\t}\r\n\r\n\trender() {\r\n\t\tlet state = this.state;\r\n\t\tlet props = this.props;\r\n\t\tconst editClass = props.canEdit ? '' : ' no-pointer-events';\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t this.onInputChange(e)}>\r\n\t\t\t\t{' this.handleOpen()} />\r\n\t\t\t\t
\r\n\t\t\t\t this.onSliderUpdate(values)}\r\n\t\t\t\t\tonChange={(values: any) => this.onSliderChange(values)}\r\n\t\t\t\t\tvalues={state.sliderValue}\r\n\t\t\t\t>\r\n\t\t\t\t\t{({ getRailProps }) =>
}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{({ handles, getHandleProps }) => (\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{handles.map((handle) => (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{({ tracks, getTrackProps }) => (\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{tracks.map(({ id, source, target }) => (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{({ ticks }) => (\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{ticks.map((tick) => (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default Slider;\r\n","import React from \"react\";\r\nimport { Container, Row, Col } from \"reactstrap\";\r\nimport Helper from \"../Helper\";\r\nimport \"./Popup.css\";\r\n\r\ninterface IProps {\r\n parameterId: string;\r\n selectedValue: any;\r\n selectedTag: string;\r\n values: any;\r\n canEdit: boolean;\r\n setSelectedParameter(name: string, id: string): void;\r\n setSelectedParameterTag(id: string, unselected: boolean): void;\r\n}\r\ninterface IState {\r\n style: {\r\n name: string;\r\n mdValue: number;\r\n };\r\n values: any;\r\n suggestions: any;\r\n tags: any;\r\n}\r\n\r\nexport default class PopupImages extends React.Component {\r\n constructor(props: IProps) {\r\n super(props);\r\n\r\n this.state = {\r\n style: {\r\n name: \"smallElements\",\r\n mdValue: 4,\r\n },\r\n values: [],\r\n suggestions: [],\r\n tags: [],\r\n };\r\n }\r\n componentDidMount() {\r\n const suggestions = this.props.values\r\n .filter(\r\n (value: any, i: number) =>value.tags && this.props.values.findIndex((value2: any) => value.tags === value2.tags) === i\r\n )\r\n .map((value: any) => ({\r\n id: value.tags,\r\n name: value.tags,\r\n selected: this.props.selectedTag === value.tags,\r\n }));\r\n\r\n let values: any = [];\r\n if (this.props.selectedTag !== \"\") {\r\n this.props.values.forEach((value: any) => {\r\n if (this.props.selectedTag === value.tags) {\r\n values.push(value);\r\n }\r\n });\r\n } else {\r\n values = [...this.props.values];\r\n }\r\n this.setState({\r\n suggestions: suggestions,\r\n values: values,\r\n });\r\n }\r\n handleTagSelect(id: string) {\r\n let values: any = [];\r\n let unselected = false;\r\n let selectedSuggestions = this.state.suggestions.map((sug: any) => {\r\n if (sug.id === id) {\r\n if (!sug.selected) {\r\n sug.selected = true;\r\n } else {\r\n unselected = true;\r\n sug.selected = false;\r\n }\r\n } else {\r\n sug.selected = false; //set all unselected\r\n }\r\n return sug;\r\n });\r\n if (unselected) {\r\n values = [...this.props.values];\r\n } else {\r\n this.props.values.forEach((value: any) => {\r\n if (id === value.tags) {\r\n values.push(value);\r\n }\r\n });\r\n }\r\n this.props.setSelectedParameterTag(id, unselected);\r\n this.setState({ suggestions: selectedSuggestions, values: values });\r\n }\r\n render() {\r\n const {\r\n state: { values, style },\r\n } = this;\r\n\r\n const imageList = values.map((value: any, i: number) => {\r\n let title = Helper.getLocalizedValueOrNull(value.brandValue) ?? Helper.getLocalizedValueOrNull(value.value) ?? value.valueName;\r\n\r\n return (\r\n this.props.setSelectedParameter(title, value.id)}\r\n >\r\n

\r\n {title}\r\n

\r\n
\r\n \r\n );\r\n });\r\n const editClass = this.props.canEdit ? \"\" : \"no-pointer-events\";\r\n return (\r\n
\r\n \r\n \r\n {this.state.suggestions && this.state.suggestions.length ? (\r\n \r\n {this.state.suggestions.map((sug: any, i: number) => {\r\n return (\r\n this.handleTagSelect(sug.id)}\r\n >\r\n \r\n {sug.name}\r\n \r\n \r\n );\r\n })}\r\n \r\n ) : null}\r\n {imageList}\r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\n","import React from \"react\";\r\nimport { Container, Row, Col } from \"reactstrap\";\r\nimport Helper from \"../Helper\";\r\nimport \"./Popup.css\";\r\nimport \"./PopupColors.css\";\r\n\r\ninterface IProps {\r\n parameterId: string;\r\n selectedValue: any;\r\n selectedTag: string;\r\n values: any;\r\n canEdit: boolean;\r\n setSelectedParameter(name: string, id: string): void;\r\n setSelectedParameterTag(id: string, unselected: boolean): void;\r\n}\r\n\r\ninterface IState {\r\n suggestions: any;\r\n tags: any;\r\n values: any;\r\n}\r\n\r\nexport default class PopupColors extends React.Component {\r\n constructor(props: IProps, data: any) {\r\n super(props);\r\n this.state = {\r\n tags: [],\r\n suggestions: [],\r\n values: [],\r\n };\r\n }\r\n componentDidMount() {\r\n const suggestions = this.props.values\r\n .filter(\r\n (value: any, i: number) =>\r\n value.tags &&\r\n this.props.values.findIndex(\r\n (value2: any) => value.tags === value2.tags\r\n ) === i\r\n )\r\n .map((value: any) => ({\r\n id: value.tags,\r\n name: value.tags,\r\n selected: this.props.selectedTag === value.tags,\r\n }));\r\n\r\n let values: any = [];\r\n if (this.props.selectedTag !== \"\") {\r\n this.props.values.forEach((value: any) => {\r\n if (this.props.selectedTag === value.tags) {\r\n values.push(value);\r\n }\r\n });\r\n } else {\r\n values = [...this.props.values];\r\n }\r\n this.setState({\r\n suggestions: suggestions,\r\n values: values,\r\n });\r\n }\r\n handleTagSelect(id: string) {\r\n let values: any = [];\r\n let unselected = false;\r\n let selectedSuggestions = this.state.suggestions.map((sug: any) => {\r\n if (sug.id === id) {\r\n if (!sug.selected) {\r\n sug.selected = true;\r\n } else {\r\n unselected = true;\r\n sug.selected = false;\r\n }\r\n } else {\r\n sug.selected = false; //set all unselected\r\n }\r\n return sug;\r\n });\r\n if (unselected) {\r\n values = [...this.props.values];\r\n } else {\r\n this.props.values.forEach((value: any) => {\r\n if (id === value.tags) {\r\n values.push(value);\r\n }\r\n });\r\n }\r\n this.props.setSelectedParameterTag(id, unselected);\r\n this.setState({ suggestions: selectedSuggestions, values: values });\r\n }\r\n render() {\r\n const colorsList = this.state.values.map((value: any, i: number) => {\r\n let title = Helper.getLocalizedValueOrNull(value.brandValue) ?? Helper.getLocalizedValueOrNull(value.value) ?? value.valueName;\r\n let color = \"#FFF\";\r\n\r\n if (value.color) {\r\n color = value.color;\r\n }\r\n let popupStyle = {\r\n backgroundColor: color,\r\n backgroundImage: \"none\",\r\n };\r\n if (value.imageUrl) {\r\n popupStyle = {\r\n backgroundColor: \"transparent\",\r\n backgroundImage: \"url(\" + value.imageUrl + \")\",\r\n };\r\n }\r\n const popupIcon = (\r\n \r\n );\r\n\r\n return (\r\n this.props.setSelectedParameter(title, value.id)}\r\n >\r\n

\r\n {title}\r\n

\r\n {popupIcon}\r\n \r\n );\r\n });\r\n const editClass = this.props.canEdit ? \"\" : \" no-pointer-events\";\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n {this.state.suggestions && this.state.suggestions.length ? (\r\n \r\n {this.state.suggestions.map((sug: any, i: number) => {\r\n return (\r\n this.handleTagSelect(sug.id)}\r\n >\r\n \r\n {sug.name}\r\n \r\n \r\n );\r\n })}\r\n \r\n ) : null}\r\n {colorsList}\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\n","import React from \"react\";\r\nimport {\r\n DropdownToggle,\r\n DropdownMenu,\r\n DropdownItem,\r\n Col,\r\n Dropdown,\r\n} from \"reactstrap\";\r\nimport \"./Configurator.css\";\r\nimport { bindActionCreators } from \"redux\";\r\nimport { connect } from \"react-redux\";\r\nimport { actionCreators } from \"../store/Configurator\";\r\nimport { RouteComponentProps } from \"react-router-dom\";\r\nimport moreImage from \"../images/mini-more.png\";\r\nimport Helper, {dataType, deepCompare} from \"../Helper\";\r\nimport Slider from \"./Slider\";\r\nimport PopupImages from \"./PopupImages\";\r\nimport PopupColors from \"./PopupColors\";\r\nimport Button from \"./Button\";\r\n\r\ninterface IProps extends RouteComponentProps {\r\n parameterId: string;\r\n parameterName: string;\r\n parameterType: number;\r\n showPicture: boolean;\r\n isEnabled: boolean;\r\n initialValues: any;\r\n selectedParameterValue: any;\r\n selectedParameterTag: any;\r\n partId: string;\r\n defaultValue: any;\r\n updateModelDetails(parameterPartId: string, parameterId: string, parameterValueId: string, customValue: string): void;\r\n}\r\n\r\ninterface IState {\r\n values: any;\r\n open: boolean;\r\n}\r\n\r\nclass Parameter extends React.Component {\r\n constructor(props: IProps) {\r\n super(props);\r\n this.state = {\r\n open: false,\r\n values: props.initialValues,\r\n };\r\n }\r\n\r\n shouldComponentUpdate(nextProps: Readonly, nextState: Readonly, nextContext: any): boolean {\r\n return !deepCompare(this.props, nextProps, true) || !deepCompare(this.state, nextState, true);\r\n }\r\n\r\n pushParameterValue(parameterValues: any, parameterValue: any, type: number) {\r\n let value = \"\";\r\n let imageUrl = null;\r\n let tags = null;\r\n if (type === dataType.color || type === dataType.double || type === dataType.decimal) {\r\n value = parameterValue.ParameterValue;\r\n if (parameterValue.ImageUrl) {\r\n imageUrl = parameterValue.ImageUrl;\r\n }\r\n } else if (type === dataType.integer) {\r\n value = parameterValue.IntValue;\r\n } else {\r\n // Dropdown\r\n value = parameterValue.ParameterValue;\r\n if (parameterValue.ImageUrl) \r\n imageUrl = parameterValue.ImageUrl;\r\n }\r\n if (parameterValue.Tags && parameterValue.Tags !== \"\") {\r\n tags = Helper.getLocalizedName(parameterValue.Tags);\r\n }\r\n parameterValues.push({\r\n id: parameterValue.ParameterValueId,\r\n value: value,\r\n valueName: parameterValue.ParameterValueName,\r\n brandValue: parameterValue.ParameterBrandValue,\r\n isDefault: parameterValue.IsDefault,\r\n imageUrl: imageUrl ? imageUrl.replace(\"_Original.\", \"_M.\") : \"\",\r\n tags: tags,\r\n color: parameterValue.Color\r\n });\r\n }\r\n\r\n parameterToggle() {\r\n if (this.canEdit()) {\r\n const state: IState = this.state;\r\n if (!state.open) {\r\n const url = \"/configurator/values/\" + this.props.partId + \"?parameterId=\" + this.props.parameterId +\r\n \"&brandPartnerId=\" + Helper.brandPartnerId();\r\n\r\n Helper.getData(url)\r\n .then((paramData) => {\r\n if (paramData && paramData.length > 0) {\r\n let parameterValues: any = [];\r\n paramData.forEach((parameterValue: any) => {\r\n this.pushParameterValue(\r\n parameterValues,\r\n parameterValue,\r\n this.props.parameterType\r\n );\r\n });\r\n this.setState({ open: !state.open, values: parameterValues });\r\n }\r\n })\r\n .catch((error) => {\r\n console.log(error);\r\n });\r\n } else {\r\n this.setState({ open: !state.open });\r\n }\r\n }\r\n }\r\n\r\n getSelectedParameter(): string {\r\n if (this.props.selectedParameterValue != null)\r\n return this.props.selectedParameterValue;\r\n \r\n // Disabled fields\r\n if (this.props && this.props.defaultValue) {\r\n const defaultValue = this.props.defaultValue;\r\n return Helper.getLocalizedValueOrNull(defaultValue.brandValue) ?? Helper.getLocalizedValueOrNull(defaultValue.value) ?? defaultValue.valueName ?? \"\";\r\n }\r\n return \"\";\r\n }\r\n getSelectedParameterTag(): string {\r\n if (this.props.selectedParameterTag != null)\r\n return this.props.selectedParameterTag;\r\n \r\n return \"\";\r\n }\r\n canEdit() {\r\n return this.props.isEnabled;\r\n }\r\n\r\n setSelectedParameter(\r\n parameterValue: string,\r\n parameterValueId: string,\r\n customValue: string,\r\n keepOpen?: boolean,\r\n close?: boolean\r\n ) {\r\n if (close) {\r\n this.setState({ open: false });\r\n } else {\r\n if (this.canEdit()) {\r\n let selectedParameter: any = {\r\n parameterId: this.props.parameterId,\r\n parameterValue: parameterValue,\r\n parameterValueId: parameterValueId,\r\n };\r\n (this.props as any).addSelectedParameter(selectedParameter);\r\n this.props.updateModelDetails(this.props.partId, this.props.parameterId, parameterValueId, customValue);\r\n if (!keepOpen) {\r\n this.setState({ open: false });\r\n }\r\n }\r\n }\r\n }\r\n setSelectedParameterTag(id: string, unselected: boolean) {\r\n const selectedParameterTag: any = {\r\n parameterId: this.props.parameterId,\r\n tag: id,\r\n unselect: unselected,\r\n };\r\n (this.props as any).addSelectedParameterTag(selectedParameterTag);\r\n }\r\n\r\n setDefaultParameter(parameterValue: string, parameterValueId: string) {\r\n let selectedParameter: any = {\r\n parameterId: this.props.parameterId,\r\n parameterValue: parameterValue,\r\n parameterValueId: parameterValueId,\r\n };\r\n (this.props as any).addDefaultParameter(selectedParameter);\r\n }\r\n\r\n setSelectedColorParameter(parameterValue: string, parameterValueId: string) {\r\n let selectedParameter: any = {\r\n parameterId: this.props.parameterId,\r\n parameterValue: parameterValue,\r\n parameterValueId: parameterValueId,\r\n };\r\n (this.props as any).addSelectedParameter(selectedParameter);\r\n setTimeout(() => this.setState({ open: false }), 500);\r\n }\r\n\r\n render() {\r\n const {\r\n state: { open, values },\r\n props: { parameterId, parameterName, parameterType, showPicture },\r\n } = this;\r\n const canEdit = this.canEdit();\r\n\r\n let defaultValue = { value: \"\", name: \"\" };\r\n let parameterValuesList: any = null;\r\n let selectedValue = this.getSelectedParameter();\r\n const selectedTag = this.getSelectedParameterTag();\r\n let parameterDisabled = false;\r\n let hasImages = showPicture; //If true show popup else dropdown\r\n\r\n if (parameterType === dataType.color) {\r\n let colors: any = [];\r\n values.forEach((value: any) => {\r\n try {\r\n if (value.value.indexOf(\"#\") >= 0 && value.value.indexOf(\"|\") >= 0) {\r\n let colorName = value.value.split(\"|\")[0];\r\n if (colors.indexOf(colorName) === -1)\r\n colors.push(value.value.split(\"|\")[0]);\r\n } else {\r\n colors.push(value.value);\r\n }\r\n } catch (err) {}\r\n });\r\n\r\n parameterValuesList = (\r\n \r\n this.setSelectedParameter(name, id, \"\")\r\n }\r\n setSelectedParameterTag={(id: string, unselected: boolean) =>\r\n this.setSelectedParameterTag(id, unselected)\r\n }\r\n selectedTag={selectedTag}\r\n values={values}\r\n selectedValue={selectedValue}\r\n parameterId={parameterId}\r\n />\r\n );\r\n } else if (parameterType === dataType.integer) {\r\n let min = 0;\r\n let max = 0;\r\n let initialValues = this.props.initialValues;\r\n if (initialValues && initialValues.length > 0) {\r\n if (initialValues[0].range) {\r\n const range = initialValues[0].range;\r\n min = range.min;\r\n max = range.max;\r\n }\r\n }\r\n parameterDisabled = min === max;\r\n if (parameterDisabled) {\r\n parameterValuesList = [];\r\n } else {\r\n parameterValuesList = (\r\n this.setSelectedParameter(name, \"\", value, keepOpen, close)}\r\n selectedValue={selectedValue}\r\n parameterId={parameterId}\r\n />\r\n );\r\n }\r\n } else if (hasImages) {\r\n parameterValuesList = (\r\n \r\n this.setSelectedParameter(name, id, \"\")\r\n }\r\n setSelectedParameterTag={(id: string, unselected: boolean) =>\r\n this.setSelectedParameterTag(id, unselected)\r\n }\r\n values={values}\r\n selectedValue={selectedValue}\r\n selectedTag={selectedTag}\r\n parameterId={parameterId}\r\n />\r\n );\r\n } else {\r\n parameterValuesList = values.map((value: any, k: string) => {\r\n let title = Helper.getLocalizedValueOrNull(value.brandValue) ?? Helper.getLocalizedValueOrNull(value.value) ?? value.valueName;\r\n if (value.isDefault) {\r\n // eslint-disable-next-line\r\n defaultValue = value.value;\r\n return (\r\n \r\n this.setSelectedParameter(title, value.id, \"\")\r\n }\r\n >\r\n {title}\r\n \r\n );\r\n } else {\r\n return (\r\n \r\n this.setSelectedParameter(title, value.id, \"\")\r\n }\r\n >\r\n {title}\r\n \r\n );\r\n }\r\n });\r\n }\r\n return (\r\n \r\n \r\n
\r\n {!parameterDisabled ? (\r\n this.parameterToggle()}\r\n >\r\n \r\n {selectedValue}\r\n {canEdit ? (\r\n {\"\r\n ) : null}\r\n \r\n {parameterValuesList}\r\n \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 default Parameter;\r\n\r\nexport default connect(\r\n null, // (state: any) => state.configurator,\r\n (dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(Parameter);\r\n","import React from 'react';\r\nimport { Input } from 'reactstrap';\r\nimport Helper from '../Helper';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../store/Configurator';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport locale from '../Locale';\r\ninterface IProps extends RouteComponentProps {\r\n\thasDocument: boolean | undefined;\r\n\tcomment: string | undefined;\r\n\tconfigurationId: string | undefined;\r\n}\r\ninterface IState {\r\n\tcomment: string;\r\n}\r\nclass Comment extends React.Component {\r\n\tprivate timeout: any;\r\n\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.timeout = 0;\r\n\r\n\t\tthis.state = {\r\n\t\t\tcomment: this.props.comment || '',\r\n\t\t};\r\n\t}\r\n\taddCategoryComment(query: string) {\r\n\t\tlet url = '/configurator/' + this.props.configurationId + '/updatecomment';\r\n\t\tlet body = {\r\n\t\t\tComment: query,\r\n\t\t};\r\n\t\tconst _this = this;\r\n\t\tHelper.postData(url, JSON.stringify(body))\r\n\t\t\t.then((saveData) => {\r\n\t\t\t\tif (saveData) {\r\n\t\t\t\t\tif (saveData.Message && saveData.Message.length > 0) {\r\n\t\t\t\t\t\t(this.props as any).setError(locale.comment, saveData.Message);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t(_this.props as any).saveConfigurationComment(query);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\thandleChange(e: any) {\r\n\t\tconst state: IState = this.state;\r\n\t\tconst { target } = e;\r\n\t\tconst value = target.value;\r\n\t\tstate.comment = value;\r\n\t\tconst _this = this;\r\n\t\tthis.setState(state);\r\n\t\tif (this.timeout) clearTimeout(this.timeout);\r\n\t\tthis.timeout = setTimeout(() => {\r\n\t\t\t_this.addCategoryComment(value);\r\n\t\t}, 1000);\r\n\t}\r\n\trender() {\r\n\t\tconst disabled = false;\r\n\t\treturn (\r\n\t\t\t this.handleChange(e)}\r\n\t\t\t\tvalue={this.state.comment}\r\n\t\t\t\tname='text'\r\n\t\t\t/>\r\n\t\t);\r\n\t}\r\n}\r\nexport default connect(null, (dispatch) => bindActionCreators(actionCreators, dispatch))(Comment);\r\n","import React from 'react';\r\nimport { Collapse, NavbarToggler, NavbarBrand, Row, Col } from 'reactstrap';\r\n\r\nimport './Configurator.css';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../store/Configurator';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport Parameter from './Parameter';\r\nimport locale from '../Locale';\r\nimport Comment from './Comment';\r\nimport Button from './Button';\r\nimport { comment_category, deepCompare } from '../Helper';\r\n\r\ninterface IProps extends RouteComponentProps {\r\n\tpart: any;\r\n\tstep: number;\r\n\tselectedParameters: any;\r\n\tcategoryComments: any;\r\n\tcategories: any;\r\n\tselectedParametersTags: any;\r\n\thasDocument: boolean | undefined;\r\n\tcomment: string | undefined;\r\n\tconfigurationId: string | undefined;\r\n\tupdateImage?(): void;\r\n}\r\ninterface IState {\r\n\tcategories: any;\r\n}\r\nclass Categories extends React.Component {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.updateModelDetails = this.updateModelDetails.bind(this);\r\n\r\n\t\tthis.state = { categories: props.categories };\r\n\t}\r\n\r\n\tstatic getDerivedStateFromProps(nextProps: any, prevState: any) {\r\n\t\tif (nextProps.categories !== prevState?.categories) return { categories: nextProps.categories };\r\n\r\n\t\treturn null;\r\n\t}\r\n\r\n\tshouldComponentUpdate(nextProps: Readonly, nextState: Readonly, nextContext: any): boolean {\r\n\t\treturn !deepCompare(this.props, nextProps, true) || !deepCompare(this.state, nextState, true);\r\n\t}\r\n\r\n\tupdateModelDetails(parameterPartId: string, parameterId: string, parameterValueId: string, customValue: string) {\r\n\t\t(this.props as any).updateCategories(parameterPartId, parameterId, parameterValueId, customValue);\r\n\t}\r\n\tgetSelectedParameter(parameterId: string): string {\r\n\t\tlet selectedParameters = this.props.selectedParameters || [];\r\n\t\tif (this.props.selectedParameters) {\r\n\t\t\tfor (let i = 0; i < this.props.selectedParameters.length; i++) {\r\n\t\t\t\tif (selectedParameters[i].parameterId === parameterId) {\r\n\t\t\t\t\treturn selectedParameters[i].parameterValue;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn '';\r\n\t}\r\n\r\n\tcategoryToggle(i: number) {\r\n\t\tlet state = this.state;\r\n\t\tstate.categories[i].open = !state.categories[i].open;\r\n\t\tthis.setState(state);\r\n\t\tif (state.categories[i].open) (this.props as any).setStep(i);\r\n\t}\r\n\r\n\tfiltersReset() {\r\n\t\t(this.props as any).clearPart();\r\n\t\t(this.props as any).buildCategories(null, this.props.part.id, null);\r\n\t}\r\n\r\n\tnextStep(): void {\r\n\t\tlet step = this.props.step;\r\n\t\tif (this.state.categories.length - 1 > step)\r\n\t\t\t//TMP TODO length-1, just for comment\r\n\t\t\t(this.props as any).incrementStep();\r\n\t}\r\n\r\n\tprevStep(): void {\r\n\t\tlet step = this.props.step;\r\n\t\tif (step > 0) (this.props as any).decrementStep();\r\n\t}\r\n\r\n\tsetStep(i: number): void {\r\n\t\t(this.props as any).setStep(i);\r\n\t}\r\n\r\n\trenderCategoriesRecursion(categories: any, isSubCategory: boolean): any {\r\n\t\tif (!categories) {\r\n\t\t\treturn [];\r\n\t\t}\r\n\t\tcategories.sort((a: any, b: any) => parseInt(a.order) - parseInt(b.order));\r\n\t\tconst step = this.props.step || 0;\r\n\t\tconst categoriesList = categories.map((category: any, i: number) => {\r\n\t\t\tlet subsubcategories: any = [];\r\n\t\t\tif (category.categories && category.categories.length > 0) {\r\n\t\t\t\tsubsubcategories = this.renderCategoriesRecursion(category.categories, true);\r\n\t\t\t}\r\n\t\t\tcategory.open = false;\r\n\t\t\tif (i === step) category.open = true;\r\n\r\n\t\t\tlet parameterList = [];\r\n\t\t\tparameterList = category.parameters.map((parameter: any, j: number) => {\r\n\t\t\t\tlet defaultValue = null;\r\n\t\t\t\tif (parameter.values && parameter.values.length > 0) {\r\n\t\t\t\t\tdefaultValue = parameter.values[0];\r\n\t\t\t\t}\r\n\t\t\t\treturn (\r\n\t\t\t\t\t x.parameterId === parameter.id && x.parameterValue != null)?.parameterValue\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tselectedParameterTag={this.props.selectedParametersTags?.find((x: any) => x.parameterId === parameter.id).tag}\r\n\t\t\t\t\t\tpartId={parameter.partId}\r\n\t\t\t\t\t\tkey={parameter.id}\r\n\t\t\t\t\t\tdefaultValue={defaultValue}\r\n\t\t\t\t\t\tupdateModelDetails={this.updateModelDetails}\r\n\t\t\t\t\t/>\r\n\t\t\t\t);\r\n\t\t\t});\r\n\r\n\t\t\t// Comment category\r\n\t\t\tif (category.id === comment_category) {\r\n\t\t\t\tconsole.log('categoryFound', isSubCategory);\r\n\t\t\t\tif (isSubCategory) {\r\n\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t{category.name}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t);\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t this.categoryToggle(i)} className={`text-uppercase ${category.open ? 'disable-cursor' : ''}`}>\r\n\t\t\t\t\t\t\t\t{category.name}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t this.categoryToggle(i)} />\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{/* {renderComment} */}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t} else if (isSubCategory) {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{category.name}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t{parameterList}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{subsubcategories}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t);\r\n\t\t\t} else {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t this.categoryToggle(i)} className={`text-uppercase ${category.open ? 'disable-cursor' : ''}`}>\r\n\t\t\t\t\t\t\t{category.name}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t this.categoryToggle(i)} />\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{parameterList}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{subsubcategories}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t});\r\n\t\treturn categoriesList;\r\n\t}\r\n\trender() {\r\n\t\tconst categories = this.state.categories;\r\n\r\n\t\tconst step = this.props.step || 0;\r\n\r\n\t\tlet categoriesList: any = this.renderCategoriesRecursion(categories, false);\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t this.nextStep()}\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t{locale.next}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
this.filtersReset()}>\r\n\t\t\t\t\t\t\t{locale.clearConfiguration}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t{categoriesList}\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\nexport default connect(null, (dispatch) => bindActionCreators(actionCreators, dispatch))(Categories);\r\n","import React from \"react\";\r\nimport Loading from \"react-fullscreen-loading\";\r\n\r\nconst DelayedLoading: React.FC<{loaderColor: any}> = ({ loaderColor }) => {\r\n const [show, setShow] = React.useState(false);\r\n\r\n React.useEffect(() => {\r\n setTimeout(() => setShow(true), 2000);\r\n document.body.style.pointerEvents = \"none\";\r\n\r\n return () => {\r\n document.body.style.pointerEvents = \"unset\";\r\n }\r\n }, []);\r\n\r\n return show ? : null;\r\n}\r\n\r\nexport default DelayedLoading;","import React, { Fragment } from 'react';\r\nimport { Navbar, Row, Col, Modal, ModalHeader, ModalBody, FormGroup, ModalFooter } from 'reactstrap';\r\nimport './Configurator.css';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../store/Configurator';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport Part from './Part';\r\nimport Categories from './Categories';\r\nimport queryString from 'query-string';\r\nimport locale from '../Locale';\r\nimport Button from './Button';\r\nimport Helper from '../Helper';\r\nimport Loading from 'react-fullscreen-loading';\r\nimport DelayedLoading from './Loading';\r\n\r\nconst Tree = (data: any) => (\r\n\t
    \r\n\t\t{data &&\r\n\t\t\tArray.isArray(data.data) &&\r\n\t\t\tdata.data.map((item: any) => (\r\n\t\t\t\t
  • \r\n\t\t\t\t\t{item.Title} {item.PartCode}\r\n\t\t\t\t\t{item.Childs && }\r\n\t\t\t\t
  • \r\n\t\t\t))}\r\n\t
\r\n);\r\n\r\ninterface IProps extends RouteComponentProps {\r\n\tpart: any;\r\n\tstep: number;\r\n\tselectedParameters: any;\r\n\tcategoryComments: any;\r\n\tcategories: any;\r\n\tconfiguration: any;\r\n\ttree: any;\r\n\ttreeModal: boolean;\r\n\tloading: boolean;\r\n\tanonymousToken: string;\r\n}\r\n\r\ninterface IState {\r\n\tupdate: boolean;\r\n\tsaved: false;\r\n\tsaveMessage: any;\r\n}\r\n\r\nclass ConfiguratorStep2 extends React.Component {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.updateImage = this.updateImage.bind(this);\r\n\r\n\t\tthis.state = {\r\n\t\t\tupdate: false,\r\n\t\t\tsaved: false,\r\n\t\t\tsaveMessage: null,\r\n\t\t};\r\n\t}\r\n\tupdateImage() {\r\n\t\tthis.setState({ update: !this.state.update });\r\n\t}\r\n\tshouldComponentUpdate(nextProps: any, nextState: any) {\r\n\t\treturn (\r\n\t\t\tnextProps.categories !== this.props.categories ||\r\n\t\t\tthis.props.configuration.loading !== nextProps.configuration.loading ||\r\n\t\t\tnextProps.treeModal !== this.props.treeModal ||\r\n\t\t\tnextProps.loading !== this.props.loading ||\r\n\t\t\tnextProps.step !== this.props.step ||\r\n\t\t\tnextProps.selectedParameters !== this.props.selectedParameters\r\n\t\t);\r\n\t}\r\n\tcomponentDidMount() {\r\n\t\t//Get configuration id from url\r\n\t\tconst queryValues = queryString.parse(this.props.location.search);\r\n\t\tif (queryValues && queryValues.id) {\r\n\t\t\t(this.props as any).buildCategories(queryValues.id, null, null);\r\n\t\t}\r\n\t}\r\n\tnextPage() {\r\n\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/configurator/confirmation?bpi=' + Helper.brandPartnerId());\r\n\t}\r\n\ttoggleSaveDialog() {\r\n\t\t(this.props as any).setTreeModal(!this.props.treeModal);\r\n\t}\r\n\tsendInquiry() {\r\n\t\tthis.setState({ saveMessage: locale.saving + '...', saved: false });\r\n\t\t(this.props as any).setLoading(true);\r\n\r\n\t\tconst state: IState = this.state;\r\n\t\tif (this.props.configuration.configurationId) {\r\n\t\t\tlet url = '/cart/' + this.props.configuration.configurationId;\r\n\r\n\t\t\tconst body = {\r\n\t\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\t\tUserTokenId: this.props.anonymousToken,\r\n\t\t\t\tCopy: false,\r\n\t\t\t};\r\n\r\n\t\t\tHelper.postData(url, JSON.stringify(body))\r\n\t\t\t\t.then((data) => {\r\n\t\t\t\t\tif (data && data.UserToken) {\r\n\t\t\t\t\t\tif (data.UserToken !== this.props.anonymousToken) {\r\n\t\t\t\t\t\t\t(this.props as any).setAnonymousToken(data.UserToken);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t(this.props as any).setConfigurationPublished(true);\r\n\t\t\t\t\t\t(this.props as any).setLoading(false);\r\n\t\t\t\t\t\tthis.openInquiryDialog();\r\n\t\t\t\t\t} else if (data && data.Message) {\r\n\t\t\t\t\t\t(this.props as any).setLoading(false);\r\n\t\t\t\t\t\tstate.saveMessage = data.Message;\r\n\t\t\t\t\t\tthis.setState(state);\r\n\t\t\t\t\t\tthis.toggleSaveDialog();\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.catch((error) => {\r\n\t\t\t\t\t(this.props as any).setLoading(false);\r\n\t\t\t\t\tstate.saveMessage = error.message;\r\n\t\t\t\t\tthis.setState(state);\r\n\t\t\t\t});\r\n\t\t}\r\n\t}\r\n\topenInquiryDialog() {\r\n\t\t(this.props as any).setInquiryDialogOpen(true);\r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{this.props.loading ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{this.props.configuration.loading ? : null}\r\n\t\t\t\t\t\t\t\t\t{!this.props.configuration.loading && this.props.categories && this.props.categories.length > 0 ? (\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t{!Helper.userLoggedIn() ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t): (\r\n\t\t\t\t\t\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{Helper.userHeadOfSales() && Helper.userIsParentPartner() && ( this.toggleTreeModal()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.details}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{Helper.userAdmin() ? (\r\n\t\t\t\t\t\t\t\t this.toggleTreeModal()}>\r\n\t\t\t\t\t\t\t\t\t this.toggleTreeModal()}>{locale.treeDetails}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t this.toggleTreeModal()}>\r\n\t\t\t\t\t\t\t\t\t this.toggleTreeModal()}>{locale.cartSavingSuccess}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{this.state.saveMessage}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{this.state.saved ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n\r\n\ttoggleTreeModal() {\r\n\t\t(this.props as any).setTreeModal(!this.props.treeModal);\r\n\t}\r\n}\r\n\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(ConfiguratorStep2);\r\n","import React, { Fragment } from 'react';\r\nimport { Row, Col, Modal, ModalHeader, ModalBody, ModalFooter, UncontrolledCollapse, NavbarBrand } from 'reactstrap';\r\nimport './Configurator.css';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../store/Configurator';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport Helper from '../Helper';\r\nimport locale from '../Locale';\r\nimport Notify from './Notify';\r\nimport Part from './Part';\r\nimport Button from './Button';\r\nimport queryString from 'query-string';\r\nimport Loading from 'react-fullscreen-loading';\r\n\r\ninterface IState {\r\n\tsaveChoiceModal: boolean;\r\n\tnotifyError: string;\r\n\tcategories: any;\r\n\tsaveTitle: any;\r\n\tsaveMessage: any;\r\n\taddingDisabled: boolean;\r\n\tsent: boolean;\r\n\trejected: boolean;\r\n\tapproved: boolean;\r\n\trejectedSent: boolean;\r\n\tapprovedSent: boolean;\r\n\toverview: any;\r\n\tconfigurationPrice: any;\r\n\tshowZeroPrices: boolean;\r\n\ttextConfirmation: string;\r\n\tsendConfirmationModal: boolean;\r\n\tsaved: boolean;\r\n\tloading: boolean;\r\n\tcanSave: boolean;\r\n\tinquiryModal: boolean;\r\n}\r\ninterface IOwnProps extends RouteComponentProps {\r\n\tpart: any;\r\n\tstep: number;\r\n\tselectedParameters: any;\r\n\tconfiguration: any;\r\n\tdocument: any;\r\n\tcategories: any;\r\n\tanonymousToken: string;\r\n\ttheme?: any;\r\n\tcartAddingDisabled: boolean;\r\n}\r\ninterface IStateProps {}\r\ntype ActionCreators = typeof actionCreators;\r\ntype IProps = IOwnProps & ActionCreators & IStateProps;\r\n\r\nclass ConfiguratorStep3 extends React.Component {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.state = {\r\n\t\t\tsaveChoiceModal: false,\r\n\t\t\tnotifyError: '',\r\n\t\t\tcategories: [],\r\n\t\t\tsaveMessage: null,\r\n\t\t\tsaveTitle: null,\r\n\t\t\taddingDisabled: this.props.cartAddingDisabled,\r\n\t\t\tsent: false,\r\n\t\t\trejected: false,\r\n\t\t\tapproved: false,\r\n\t\t\trejectedSent: false,\r\n\t\t\tapprovedSent: false,\r\n\t\t\toverview: null,\r\n\t\t\tconfigurationPrice: 0,\r\n\t\t\tshowZeroPrices: false,\r\n\t\t\ttextConfirmation: '',\r\n\t\t\tsendConfirmationModal: false,\r\n\t\t\tsaved: false,\r\n\t\t\tloading: false,\r\n\t\t\tcanSave: false,\r\n\t\t\tinquiryModal: false,\r\n\t\t};\r\n\t}\r\n\ttoggleSendConfirmationModal() {\r\n\t\tlet state: IState = this.state;\r\n\t\tstate.textConfirmation = '';\r\n\t\tstate.rejectedSent = false;\r\n\t\tstate.approvedSent = false;\r\n\t\tstate.sendConfirmationModal = !state.sendConfirmationModal;\r\n\t\tthis.setState(state);\r\n\t}\r\n\tcomponentDidUpdate(nextProps: any) {\r\n\t\tif (\r\n\t\t\tnextProps.categories !== this.props.categories ||\r\n\t\t\tthis.props.configuration !== nextProps.configuration ||\r\n\t\t\tthis.props.part.price !== nextProps.part.price\r\n\t\t) {\r\n\t\t\tthis.setState({ canSave: false });\r\n\t\t\tif (this.props.configuration.loading === nextProps.configuration.loading && this.props.configuration.image === nextProps.configuration.image) {\r\n\t\t\t\tthis.getOverview(this.props.configuration.configurationId);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tcomponentDidMount() {\r\n\t\t//Get configuration id from url\r\n\t\tthis.setState({ loading: true, canSave: false });\r\n\t\tconst queryValues = queryString.parse(this.props.location.search);\r\n\t\tif (queryValues && queryValues.id) {\r\n\t\t\tif (queryValues.bpi) {\r\n\t\t\t\tif (queryValues.bpi.toString() !== Helper.brandPartnerId()) {\r\n\t\t\t\t\tthis.getTheme(queryValues.bpi.toString());\r\n\t\t\t\t}\r\n\t\t\t\tlocalStorage.setItem('brandPartnerId', queryValues.bpi.toString());\r\n\t\t\t}\r\n\t\t\tthis.getFooter();\r\n\r\n\t\t\tthis.props.buildCategories(queryValues.id.toString(), undefined, undefined, true);\r\n\t\t\tthis.getOverview(queryValues.id.toString());\r\n\t\t} else if (this.props.configuration && this.props.configuration.configurationId) {\r\n\t\t\tthis.getOverview(this.props.configuration.configurationId);\r\n\t\t}\r\n\t}\r\n\thandleChange(e: React.ChangeEvent) {\r\n\t\tconst state: any = this.state;\r\n\t\tconst { target } = e;\r\n\t\tconst value = target.value;\r\n\t\tstate[target.name] = value;\r\n\t\tstate.saved = false;\r\n\t\tthis.setState(state);\r\n\t}\r\n\r\n\tgetTheme(brandPartnerId: string) {\r\n\t\tconst url = '/brand/' + brandPartnerId + '/data';\r\n\t\tHelper.getData(url).then((data: any) => {\r\n\t\t\tif (data) {\r\n\t\t\t\tconst logo = (data.Style && data.Style.HeaderLogo) || '';\r\n\t\t\t\tconst logotype = (data.Style && data.Style.HeaderLogotype) || '';\r\n\t\t\t\tconst title = Helper.getLocalizedName(data.BrandName) || '';\r\n\t\t\t\tconst header = (data.Style && Helper.getLocalizedName(data.Style.HeaderText)) || '';\r\n\t\t\t\tconst color = (data.Style && data.Style.BackgroundColor) || '';\r\n\t\t\t\tconst headerFontColor = (data.Style && data.Style.HeaderFontColor) || '';\r\n\t\t\t\tconst buttonColor = (data.Style && data.Style.ButtonColor) || '';\r\n\t\t\t\tconst buttonFontColor = (data.Style && data.Style.ButtonFontColor) || '';\r\n\r\n\t\t\t\tconst theme = {\r\n\t\t\t\t\tlogo: logo,\r\n\t\t\t\t\ttitle: title,\r\n\t\t\t\t\theader: header,\r\n\t\t\t\t\tcolor: color,\r\n\t\t\t\t\theaderFontColor,\r\n\t\t\t\t\tbuttonColor,\r\n\t\t\t\t\tbuttonFontColor,\r\n\t\t\t\t};\r\n\t\t\t\tlocalStorage.setItem('theme', JSON.stringify(theme));\r\n\t\t\t\tlocalStorage.setItem('brandPartnerId', data.BrandPartnerId);\r\n\r\n\t\t\t\t(this.props as any).setBrand(logo, logotype, title, header, color, headerFontColor, data.BrandPartnerId, buttonColor, buttonFontColor);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tgetFooter() {\r\n\t\tconst url = '/footer/' + Helper.brandPartnerId();\r\n\t\tHelper.getData(url).then((data: any) => {\r\n\t\t\tif (data) {\r\n\t\t\t\tconst footer1text = data.Footer1text || '';\r\n\t\t\t\tconst footer1url = data.Footer1url || '';\r\n\t\t\t\tconst footer2text = data.Footer2text || '';\r\n\t\t\t\tconst footer2url = data.Footer2url || '';\r\n\t\t\t\tconst footer3text = data.Footer3text || '';\r\n\t\t\t\tconst footer3url = data.Footer3url || '';\r\n\t\t\t\tconst footer = {\r\n\t\t\t\t\tfooter1text: footer1text,\r\n\t\t\t\t\tfooter1url: footer1url,\r\n\t\t\t\t\tfooter2text: footer2text,\r\n\t\t\t\t\tfooter2url: footer2url,\r\n\t\t\t\t\tfooter3text: footer3text,\r\n\t\t\t\t\tfooter3url: footer3url,\r\n\t\t\t\t};\r\n\t\t\t\tlocalStorage.setItem('footer', JSON.stringify(footer));\r\n\t\t\t\t(this.props as any).setFooter(footer1text, footer1url, footer2text, footer2url, footer3text, footer3url);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tgetOverview(id: string) {\r\n\t\tif (this.props.document && this.props.document.documentId && Helper.userAdmin()) {\r\n\t\t\tlet url = '';\r\n\t\t\tif (Helper.userLoggedIn()) {\r\n\t\t\t\turl = '/configurator/auth/' + id + '/overview?brandPartnerId=' + Helper.brandPartnerId() + '&documentId=' + this.props.document.documentId;\r\n\t\t\t} else {\r\n\t\t\t\turl = '/configurator/' + id + '/overview?brandPartnerId=' + Helper.brandPartnerId();\r\n\t\t\t}\r\n\t\t\tHelper.getData(url).then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.saving, data.Message);\r\n\t\t\t\t\tthis.setState({ loading: false, canSave: true });\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\toverview: data.Categories,\r\n\t\t\t\t\t\tconfigurationPrice: data.ConfigurationPrice,\r\n\t\t\t\t\t\tshowZeroPrices: data.ShowZeroPrices,\r\n\t\t\t\t\t\tloading: false,\r\n\t\t\t\t\t\tcanSave: true,\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\tconst queryValueId = queryString.parse(this.props.location.search).id || '';\r\n\t\t\tif (id && id.length && (id !== queryValueId || !this.state.overview)) {\r\n\t\t\t\tlet url = '';\r\n\t\t\t\tif (Helper.userLoggedIn()) {\r\n\t\t\t\t\turl = '/configurator/auth/' + id + '/overview?brandPartnerId=' + Helper.brandPartnerId();\r\n\t\t\t\t} else {\r\n\t\t\t\t\turl = '/configurator/' + id + '/overview?brandPartnerId=' + Helper.brandPartnerId();\r\n\t\t\t\t}\r\n\t\t\t\tHelper.getData(url).then((data) => {\r\n\t\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t\t(this.props as any).setError(locale.saving, data.Message);\r\n\t\t\t\t\t\tthis.setState({ loading: false, canSave: true });\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\toverview: data.Categories,\r\n\t\t\t\t\t\t\tconfigurationPrice: data.ConfigurationPrice,\r\n\t\t\t\t\t\t\tshowZeroPrices: data.ShowZeroPrices,\r\n\t\t\t\t\t\t\tloading: false,\r\n\t\t\t\t\t\t\tcanSave: true,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\ttoggleSaveChoiceModal(openInquiryDialog: boolean) {\r\n\t\tif (!this.props.configuration.configurationId) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (\r\n\t\t\tthis.props.document &&\r\n\t\t\tthis.props.document.documentId &&\r\n\t\t\tthis.props.configuration &&\r\n\t\t\tthis.props.configuration.configurationId &&\r\n\t\t\tthis.props.configuration.configurationPublished &&\r\n\t\t\tthis.props.configuration.hasDocument &&\r\n\t\t\tHelper.userAdmin()\r\n\t\t) {\r\n\t\t\t//Admin mode - update existing configuration on existing selected document\r\n\t\t\tthis.setState({ loading: true });\r\n\t\t\tconst url =\r\n\t\t\t\t'/configurator/' +\r\n\t\t\t\tthis.props.configuration.configurationId +\r\n\t\t\t\t'/clone/' +\r\n\t\t\t\tthis.props.document.documentId +\r\n\t\t\t\t'?brandPartnerId=' +\r\n\t\t\t\tHelper.brandPartnerId();\r\n\r\n\t\t\tHelper.postData(url, '')\r\n\t\t\t\t.then((data) => {\r\n\t\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t\t(this.props as any).setError(locale.saving, data.Message);\r\n\t\t\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tif (data.ConfigurationId && data.DocumentConfigurationId) {\r\n\t\t\t\t\t\t\t(this.props as any).saveConfiguration(data.ConfigurationId, data.DocumentConfigurationId, data.DocumentPosition);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/admin/document/configurations');\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t(this.props as any).setError(locale.exception, locale.generalException);\r\n\t\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\t});\r\n\t\t} else if (\r\n\t\t\tthis.props.document &&\r\n\t\t\tthis.props.document.documentId &&\r\n\t\t\tthis.props.configuration &&\r\n\t\t\tthis.props.configuration.configurationId &&\r\n\t\t\tHelper.userAdmin()\r\n\t\t) {\r\n\t\t\t//Admin mode - add configuration to existing selected document\r\n\t\t\tthis.setState({ loading: true });\r\n\t\t\tlet urlConfiguration =\r\n\t\t\t\t'/document/' +\r\n\t\t\t\tthis.props.document.documentId +\r\n\t\t\t\t'?configurationId=' +\r\n\t\t\t\tthis.props.configuration.configurationId +\r\n\t\t\t\t'&brandPartnerId=' +\r\n\t\t\t\tHelper.brandPartnerId();\r\n\r\n\t\t\tif (this.props.configuration.position && this.props.configuration.position > 0) {\r\n\t\t\t\turlConfiguration += '&p=' + this.props.configuration.position;\r\n\t\t\t}\r\n\r\n\t\t\tHelper.postData(urlConfiguration, '')\r\n\t\t\t\t.then((data) => {\r\n\t\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t\t(this.props as any).setError(locale.saving, data.Message);\r\n\t\t\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/admin/document/configurations');\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => {\r\n\t\t\t\t\t(this.props as any).setError(locale.exception, locale.generalException);\r\n\t\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\t});\r\n\t\t} else {\r\n\t\t\t// Normal user\r\n\t\t\tif (\r\n\t\t\t\tthis.props.configuration &&\r\n\t\t\t\tthis.props.configuration.configurationPublished &&\r\n\t\t\t\t(this.props.anonymousToken || localStorage.getItem('userToken'))\r\n\t\t\t) {\r\n\t\t\t\t//open overwrite dialog if already published\r\n\t\t\t\tconst state: IState = this.state;\r\n\t\t\t\tstate.saved = false;\r\n\t\t\t\tstate.saveChoiceModal = !state.saveChoiceModal;\r\n\t\t\t\tstate.saveTitle = locale.cartSaving;\r\n\t\t\t\tstate.saveMessage = locale.cartOverride;\r\n\t\t\t\tstate.loading = false;\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t} else {\r\n\t\t\t\t//just publish if not yet published\r\n\t\t\t\tconst state: IState = this.state;\r\n\t\t\t\tstate.saved = false;\r\n\t\t\t\tstate.saveChoiceModal = !state.saveChoiceModal;\r\n\t\t\t\tstate.saveTitle = locale.cartSaving;\r\n\t\t\t\tstate.saveMessage = locale.saving + '...';\r\n\t\t\t\tstate.loading = true;\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t\tthis.addToCart(false, openInquiryDialog);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tsaveConfiguration(createNew: boolean) {\r\n\t\tthis.setState({ saveMessage: locale.saving + '...', saved: false });\r\n\t\tthis.addToCart(createNew, false);\r\n\t}\r\n\r\n\tprivate AddToCartMessage = () => {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{locale.cartSuccess}\r\n\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t this.openCart()}\r\n\t\t\t\t\tstyle={{ color: Helper.themeButtonFontColor(), backgroundColor: Helper.themeButtonColor() }}\r\n\t\t\t\t\taria-haspopup='true'\r\n\t\t\t\t\taria-expanded='false'\r\n\t\t\t\t\tclassName='bordered dropdown-toggle btn btn-secondary'\r\n\t\t\t\t>\r\n\t\t\t\t\t\r\n\t\t\t\t\t \r\n\t\t\t\t\t{locale.cart}\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t);\r\n\t};\r\n\taddToCart(copy: boolean, openInquiryDialog: boolean) {\r\n\t\tconst state: IState = this.state;\r\n\t\tif (this.props.configuration.configurationId) {\r\n\t\t\tlet url = '/cart/' + this.props.configuration.configurationId;\r\n\r\n\t\t\tconst body = {\r\n\t\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\t\tUserTokenId: this.props.anonymousToken,\r\n\t\t\t\tCopy: copy ? true : false,\r\n\t\t\t};\r\n\r\n\t\t\tHelper.postData(url, JSON.stringify(body))\r\n\t\t\t\t.then((data) => {\r\n\t\t\t\t\tif (data && data.UserToken) {\r\n\t\t\t\t\t\tif (data.UserToken !== this.props.anonymousToken) {\r\n\t\t\t\t\t\t\t(this.props as any).setAnonymousToken(data.UserToken);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t(this.props as any).setConfigurationPublished(true);\r\n\t\t\t\t\t\tstate.loading = false;\r\n\t\t\t\t\t\tstate.saved = true;\r\n\t\t\t\t\t\tstate.saveMessage = this.AddToCartMessage();\r\n\t\t\t\t\t\tstate.saveTitle = locale.cartSavingSuccess;\r\n\t\t\t\t\t\tthis.setState(state);\r\n\t\t\t\t\t\tif (openInquiryDialog) this.openInquiryDialog();\r\n\t\t\t\t\t} else if (data && data.Message) {\r\n\t\t\t\t\t\tstate.saveMessage = data.Message;\r\n\t\t\t\t\t\tstate.saved = true;\r\n\t\t\t\t\t\tstate.loading = false;\r\n\t\t\t\t\t\tthis.setState(state);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// Build configuration for new id\r\n\t\t\t\t\tif (copy) {\r\n\t\t\t\t\t\t(this.props as any).buildCategories(data.ConfigurationId);\r\n\t\t\t\t\t\t(this.props as any).setConfigurationPublished(true);\r\n\r\n\t\t\t\t\t\tstate.loading = false;\r\n\t\t\t\t\t\tthis.setState(state, () => this.getOverview(data.ConfigurationId));\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.catch((error) => {\r\n\t\t\t\t\tstate.notifyError = error.message;\r\n\t\t\t\t\tstate.saveMessage = error.message;\r\n\t\t\t\t\tstate.loading = false;\r\n\t\t\t\t\tstate.saved = true;\r\n\t\t\t\t\tthis.setState(state);\r\n\t\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\trenderCategoriesRecursion(categories: any, isSubCategory: boolean): any {\r\n\t\tif (!categories || categories.length === 0 || !Array.isArray(categories)) {\r\n\t\t\treturn [];\r\n\t\t}\r\n\t\tconst categoriesList = categories.map((category: any, i: number) => {\r\n\t\t\tlet subsubcategories: any = [];\r\n\t\t\tif (category.Categories && category.Categories.length > 0) {\r\n\t\t\t\tsubsubcategories = this.renderCategoriesRecursion(category.Categories, true);\r\n\t\t\t}\r\n\t\t\tcategory.open = true;\r\n\t\t\tlet parameterList = [];\r\n\t\t\tparameterList = category.Parameters.map((parameter: any, j: number) => {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{Helper.getLocalizedValueOrNull(parameter.ParameterBrandName) ??\r\n\t\t\t\t\t\t\t\tHelper.getLocalizedValueOrNull(parameter.ParameterTitle) ??\r\n\t\t\t\t\t\t\t\tparameter.ParameterName}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{Helper.getLocalizedValueOrNull(parameter.ParameterBrandValue) ??\r\n\t\t\t\t\t\t\t\tHelper.getLocalizedValueOrNull(parameter.ParameterValue) ??\r\n\t\t\t\t\t\t\t\tparameter.ParameterValueName}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{Helper.userLoggedIn() && (parameter.ParameterPrice !== 0 || category.ShowZeroPrices)\r\n\t\t\t\t\t\t\t\t? parameter.ParameterPrice.toLocaleString('de-DE', {\r\n\t\t\t\t\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\t\t\t\t\tcurrency: this.props.document.currency,\r\n\t\t\t\t\t\t\t\t })\r\n\t\t\t\t\t\t\t\t: ''}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t);\r\n\t\t\t});\r\n\t\t\tif (isSubCategory) {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{Helper.getLocalizedName(category.ParameterCategoryName)}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{parameterList}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{subsubcategories}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t);\r\n\t\t\t} else {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{Helper.getLocalizedName(category.ParameterCategoryName)}{' '}\r\n\t\t\t\t\t\t\t{Helper.userLoggedIn() && (category.ParameterCategoryPrice !== 0 || category.ShowZeroPrices) ? (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{category.ParameterCategoryPrice.toLocaleString('de-DE', {\r\n\t\t\t\t\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\t\t\t\t\tcurrency: this.props.document.currency,\r\n\t\t\t\t\t\t\t\t\t})}{' '}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{parameterList}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{subsubcategories}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t});\r\n\t\treturn categoriesList;\r\n\t}\r\n\tprevPage() {\r\n\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/configurator/configuration');\r\n\t}\r\n\topenCart() {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.saved = false;\r\n\t\tstate.saveChoiceModal = false;\r\n\t\tthis.setState(state);\r\n\t\t(this.props as any).setCartOpen(true);\r\n\t}\r\n\topenInquiryDialog() {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.saved = false;\r\n\t\tstate.saveChoiceModal = false;\r\n\t\tthis.setState(state);\r\n\t\t(this.props as any).setInquiryDialogOpen(true);\r\n\t}\r\n\tdownloadDocument() {\r\n\t\tconst url = '/configurator/' + this.props.configuration.configurationId + '/pricefile?documentId=' + this.props.document.documentId;\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\tconst value = data;\r\n\t\t\t\t\tlet link = document.createElement('a');\r\n\t\t\t\t\tlink.download = value.FileName;\r\n\t\t\t\t\tlink.href = `data:${value.MimeType};base64,${value.Contents}`;\r\n\t\t\t\t\tlink.click();\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\trender() {\r\n\t\tconst categoriesList: any = this.renderCategoriesRecursion(this.state.overview, false);\r\n\t\tconst hasDocument: boolean = this.props.document && this.props.document.documentId;\r\n\r\n\t\tlet buttons: any = null;\r\n\t\tconst disableEditDocument = this.props.document && this.props.document.disableEdit;\r\n\t\tif (\r\n\t\t\tthis.props.configuration &&\r\n\t\t\tthis.props.configuration.configurationId &&\r\n\t\t\tthis.props.configuration.documentConfigurationId &&\r\n\t\t\tthis.props.document &&\r\n\t\t\tthis.props.document.initialDocumentId &&\r\n\t\t\t!disableEditDocument\r\n\t\t) {\r\n\t\t\t//Admin edit - configuration is saved automatically after each change TODO: Change\r\n\t\t\tbuttons = (\r\n\t\t\t\t\r\n\t\t\t\t\t this.toggleSaveChoiceModal(false)}\r\n\t\t\t\t\t\tdisabled={!hasDocument || !this.state.canSave}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t{locale.saveConfigurationToDocument}\r\n\t\t\t\t\t\r\n\t\t\t\t\t{Helper.userHeadOfSales() && Helper.userIsParentPartner() ? (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t) : null}\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t} else if (Helper.userAdmin() && !disableEditDocument) {\r\n\t\t\t// Admin adding mode\r\n\t\t\tbuttons = (\r\n\t\t\t\t\r\n\t\t\t\t\t this.toggleSaveChoiceModal(false)}\r\n\t\t\t\t\t\tdisabled={!hasDocument || !this.state.canSave}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t{locale.saveConfigurationToDocument}\r\n\t\t\t\t\t\r\n\t\t\t\t\t{Helper.userHeadOfSales() && Helper.userIsParentPartner() ? (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t) : null}\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t} else if (!Helper.userAdmin() && !disableEditDocument) {\r\n\t\t\t//Normal save configuration mode for non admins\r\n\t\t\tbuttons = (\r\n\t\t\t\t this.toggleSaveChoiceModal(false)}\r\n\t\t\t\t\tdisabled={!this.state.canSave}\r\n\t\t\t\t>\r\n\t\t\t\t\t{locale.saveConfiguration}\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t}\r\n\t\tif (this.state.notifyError !== '') return ;\r\n\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{this.state.loading ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t this.toggleSaveChoiceModal(false)} className='inquiry-popup'>\r\n\t\t\t\t\t\t\t this.toggleSaveChoiceModal(false)}>{this.state.saveTitle}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{this.state.saveMessage}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{this.state.saved ? (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t) : this.state.saveMessage && this.state.saveMessage.toString().indexOf(locale.saving) < 0 ? (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{buttons}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t

{this.props.part && this.props.part.name}

\r\n\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.adminCalculationConfigurationPrice}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{Helper.userLoggedIn() && (this.state.configurationPrice > 0 || this.state.showZeroPrices)\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t? this.state.configurationPrice.toLocaleString('de-DE', {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcurrency: this.props.document.currency,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t })\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t: ''}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{categoriesList}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{!Helper.userLoggedIn() ?
* {locale.loginToViewPrices}
: null}\r\n\t\t\t\t\t\t\t\t\t{!Helper.userLoggedIn() && (\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t this.toggleSaveChoiceModal(true)}\r\n\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.sendInquiry}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(ConfiguratorStep3);\r\n","import React from 'react';\r\nimport { Row, Col, Label, Input, FormGroup, NavbarToggler, Collapse } from 'reactstrap';\r\nimport './Configurator.css';\r\nimport locale from '../Locale';\r\nimport Button from './Button';\r\nimport Helper, { documentType, projectStatus } from '../Helper';\r\nimport { BootstrapTable, TableHeaderColumn } from 'react-bootstrap-table';\r\n\r\ninterface IProps {\r\n\tsetUserContactData(documentTypeId: string, projectId: string, newProject: boolean, contactData: any, contactId: string): void;\r\n\tproject: { id: string; number: string; status: string };\r\n}\r\n\r\ninterface IState {\r\n\tAddressing: { value: string; validate: string };\r\n\tFirstName: { value: string; validate: string };\r\n\tLastName: { value: string; validate: string };\r\n\tEmail: { value: string; validate: string };\r\n\tTelephone: { value: string; validate: string };\r\n\tAddress: { value: string; validate: string };\r\n\tCity: { value: string; validate: string };\r\n\tZip: { value: string; validate: string };\r\n\tCountryId: string;\r\n\tCountries: any[];\r\n\tCompanyName: { value: string; validate: string };\r\n\tCompanyRegistration: { value: string; validate: string };\r\n\tCompanyVAT: { value: string; validate: string };\r\n\tMarketing: boolean;\r\n\tNotifications: boolean;\r\n\tPersonalData: boolean;\r\n\tSaveMessage: string;\r\n\tcontacts: any[];\r\n\texistingUser: boolean;\r\n\tnewUser: boolean;\r\n\tselectedId: string;\r\n\tDocumentTypes: any[];\r\n\tDocumentTypeId: string;\r\n\tProjectId: string;\r\n\tProjectStatusId: string;\r\n\tNewProject: boolean;\r\n}\r\n\r\nexport default class InquirySales extends React.Component {\r\n\tprivate timeout: any;\r\n\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.timeout = 0;\r\n\r\n\t\tthis.state = {\r\n\t\t\tAddressing: { value: '', validate: '' },\r\n\t\t\tFirstName: { value: '', validate: '' },\r\n\t\t\tLastName: { value: '', validate: '' },\r\n\t\t\tEmail: { value: '', validate: '' },\r\n\t\t\tTelephone: { value: '', validate: '' },\r\n\t\t\tAddress: { value: '', validate: '' },\r\n\t\t\tCity: { value: '', validate: '' },\r\n\t\t\tZip: { value: '', validate: '' },\r\n\t\t\tCountryId: '',\r\n\t\t\tCountries: [],\r\n\t\t\tCompanyName: { value: '', validate: '' },\r\n\t\t\tCompanyRegistration: { value: '', validate: '' },\r\n\t\t\tCompanyVAT: { value: '', validate: '' },\r\n\t\t\tMarketing: false,\r\n\t\t\tNotifications: false,\r\n\t\t\tPersonalData: false,\r\n\t\t\tSaveMessage: '',\r\n\t\t\tcontacts: [],\r\n\t\t\texistingUser: false,\r\n\t\t\tnewUser: true,\r\n\t\t\tselectedId: '',\r\n\t\t\tDocumentTypeId: documentType.documenttype_offer,\r\n\t\t\tDocumentTypes: [],\r\n\t\t\tProjectId: (this.props.project && this.props.project.id) || '',\r\n\t\t\tProjectStatusId: (this.props.project && this.props.project.status) || '',\r\n\t\t\tNewProject:\r\n\t\t\t\t!this.props.project ||\r\n\t\t\t\tthis.props.project.id === '' ||\r\n\t\t\t\tthis.props.project.id === '00000000-0000-0000-0000-000000000000' ||\r\n\t\t\t\tthis.props.project.status === projectStatus.closed ||\r\n\t\t\t\tthis.props.project.status === projectStatus.sending ||\r\n\t\t\t\tthis.props.project.status === projectStatus.sent\r\n\t\t\t\t\t? true\r\n\t\t\t\t\t: this.props.project && this.props.project.status === projectStatus.active\r\n\t\t\t\t\t? true\r\n\t\t\t\t\t: false,\r\n\t\t};\r\n\t}\r\n\tasync componentDidMount() {\r\n\t\tawait this.getCountries();\r\n\t\tawait this.getDocumentTypes();\r\n\t\tconst state: any = this.state;\r\n\t\tconst url = '/brand/' + Helper.brandPartnerId() + '/contacts';\r\n\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.saving, data.Message);\r\n\t\t\t\t} else if (data && data) {\r\n\t\t\t\t\tstate.contacts = data;\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t})\r\n\t\t\t.catch(() => {\r\n\t\t\t\t(this.props as any).setError(locale.exception, locale.generalException);\r\n\t\t\t});\r\n\t}\r\n\r\n\thandleCheckbox(e: any) {\r\n\t\tconst state: IState = this.state;\r\n\t\tconst { target } = e;\r\n\t\tif (target.name === 'NewProject') {\r\n\t\t\tstate.NewProject = !state.NewProject;\r\n\t\t}\r\n\t\tthis.setState(state);\r\n\t}\r\n\r\n\tasync getCountries() {\r\n\t\tconst data: any = await Helper.getData('/selection/countrylist');\r\n\t\tlet countriesFromApi = data\r\n\t\t\t.map((country: any) => {\r\n\t\t\t\treturn { value: country.CountryId, display: Helper.getLocalizedName(country.Name) };\r\n\t\t\t})\r\n\t\t\t.sort((a: any, b: any) => a.display.localeCompare(b.display));\r\n\t\tthis.setState({\r\n\t\t\tCountries: [\r\n\t\t\t\t{\r\n\t\t\t\t\tvalue: '',\r\n\t\t\t\t\tdisplay: locale.selectCountry,\r\n\t\t\t\t},\r\n\t\t\t].concat(countriesFromApi),\r\n\t\t});\r\n\t}\r\n\r\n\tasync getDocumentTypes() {\r\n\t\tconst data: any = await Helper.getData('/selection/documenttype/' + Helper.brandPartnerId());\r\n\t\tlet typesFromApi = data.map((type: any) => {\r\n\t\t\treturn { value: type.DocumentTypeId, display: Helper.getLocalizedName(type.Name) };\r\n\t\t});\r\n\t\tthis.setState({\r\n\t\t\tDocumentTypes: typesFromApi,\r\n\t\t});\r\n\t}\r\n\r\n\tvalidateEmail(e: any) {\r\n\t\tlet state = this.state;\r\n\t\tconst emailRex =\r\n\t\t\t/^(([^<>()[\\]\\\\.,;:\\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\t\tlet { validate } = state.Email;\r\n\t\tlet value = e.target.value;\r\n\t\tif (this.timeout) clearTimeout(this.timeout);\r\n\t\tthis.timeout = setTimeout(() => {\r\n\t\t\tif (emailRex.test(value)) {\r\n\t\t\t\tvalidate = 'has-success';\r\n\t\t\t} else {\r\n\t\t\t\tvalidate = 'has-danger';\r\n\t\t\t}\r\n\t\t\tstate.Email.validate = validate;\r\n\t\t\tthis.setState(state);\r\n\t\t}, 700);\r\n\t}\r\n\r\n\thandleChange(e: any) {\r\n\t\tconst state: any = this.state;\r\n\t\tconst { target } = e;\r\n\t\tif (target.type === 'checkbox') {\r\n\t\t\tstate[target.name] = target.checked;\r\n\t\t} else {\r\n\t\t\tstate[target.name].value = target.value;\r\n\t\t}\r\n\t\tthis.setState(state);\r\n\t}\r\n\r\n\tsetUserContactData() {\r\n\t\tconst state: IState = this.state;\r\n\t\tlet contactFormData: any = null;\r\n\t\tif (state.newUser && state.FirstName.value !== '' && state.LastName.value !== '' && state.Email.value !== '') {\r\n\t\t\tconst ContactData = {\r\n\t\t\t\tAddressing: state['Addressing'].value,\r\n\t\t\t\tFirstName: state['FirstName'].value,\r\n\t\t\t\tLastName: state['LastName'].value,\r\n\t\t\t\tEmail: state['Email'].value,\r\n\t\t\t\tTelephone: state['Telephone'].value,\r\n\t\t\t\tAddress: state['Address'].value,\r\n\t\t\t\tCity: state['City'].value,\r\n\t\t\t\tZip: state['Zip'].value,\r\n\t\t\t\tCountryId: state['CountryId'],\r\n\t\t\t\tCompanyName: state['CompanyName'].value,\r\n\t\t\t\tCompanyRegistration: state['CompanyRegistration'].value,\r\n\t\t\t\tCompanyVAT: state['CompanyVAT'].value,\r\n\t\t\t\tMarketing: state['Marketing'],\r\n\t\t\t\tNotifications: state['Notifications'],\r\n\t\t\t\tPersonalData: state['PersonalData'],\r\n\t\t\t};\r\n\t\t\tcontactFormData = {\r\n\t\t\t\tContactData: ContactData,\r\n\t\t\t\tDeliveryAddress: false,\r\n\t\t\t\tReceiptAddress: false,\r\n\t\t\t};\r\n\t\t\tthis.props.setUserContactData(state.DocumentTypeId, state.ProjectId, state.NewProject, contactFormData, '');\r\n\t\t} else if (state.existingUser && state.selectedId !== '') {\r\n\t\t\tthis.props.setUserContactData(state.DocumentTypeId, state.ProjectId, state.NewProject, null, state.selectedId);\r\n\t\t}\r\n\t}\r\n\r\n\tusersToggle(i: number) {\r\n\t\tif (i === 1) {\r\n\t\t\tthis.setState({ newUser: true, existingUser: false });\r\n\t\t} else {\r\n\t\t\tthis.setState({ newUser: false, existingUser: true });\r\n\t\t}\r\n\t}\r\n\r\n\thandleRowSelect(row: any) {\r\n\t\tthis.setState({ selectedId: row.ContactId });\r\n\t}\r\n\trender() {\r\n\t\tconst {\r\n\t\t\tAddressing,\r\n\t\t\tEmail,\r\n\t\t\tFirstName,\r\n\t\t\tLastName,\r\n\t\t\tAddress,\r\n\t\t\tCity,\r\n\t\t\tZip,\r\n\t\t\tTelephone,\r\n\t\t\tCompanyName,\r\n\t\t\tCompanyRegistration,\r\n\t\t\tCompanyVAT,\r\n\t\t\texistingUser,\r\n\t\t\tnewUser,\r\n\t\t\tcontacts,\r\n\t\t\tselectedId,\r\n\t\t\tProjectId,\r\n\t\t\tProjectStatusId,\r\n\t\t} = this.state;\r\n\t\tconst disabled =\r\n\t\t\t(FirstName.value === '' ||\r\n\t\t\t\tLastName.value === '' ||\r\n\t\t\t\tAddress.value === '' ||\r\n\t\t\t\tCity.value === '' ||\r\n\t\t\t\tZip.value === '' ||\r\n\t\t\t\tthis.state.CountryId === '' ||\r\n\t\t\t\tthis.state.CountryId === '00000000-0000-0000-0000-000000000000' ||\r\n\t\t\t\tTelephone.value === '' ||\r\n\t\t\t\tEmail.value === '' ||\r\n\t\t\t\tEmail.validate === 'has-danger') &&\r\n\t\t\tselectedId === '';\r\n\t\tconst options = {\r\n\t\t\tsizePerPage: 5,\r\n\t\t\tnoDataText: locale.noResults,\r\n\t\t};\r\n\t\tconst selectRowProp: any = {\r\n\t\t\tmode: 'radio', // single row selection\r\n\t\t\tclickToSelect: true,\r\n\t\t\thideSelectColumn: true,\r\n\t\t\tbgColor: Helper.themeBottonColorWithShadowRGBA(),\r\n\t\t\tselected: [selectedId],\r\n\t\t\tonSelect: (row: any) => this.handleRowSelect(row),\r\n\t\t};\r\n\r\n\t\tconst isProjectClosed =\r\n\t\t\tProjectStatusId === projectStatus.closed || ProjectStatusId === projectStatus.sending || ProjectStatusId === projectStatus.sent;\r\n\t\tconst disabledProject = ProjectId === '' || ProjectId === '00000000-0000-0000-0000-000000000000';\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t this.setState({ DocumentTypeId: e.target.value })}\r\n\t\t\t\t\t\t\t\t\tstyle={{ marginBottom: '10px' }}\r\n\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t{this.state.DocumentTypes.map((type) => (\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tthis.handleCheckbox(e);\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t/>\r\n\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t{locale.customerConfirmInquryNewProject}\r\n\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t this.usersToggle(1)} style={{ cursor: 'pointer' }}>\r\n\t\t\t\t\t\t\t\t{locale.inquiryTitleCustomer}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.validateEmail(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
{locale.inquiryLegalAdd}
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t this.usersToggle(2)} style={{ cursor: 'pointer' }}>\r\n\t\t\t\t\t\t\t\t{locale.inquiryTitleExistingCustomer}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.firstAndLastName}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.name}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.partner}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.user}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n","import React, { Fragment } from 'react';\r\nimport {\r\n\tRow,\r\n\tCol,\r\n\tModal,\r\n\tModalHeader,\r\n\tModalBody,\r\n\tFormGroup,\r\n\tLabel,\r\n\tInput,\r\n\tContainer,\r\n\tButtonDropdown,\r\n\tDropdownToggle,\r\n\tDropdownMenu,\r\n\tDropdownItem,\r\n} from 'reactstrap';\r\nimport '../Configurator.css';\r\nimport './Admin.css';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../../store/Configurator';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport { BootstrapTable, TableHeaderColumn } from 'react-bootstrap-table';\r\nimport '../../../node_modules/react-bootstrap-table/dist/react-bootstrap-table-all.min.css';\r\nimport locale from '../../Locale';\r\nimport Button from '../Button';\r\nimport InquirySales from '../InquirySales';\r\nimport Helper, { documentSatus, documentType, projectStatus } from '../../Helper';\r\nimport Loading from 'react-fullscreen-loading';\r\nimport Notify from './../Notify';\r\nimport queryString from 'query-string';\r\n\r\ninterface IProps extends RouteComponentProps {\r\n\tpart: any;\r\n\tselectedParameters: any;\r\n\tcategories: any;\r\n\tconfiguration: any;\r\n\tdocument: any;\r\n\ttheme?: any;\r\n\tviewType: string;\r\n\tbrandPartnerId?: string;\r\n\tshowMessage: any;\r\n}\r\ninterface IState {\r\n\tselectedId: string;\r\n\tselectedUserId: string;\r\n\tselectedContactId: string;\r\n\tselectedDocumentNumber: string;\r\n\tselectedStatus: string;\r\n\tselectedProjectId: string;\r\n\tselectedProjectStatus: string;\r\n\tselectedProjectNumber: string;\r\n\tselectedPartner: string;\r\n\tselectedType: string;\r\n\tselectedContact: string;\r\n\tselectedSalesmanRecipient: string;\r\n\tcomment: string;\r\n\tdocuments: any;\r\n\tupdate: boolean;\r\n\tloading: boolean;\r\n\tsaving: boolean;\r\n\terror: boolean;\r\n\tclickedButton: string;\r\n\tinquiryCustomerModal: boolean;\r\n\tinquirySellerModal: boolean;\r\n\tassignDocumentToUserModal: boolean;\r\n\tforwardDocumentToUserModal: boolean;\r\n\tcopyDocumentModal: boolean;\r\n\tsendToSupplierModal: boolean;\r\n\tconfirmationModal: boolean;\r\n\tconfirmationModalTitle: string;\r\n\tconfirmationModalMessage: string;\r\n\tconfirmationModalAction: string;\r\n\tusers: any[];\r\n\tcontacts: any[];\r\n\tshowMessage: any;\r\n\tnotify: any;\r\n\tdocumentTypes: [];\r\n\tdocumentTypeId: string;\r\n\tnewProject: boolean;\r\n\tassignButton: boolean;\r\n\tincludeArchived: boolean;\r\n\tshowAll: boolean;\r\n\tlanguages: any;\r\n\tsendERPButton: boolean;\r\n\tenabledApplication: boolean;\r\n\tenabledEdifactImport: boolean;\r\n\tenabledEdifactExport: boolean;\r\n}\r\nclass CustomerView extends React.Component {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\tselectedId: '',\r\n\t\t\tselectedUserId: '',\r\n\t\t\tselectedContactId: '',\r\n\t\t\tselectedDocumentNumber: '',\r\n\t\t\tselectedStatus: '',\r\n\t\t\tselectedProjectId: '',\r\n\t\t\tselectedProjectStatus: '',\r\n\t\t\tselectedProjectNumber: '',\r\n\t\t\tselectedPartner: '',\r\n\t\t\tselectedType: '',\r\n\t\t\tselectedContact: '',\r\n\t\t\tselectedSalesmanRecipient: '',\r\n\t\t\tcomment: '',\r\n\t\t\tclickedButton: '',\r\n\t\t\tdocuments: [],\r\n\t\t\tupdate: false,\r\n\t\t\tloading: true,\r\n\t\t\tsaving: false,\r\n\t\t\terror: false,\r\n\t\t\tinquiryCustomerModal: false,\r\n\t\t\tinquirySellerModal: false,\r\n\t\t\tassignDocumentToUserModal: false,\r\n\t\t\tforwardDocumentToUserModal: false,\r\n\t\t\tcopyDocumentModal: false,\r\n\t\t\tsendToSupplierModal: false,\r\n\t\t\tconfirmationModal: false,\r\n\t\t\tconfirmationModalTitle: '',\r\n\t\t\tconfirmationModalMessage: '',\r\n\t\t\tconfirmationModalAction: '',\r\n\t\t\tusers: [],\r\n\t\t\tcontacts: [],\r\n\t\t\tshowMessage: this.props.showMessage || null,\r\n\t\t\tnotify: { open: false, title: '', message: '', isError: false },\r\n\t\t\tdocumentTypes: [],\r\n\t\t\tdocumentTypeId: documentType.documenttype_offer,\r\n\t\t\tnewProject: true,\r\n\t\t\tassignButton: false,\r\n\t\t\tincludeArchived: false,\r\n\t\t\tshowAll: false,\r\n\t\t\tlanguages: [],\r\n\t\t\tsendERPButton: false,\r\n\t\t\tenabledApplication: false,\r\n\t\t\tenabledEdifactImport: false,\r\n\t\t\tenabledEdifactExport: false,\r\n\t\t};\r\n\t}\r\n\ttoggleInquiryCustomerModal() {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.inquiryCustomerModal = !state.inquiryCustomerModal;\r\n\t\tthis.setState(state);\r\n\t}\r\n\ttoggleInquirySellerModal() {\r\n\t\tconst url = '/brand/' + Helper.brandPartnerId() + '/users';\r\n\t\tconst state: IState = this.state;\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\tstate.users = data;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\r\n\t\tstate.inquirySellerModal = !state.inquirySellerModal;\r\n\t\tthis.setState(state);\r\n\t}\r\n\ttoggleAssignDocumentToBrandPartnerUserModal() {\r\n\t\tconst url = '/brand/' + Helper.brandPartnerId() + '/myusers';\r\n\t\tconst state: IState = this.state;\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\tstate.users = data;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\r\n\t\tstate.assignDocumentToUserModal = !state.assignDocumentToUserModal;\r\n\t\tthis.setState(state);\r\n\t}\r\n\ttoggleForwardDocumentToBrandPartnerUserModal() {\r\n\t\tconst url = '/brand/' + Helper.brandPartnerId() + '/contacts';\r\n\t\tconst state: IState = this.state;\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\t// only contacts with user\r\n\t\t\t\t\tstate.contacts = data.filter((x: any) => x.User != null);\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\r\n\t\tstate.forwardDocumentToUserModal = !state.forwardDocumentToUserModal;\r\n\t\tthis.setState(state);\r\n\t}\r\n\ttoggleCopyDocumentModal() {\r\n\t\tconst url = '/selection/documenttype/' + Helper.brandPartnerId();\r\n\t\tconst state: IState = this.state;\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\tlet typesFromApi = data.map((type: any) => {\r\n\t\t\t\t\t\treturn { value: type.DocumentTypeId, display: Helper.getLocalizedName(type.Name) };\r\n\t\t\t\t\t});\r\n\t\t\t\t\tstate.documentTypes = typesFromApi;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\r\n\t\tstate.newProject =\r\n\t\t\t!this.state.selectedProjectId ||\r\n\t\t\tthis.state.selectedProjectId === '' ||\r\n\t\t\tthis.state.selectedProjectId === '00000000-0000-0000-0000-000000000000' ||\r\n\t\t\tthis.state.selectedProjectStatus === projectStatus.closed ||\r\n\t\t\tthis.state.selectedProjectStatus === projectStatus.sending ||\r\n\t\t\tthis.state.selectedProjectStatus === projectStatus.sent\r\n\t\t\t\t? true\r\n\t\t\t\t: false;\r\n\r\n\t\tstate.copyDocumentModal = !state.copyDocumentModal;\r\n\t\tthis.setState(state);\r\n\t}\r\n\ttoggleSendToSupplierModal() {\r\n\t\tconst state: IState = this.state;\r\n\t\tHelper.getData('/selection/documenttype/' + Helper.brandPartnerId())\r\n\t\t.then((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\tlet typesFromApi = data.map((type: any) => {\r\n\t\t\t\t\t\treturn { value: type.DocumentTypeId, display: Helper.getLocalizedName(type.Name) };\r\n\t\t\t\t\t});\r\n\t\t\t\t\tstate.documentTypes = typesFromApi;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\r\n\t\tHelper.getData('/brand/' + Helper.brandPartnerId() + '/contacts?onlyParent=true')\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\t// only contacts with user\r\n\t\t\t\t\tconst contactsWithUser = data.filter((x: any) => x.User != null);\r\n\t\t\t\t\tstate.contacts = contactsWithUser;\r\n\t\t\t\t\tstate.selectedContactId = contactsWithUser && contactsWithUser.length > 0 ? contactsWithUser[0].ContactId : '';\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\r\n\t\tstate.newProject =\r\n\t\t\t!this.state.selectedProjectId ||\r\n\t\t\tthis.state.selectedProjectId === '' ||\r\n\t\t\tthis.state.selectedProjectId === '00000000-0000-0000-0000-000000000000' ||\r\n\t\t\tthis.state.selectedProjectStatus === projectStatus.closed ||\r\n\t\t\tthis.state.selectedProjectStatus === projectStatus.sending ||\r\n\t\t\tthis.state.selectedProjectStatus === projectStatus.sent\r\n\t\t\t\t? true\r\n\t\t\t\t: false;\r\n\r\n\t\tstate.sendToSupplierModal = !state.sendToSupplierModal;\r\n\t\tthis.setState(state);\r\n\t}\r\n\tdocumentData(configData: any): any {\r\n\t\tlet documents: any = [];\r\n\r\n\t\tif (configData && configData.length > 0) {\r\n\t\t\tif (typeof configData !== 'string') {\r\n\t\t\t\tconfigData.forEach((item: any) => {\r\n\t\t\t\t\tlet partnerRecipient = '';\r\n\t\t\t\t\tif (item.RecipientPartnerName) {\r\n\t\t\t\t\t\tpartnerRecipient = Helper.getLocalizedName(item.RecipientPartnerName.replace('null', ''));\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tlet partner = '';\r\n\t\t\t\t\tif (item.PartnerName) {\r\n\t\t\t\t\t\tpartner = Helper.getLocalizedName(item.PartnerName.replace('null', ''));\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdocuments.push({\r\n\t\t\t\t\t\tid: item.SalesDocumentId,\r\n\t\t\t\t\t\tisAnyError: item.IsAnyError,\r\n\t\t\t\t\t\tdocumentNumber: item.DocumentNumber,\r\n\t\t\t\t\t\tprojectId: item.ProjectId,\r\n\t\t\t\t\t\tprojectStatusId: item.ProjectStatusId,\r\n\t\t\t\t\t\tprojectNumber: item.ProjectNumber,\r\n\t\t\t\t\t\tprojectStatus: Helper.getLocalizedName(item.ProjectStatus),\r\n\t\t\t\t\t\tdateChanged: Helper.dateWithTimeConvert(item.DocumentLastChanged),\r\n\t\t\t\t\t\tdateChangedDate: item.DocumentLastChanged,\r\n\t\t\t\t\t\tpartner: partner,\r\n\t\t\t\t\t\tpartnerRecipient: partnerRecipient,\r\n\t\t\t\t\t\tcontact: item.ContactName,\r\n\t\t\t\t\t\tcompanyName: item.CompanyName,\r\n\t\t\t\t\t\tcomission: item.Commission,\r\n\t\t\t\t\t\tcustomerDocumentNumber: item.CustomerNumber,\r\n\t\t\t\t\t\tvalue: item.TotalPriceWithTax,\r\n\t\t\t\t\t\ttype: Helper.getLocalizedName(item.DocumentTypeName),\r\n\t\t\t\t\t\tstatus: Helper.getLocalizedName(item.DocumentStatusName),\r\n\t\t\t\t\t\tstatusId: item.DocumentStatusId,\r\n\t\t\t\t\t\tsalesman: item.Salesman,\r\n\t\t\t\t\t\tsalesmanRecipient: item.SalesmanRecipient,\r\n\t\t\t\t\t\ttypeId: item.DocumentTypeId,\r\n\t\t\t\t\t\tinitialSalesDocumentId: item.InitialSalesDocumentId,\r\n\t\t\t\t\t\tinitialSalesDocumentNumber: item.InitialSalesDocumentNumber,\r\n\t\t\t\t\t\tinitialSalesDocument: item.InitialSalesDocumentNumber,\r\n\t\t\t\t\t\tcurrency: item.Currency,\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn documents;\r\n\t}\r\n\r\n\tsetUserContactData(documentTypeId: string, projectId: string, newProject: boolean, contactData: any, contactId: string) {\r\n\t\tif ((contactData && contactData.Email !== '') || contactId !== '') {\r\n\t\t\tthis.toggleInquiryCustomerModal();\r\n\t\t\tthis.setState({ loading: true });\r\n\r\n\t\t\tconst url = '/document';\r\n\t\t\tconst body = {\r\n\t\t\t\tDocumentTypeId: documentTypeId,\r\n\t\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\t\tProjectId: projectId,\r\n\t\t\t\tNewProject: projectId !== '' ? newProject : true,\r\n\t\t\t\tContactId: contactId,\r\n\t\t\t\tConfigurationContact: contactData,\r\n\t\t\t};\r\n\t\t\tHelper.postData(url, JSON.stringify(body))\r\n\t\t\t\t.then((data) => {\r\n\t\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\t\t} else if (data) {\r\n\t\t\t\t\t\tthis.setConfiguration(data.SalesDocumentId);\r\n\t\t\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\t\t} else this.setState({ loading: false });\r\n\t\t\t\t})\r\n\t\t\t\t.catch((error) => {\r\n\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\tcomponentDidMount() {\r\n\t\tthis.getDocuments((this.props.document && this.props.document.documentId) || '');\r\n\t\tthis.getLanguages();\r\n\t\t(this.props as any).configuration.loader = false;\r\n\t\tconst state: IState = this.state;\r\n\t\tif (state.showMessage && state.showMessage.show) {\r\n\t\t\tstate.notify.title = state.showMessage.title;\r\n\t\t\tstate.notify.message = state.showMessage.message;\r\n\t\t\t(this.props as any).setShowMessage(false, '', '');\r\n\t\t\tstate.notify.open = true;\r\n\t\t\tthis.setState(state);\r\n\t\t}\r\n\t}\r\n\tcomponentDidUpdate(nextProps: any) {\r\n\t\tif (nextProps.brandPartnerId !== this.props.brandPartnerId) {\r\n\t\t\tthis.getDocuments((this.props.document && this.props.document.documentId) || '');\r\n\t\t}\r\n\t}\r\n\tgetDocuments(selectedId: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tlet url = '';\r\n\t\tif (this.props.viewType === 'all') {\r\n\t\t\turl = '/document/' + Helper.brandPartnerId() + '/all';\r\n\t\t\tif (this.state.includeArchived) {\r\n\t\t\t\turl += 'All';\r\n\t\t\t}\r\n\t\t\tif (!this.state.showAll) {\r\n\t\t\t\turl += 'Limit';\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\turl = '/document/' + Helper.brandPartnerId() + '/my';\r\n\t\t\tif (this.state.includeArchived) {\r\n\t\t\t\turl += 'All';\r\n\t\t\t}\r\n\t\t\tif (!this.state.showAll) {\r\n\t\t\t\turl += 'Limit';\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\t\tstate.loading = false;\r\n\t\t\t\t\tstate.error = true;\r\n\t\t\t\t\tthis.setState(state);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconst documents = this.documentData(data);\r\n\t\t\t\t\tif (selectedId !== '') {\r\n\t\t\t\t\t\tconst selectedItem = documents.find((item: any) => item.id === selectedId);\r\n\t\t\t\t\t\tif (selectedItem) {\r\n\t\t\t\t\t\t\tstate.selectedId = selectedItem.id;\r\n\t\t\t\t\t\t\tstate.selectedDocumentNumber = selectedItem.documentNumber;\r\n\t\t\t\t\t\t\tstate.selectedStatus = selectedItem.statusId;\r\n\t\t\t\t\t\t\tstate.selectedType = selectedItem.typeId;\r\n\t\t\t\t\t\t\tstate.selectedProjectId = selectedItem.projectId;\r\n\t\t\t\t\t\t\tstate.selectedProjectStatus = selectedItem.projectStatusId;\r\n\t\t\t\t\t\t\tstate.selectedProjectNumber = selectedItem.projectNumber;\r\n\t\t\t\t\t\t\tstate.selectedPartner = selectedItem.partnerRecipient;\r\n\t\t\t\t\t\t\tstate.selectedSalesmanRecipient = selectedItem.salesmanRecipient;\r\n\t\t\t\t\t\t\tstate.selectedContact = selectedItem.contact;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tstate.selectedId = '';\r\n\t\t\t\t\t\tstate.selectedDocumentNumber = '';\r\n\t\t\t\t\t\tstate.selectedStatus = '';\r\n\t\t\t\t\t\tstate.selectedType = '';\r\n\t\t\t\t\t\tstate.selectedProjectId = '';\r\n\t\t\t\t\t\tstate.selectedProjectStatus = '';\r\n\t\t\t\t\t\tstate.selectedProjectNumber = '';\r\n\t\t\t\t\t\tstate.selectedPartner = '';\r\n\t\t\t\t\t\tstate.selectedSalesmanRecipient = '';\r\n\t\t\t\t\t\tstate.selectedContact = '';\r\n\t\t\t\t\t}\r\n\t\t\t\t\tstate.loading = false;\r\n\t\t\t\t\tstate.documents = documents;\r\n\t\t\t\t\tthis.setState(state);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((error: any) => {\r\n\t\t\t\tthis.setState({ loading: false });\t\t\t\r\n\t\t\t\t(this.props as any).setError(locale.exception, error.message);\r\n\t\t\t});\r\n\r\n\t\tHelper.getData('/account/licence')\r\n\t\t\t.then((data) => {\r\n\t\t\t\tstate.enabledApplication = data.EnabledApplication;\r\n\t\t\t\tstate.enabledEdifactExport = data.EnabledEdifactExport;\r\n\t\t\t\tstate.enabledEdifactImport = data.EnabledEdifactImport;\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t})\r\n\t\t\t.catch((error: any) => {\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\t(this.props as any).setError(locale.exception, error.message);\r\n\t\t\t});\r\n\t}\r\n\tgetLanguages() {\r\n\t\tconst state: any = this.state;\r\n\t\tconst url = '/selection/language';\r\n\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\t\tstate.loading = false;\r\n\t\t\t\t\tthis.setState(state);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tstate.languages = data;\r\n\t\t\t\t\tdata.map((language: any) => {\r\n\t\t\t\t\t\tif (language.IsDefault) {\r\n\t\t\t\t\t\t\tstate.selectedLanguage.name = language.Name;\r\n\t\t\t\t\t\t\tstate.selectedLanguage.value = language.LanguageId;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\treturn null;\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\tgetConfigurationsList(documentId: string, path: string) {\r\n\t\tif (!documentId) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst url = '/document/' + documentId + '?brandPartnerId=' + Helper.brandPartnerId();\r\n\t\tHelper.getData(url).then((data: any) => {\r\n\t\t\tif (data.Message) {\r\n\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t} else if (data) {\r\n\t\t\t\t(this.props as any).clearPart();\r\n\t\t\t\tif (data.InitialSalesDocumentId) {\r\n\t\t\t\t\t(this.props as any).setDocument(\r\n\t\t\t\t\t\tdocumentId,\r\n\t\t\t\t\t\tdata.InitialSalesDocumentId,\r\n\t\t\t\t\t\tdata.DocumentNumber,\r\n\t\t\t\t\t\tdata.ProjectNumber,\r\n\t\t\t\t\t\tdata.Configurations,\r\n\t\t\t\t\t\tdata.IsReadOnly || !this.state.enabledApplication,\r\n\t\t\t\t\t\tdata.DocumentStatusId,\r\n\t\t\t\t\t\tdata.Currency\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + path);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\tdelete() {\r\n\t\tconst url = '/document/' + this.state.selectedId + '/archive';\r\n\t\tHelper.deleteData(url)\r\n\t\t\t.then((saveData) => {\r\n\t\t\t\tif (saveData.Message && saveData.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.deleting, saveData.Message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.setState({ saving: false, clickedButton: '' }, () => this.getDocuments(''));\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch(() => (this.props as any).setError(locale.deleting, locale.generalException));\r\n\t}\r\n\tsetConfiguration(documentId: string) {\r\n\t\t(this.props as any).setDocument(documentId, '', null, null);\r\n\t\tthis.getConfigurationsList(documentId, '/admin/document/configurations');\r\n\t}\r\n\ttoggleConfirmationModal(title?: string, message?: string, action?: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.confirmationModal = !state.confirmationModal;\r\n\t\tif (title && message && action) {\r\n\t\t\tstate.confirmationModalTitle = title;\r\n\t\t\tstate.confirmationModalMessage = message;\r\n\t\t\tstate.confirmationModalAction = action;\r\n\t\t}\r\n\r\n\t\tthis.setState(state);\r\n\t}\r\n\tconfirmationAction(action: string) {\r\n\t\tif (action === 'delete') {\r\n\t\t\tthis.delete();\r\n\t\t} else if (action === 'confirm') {\r\n\t\t\tthis.confirm();\r\n\t\t} else if (action === 'send') {\r\n\t\t\tthis.sendDocument();\r\n\t\t}\r\n\t\tthis.setState({ confirmationModal: false });\r\n\t}\r\n\ttoggleAssignButton() {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.assignButton = !state.assignButton;\r\n\t\tthis.setState(state);\r\n\t}\r\n\ttoggleSendERPButton() {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.sendERPButton = !state.sendERPButton;\r\n\t\tthis.setState(state);\r\n\t}\r\n\thandleRowSelect(row: any) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.selectedId = row.id;\r\n\t\tstate.selectedDocumentNumber = row.documentNumber;\r\n\t\tstate.selectedStatus = row.statusId;\r\n\t\tstate.selectedProjectId = row.projectId;\r\n\t\tstate.selectedProjectStatus = row.projectStatusId;\r\n\t\tstate.selectedProjectNumber = row.projectNumber;\r\n\t\tstate.selectedType = row.typeId;\r\n\t\tstate.selectedPartner = row.partnerRecipient;\r\n\r\n\t\tstate.selectedContact = row.contact;\r\n\t\tstate.selectedSalesmanRecipient = row.salesmanRecipient;\r\n\r\n\t\tstate.saving = false;\r\n\t\tstate.clickedButton = '';\r\n\t\tstate.update = !state.update;\r\n\t\tstate.newProject =\r\n\t\t\trow.projectStatusId === projectStatus.closed || row.projectStatusId === projectStatus.sending || row.projectStatusId === projectStatus.sent;\r\n\t\tthis.setState(state);\r\n\t}\r\n\thandleUserRowSelect(row: any) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.selectedUserId = row.PartnerUserId;\r\n\t\tthis.setState(state);\r\n\t}\r\n\thandleContactRowSelect(row: any) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.selectedContactId = row.ContactId;\r\n\t\tthis.setState(state);\r\n\t}\r\n\thandleCheckbox(e: any) {\r\n\t\tconst state: IState = this.state;\r\n\t\tconst { target } = e;\r\n\t\tif (target.name === 'NewProject') {\r\n\t\t\tstate.newProject = !state.newProject;\r\n\t\t}\r\n\t\tthis.setState(state);\r\n\t}\r\n\tcellCheckbox() {\r\n\t\treturn ;\r\n\t}\r\n\tcustomerProcess(editTitle: string) {\r\n\t\tthis.setConfiguration(this.state.selectedId);\r\n\t}\r\n\ttoggleProjectStatus() {\r\n\t\tthis.setState({\r\n\t\t\tsaving: true,\r\n\t\t\tclickedButton: 'toggleProjectStatus',\r\n\t\t});\r\n\t\tconst documentId = this.state.selectedId;\r\n\t\tif (documentId) {\r\n\t\t\tlet url = '/document/' + documentId + '/toggle';\r\n\t\t\tHelper.postData(url, '').then((saveData) => {\r\n\t\t\t\tif (saveData) {\r\n\t\t\t\t\tif (saveData.Message && saveData.Message.length > 0) {\r\n\t\t\t\t\t\t(this.props as any).setError(locale.toggleProjectStatus, saveData.Message);\r\n\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\t\tclickedButton: '',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.setState({ saving: false, clickedButton: '' }, () => this.getDocuments(documentId));\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\tconfirm() {\r\n\t\tthis.setState({\r\n\t\t\tsaving: true,\r\n\t\t\tclickedButton: 'confirm',\r\n\t\t});\r\n\t\tconst documentId = this.state.selectedId;\r\n\t\tif (documentId) {\r\n\t\t\tlet url = '/document/' + documentId + '/confirm?brandPartnerId=' + Helper.brandPartnerId();\r\n\t\t\tHelper.postData(url, '').then((saveData) => {\r\n\t\t\t\tif (saveData) {\r\n\t\t\t\t\tif (saveData.Message && saveData.Message.length > 0) {\r\n\t\t\t\t\t\t(this.props as any).setError(locale.customerConfirmOrder, saveData.Message);\r\n\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\t\tclickedButton: '',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.setState({ saving: false, clickedButton: '' }, () => this.getDocuments(documentId));\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\tsendDocument() {\r\n\t\tthis.setState({\r\n\t\t\tsaving: true,\r\n\t\t\tclickedButton: 'sendDocument',\r\n\t\t});\r\n\t\tconst documentId = this.state.selectedId;\r\n\t\tif (documentId) {\r\n\t\t\tlet url = '/document/' + documentId + '/send?brandPartnerId=' + Helper.brandPartnerId();\r\n\t\t\tHelper.postData(url, '').then((saveData) => {\r\n\t\t\t\tif (saveData) {\r\n\t\t\t\t\tif (saveData.Message && saveData.Message.length > 0) {\r\n\t\t\t\t\t\t(this.props as any).setError(locale.customerConfirmOrder, saveData.Message);\r\n\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\t\tclickedButton: '',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.setState({ saving: false, clickedButton: '' }, () => this.getDocuments(documentId));\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\tcopyDocument() {\r\n\t\tthis.setState({\r\n\t\t\tsaving: true,\r\n\t\t\tclickedButton: 'copyDocument',\r\n\t\t\tcopyDocumentModal: false,\r\n\t\t});\r\n\t\tconst documentId = this.state.selectedId;\r\n\t\tconst documentTypeId = this.state.documentTypeId;\r\n\r\n\t\tif (documentId && documentTypeId) {\r\n\t\t\tconst url = '/document';\r\n\t\t\tconst body = {\r\n\t\t\t\tDocumentTypeId: documentTypeId,\r\n\t\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\t\tDocumentId: documentId,\r\n\t\t\t\tNewProject: this.state.newProject,\r\n\t\t\t};\r\n\t\t\tHelper.postData(url, JSON.stringify(body)).then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.customerConfirmOrder, data.Message);\r\n\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\tclickedButton: '',\r\n\t\t\t\t\t\tcopyDocumentModal: false,\r\n\t\t\t\t\t\tnewProject: false,\r\n\t\t\t\t\t\tdocumentTypeId: documentType.documenttype_offer,\r\n\t\t\t\t\t});\r\n\t\t\t\t} else if (data) {\r\n\t\t\t\t\tthis.setState(\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\t\tcopyDocumentModal: false,\r\n\t\t\t\t\t\t\tnewProject: false,\r\n\t\t\t\t\t\t\tdocumentTypeId: documentType.documenttype_offer,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t() => this.getDocuments(data.SalesDocumentId)\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\tsendToSupplier() {\r\n\t\tthis.setState({\r\n\t\t\tsaving: true,\r\n\t\t\tclickedButton: 'sendToSupplier',\r\n\t\t\tsendToSupplierModal: false,\r\n\t\t});\r\n\r\n\t\tconst documentId = this.state.selectedId;\r\n\t\tconst documentTypeId = this.state.documentTypeId;\r\n\t\tconst selectedContactId = this.state.selectedContactId;\r\n\r\n\t\tif (documentId && documentTypeId && selectedContactId) {\r\n\t\t\tconst url = '/document/' + documentId +'/sendToSupplier';\r\n\t\t\tconst body = {\r\n\t\t\t\tDocumentTypeId: documentTypeId,\r\n\t\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\t\tDocumentId: documentId,\r\n\t\t\t\tNewProject: this.state.newProject,\r\n\t\t\t\tContactId: selectedContactId,\r\n\t\t\t\tComment: this.state.comment\r\n\t\t\t};\r\n\r\n\t\t\tHelper.postData(url, JSON.stringify(body)).then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.customerConfirmOrder, data.Message);\r\n\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\tclickedButton: '',\r\n\t\t\t\t\t\tsendToSupplierModal: false,\r\n\t\t\t\t\t\tnewProject: false,\r\n\t\t\t\t\t\tdocumentTypeId: documentType.documenttype_offer,\r\n\t\t\t\t\t});\r\n\t\t\t\t} else if (data) {\r\n\t\t\t\t\tthis.setState(\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\t\tsendToSupplierModal: false,\r\n\t\t\t\t\t\t\tnewProject: false,\r\n\t\t\t\t\t\t\tdocumentTypeId: documentType.documenttype_offer,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t() => this.getDocuments(data.SalesDocumentId)\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\tsendToERP(languageCode: string) {\r\n\t\tthis.setState({\r\n\t\t\tsaving: true,\r\n\t\t\tclickedButton: 'sendToERP',\r\n\t\t});\r\n\t\tconst documentId = this.state.selectedId;\r\n\t\tif (documentId) {\r\n\t\t\tlet url = '/document/' + documentId + '/download/edifactxml?language=' + languageCode;\r\n\t\t\tHelper.getData(url)\r\n\t\t\t\t.then((saveData) => {\r\n\t\t\t\t\tif (saveData) {\r\n\t\t\t\t\t\tif (saveData.Message && saveData.Message.length > 0) {\r\n\t\t\t\t\t\t\t(this.props as any).setError(locale.customerSendERP, saveData.Message);\r\n\t\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\t\t\tclickedButton: '',\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t} else if (saveData.FileName) {\r\n\t\t\t\t\t\t\tconst value = saveData;\r\n\t\t\t\t\t\t\tlet link = document.createElement('a');\r\n\t\t\t\t\t\t\tlink.download = value.FileName;\r\n\t\t\t\t\t\t\tlink.href = `data:${value.MimeType};base64,${value.Contents}`;\r\n\t\t\t\t\t\t\tlink.click();\r\n\t\t\t\t\t\t\tthis.setState({ saving: false, clickedButton: '' }, () => this.getDocuments(documentId));\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t(this.props as any).setError(locale.customerSendERP, '');\r\n\t\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\t\t\tclickedButton: '',\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.catch((error) => {\r\n\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t});\r\n\t\t}\r\n\t}\r\n\timportEdi() {\r\n\t\t(this.refs.fileUploader as HTMLElement).click();\r\n\t}\r\n\tonFileChange(event: any) {\r\n\t\tif (event.target.files && event.target.files[0]) {\r\n\t\t\tconst fileName = event.target.files[0].name;\r\n\t\t\tlet reader = new FileReader();\r\n\t\t\treader.readAsDataURL(event.target.files[0]);\r\n\t\t\treader.onload = (e: any) => {\r\n\t\t\t\tthis.importDocument(e.target.result.split(',')[1], fileName);\r\n\t\t\t};\r\n\t\t}\r\n\t}\r\n\timportDocument(file: any, fileName: string) {\r\n\t\tthis.setState({\r\n\t\t\tsaving: true,\r\n\t\t\tclickedButton: 'importDocument',\r\n\t\t});\r\n\t\tconst documentId = this.state.selectedId;\r\n\r\n\t\tif (documentId) {\r\n\t\t\tconst url = '/document/' + documentId + '/upload/edifactxml';\r\n\t\t\tconst body = {\r\n\t\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\t\tBase64File: file,\r\n\t\t\t\tFileName: fileName,\r\n\t\t\t};\r\n\t\t\tHelper.postData(url, JSON.stringify(body))\r\n\t\t\t\t.then((data) => {\r\n\t\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t\t(this.props as any).setError(locale.customerImportEdi, data.Message);\r\n\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\t\tclickedButton: '',\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t} else if (data) {\r\n\t\t\t\t\t\tif (data.SalesDocumentId) {\r\n\t\t\t\t\t\t\tthis.setState({ saving: false, clickedButton: '' }, () => this.getDocuments(data.SalesDocumentId));\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t(this.props as any).setError(locale.customerImportEdi, data);\r\n\t\t\t\t\t\t\tthis.setState(\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\t\t\t\tclickedButton: '',\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t() => this.getDocuments(documentId)\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.catch(() => (this.props as any).setError(locale.customerImportEdi, locale.generalException));\r\n\t\t}\r\n\t}\r\n\trenderCategoriesRecursion(categories: any): any {\r\n\t\tif (!categories) {\r\n\t\t\treturn [];\r\n\t\t}\r\n\t\tconst documentsList = categories.map(function (category: any, i: number) {\r\n\t\t\tlet parameterList = [];\r\n\t\t\tlet sum = 0;\r\n\r\n\t\t\tparameterList = category.parameters.map(function (parameter: any, j: number) {\r\n\t\t\t\tsum += parameter.price;\r\n\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{parameter.name}\r\n\t\t\t\t\t\t\t{parameter.values && parameter.values.length > 0 ? parameter.values[0].name || parameter.values[0].valueName : null}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t{parameter.price ? (\r\n\t\t\t\t\t\t\t\t\t\tparameter.price.toLocaleString('de-DE', {\r\n\t\t\t\t\t\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\t\t\t\t\t\tcurrency: 'EUR',\r\n\t\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t);\r\n\t\t\t});\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{category.name}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
{sum} €
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t{parameterList}\r\n\t\t\t\t
\r\n\t\t\t);\r\n\t\t});\r\n\t\treturn documentsList;\r\n\t}\r\n\tsendToProduction() {\r\n\t\tthis.setState({\r\n\t\t\tsaving: true,\r\n\t\t\tclickedButton: 'sendToProduction',\r\n\t\t});\r\n\t\tconst documentId = this.state.selectedId;\r\n\t\tif (documentId) {\r\n\t\t\tlet url = '/ref/clone?documentId=' + documentId;\r\n\t\t\tHelper.postData(url, '').then((saveData) => {\r\n\t\t\t\tif (saveData) {\r\n\t\t\t\t\tif (saveData.Message && saveData.Message.length > 0) {\r\n\t\t\t\t\t\t(this.props as any).setError(locale.submitForProduction, saveData.Message);\r\n\t\t\t\t\t\tthis.setState({ saving: false });\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.setState({ saving: false }, () => this.getDocuments(this.state.selectedId));\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\tassignSeller() {\r\n\t\tthis.setState({\r\n\t\t\tsaving: true,\r\n\t\t\tclickedButton: 'assignSeller',\r\n\t\t\tassignDocumentToUserModal: false,\r\n\t\t});\r\n\t\tconst documentId = this.state.selectedId;\r\n\t\tconst partnerUserId = this.state.selectedUserId;\r\n\r\n\t\tif (documentId && partnerUserId) {\r\n\t\t\tconst url = '/document/' + documentId + '/assign';\r\n\t\t\tconst body = {\r\n\t\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\t\tPartnerUserId: partnerUserId,\r\n\t\t\t};\r\n\t\t\tHelper.postData(url, JSON.stringify(body))\r\n\t\t\t\t.then((data) => {\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t\t\t(this.props as any).setError(locale.assignDocument, data.Message);\r\n\t\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\t\t\tinquirySellerModal: false,\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.setState(\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\t\t\t\tinquirySellerModal: false,\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t() => this.getDocuments(documentId)\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t(this.props as any).clearPart(true);\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.catch((error) => {\r\n\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t});\r\n\t\t}\r\n\t}\r\n\tforwardDocument() {\r\n\t\tthis.setState({\r\n\t\t\tsaving: true,\r\n\t\t\tclickedButton: 'forwardDocument',\r\n\t\t\tforwardDocumentToUserModal: false,\r\n\t\t});\r\n\r\n\t\tconst documentId = this.state.selectedId;\r\n\t\tconst contactId = this.state.selectedContactId;\r\n\r\n\t\tif (documentId && contactId) {\r\n\t\t\tconst url = '/document/' + documentId + '/forward';\r\n\t\t\tconst body = {\r\n\t\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\t\tContactId: contactId,\r\n\t\t\t};\r\n\t\t\tHelper.postData(url, JSON.stringify(body))\r\n\t\t\t\t.then((data) => {\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t\t\t(this.props as any).setError(locale.assignDocument, data.Message);\r\n\t\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\t\t\tinquirySellerModal: false,\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.setState(\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tsaving: false,\r\n\t\t\t\t\t\t\t\t\tinquirySellerModal: false,\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t() => this.getDocuments(documentId)\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t(this.props as any).clearPart(true);\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.catch((error) => {\r\n\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t});\r\n\t\t}\r\n\t}\r\n\tnewVersion() {\r\n\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/configurator/configuration');\r\n\t}\r\n\tnewOffer() {\r\n\t\t(this.props as any).clearPart(true);\r\n\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/configurator/selection');\r\n\t}\r\n\tonDoubleClick(row: any) {\r\n\t\t(this.props as any).clearPart(true);\r\n\t\t(this.props as any).setDocument(row.id, '', row.documentNumber, row.projectNumber, null);\r\n\t\tthis.getConfigurationsList(row.id, '/admin/document/configurations');\r\n\t}\r\n\tonClickInitialDocument(row: any) {\r\n\t\t(this.props as any).clearPart(true);\r\n\t\t(this.props as any).setDocument(row.initialSalesDocumentId, '', row.InitialSalesDocumentNumber, null, null);\r\n\t\tthis.getConfigurationsList(row.initialSalesDocumentId, '/admin/document/configurations');\r\n\t}\r\n\tonClickChangeRecipient() {\r\n\t\tthis.setState({ confirmationModal: false });\r\n\t\t(this.props as any).clearPart(true);\r\n\t\t(this.props as any).setDocument(this.state.selectedId, '', this.state.selectedDocumentNumber, null, null);\r\n\t\tthis.getConfigurationsList(this.state.selectedId, '/admin/document/document');\r\n\t}\r\n\r\n\thandleChange = async (event: React.FormEvent) => {\r\n\t\tconst { currentTarget } = event;\r\n\t\tconst value = currentTarget.type === 'checkbox' ? currentTarget.checked : currentTarget.value;\r\n\t\tconst { name } = currentTarget;\r\n\t\tawait this.setState({\r\n\t\t\t[name]: value,\r\n\t\t} as unknown as Pick);\r\n\r\n\t\tthis.setState({ loading: true });\r\n\t\tthis.getDocuments('');\r\n\t};\r\n\r\n\thandleCommentChange(e: any) {\r\n\t\tconst state: any = this.state;\r\n\t\tconst { target } = e;\r\n\t\tconst value = target.value;\r\n\t\tstate[target.name] = value;\r\n\t\tstate.Saved = false;\r\n\t\tthis.setState(state);\r\n\t};\r\n\r\n\trender() {\r\n\t\tconst state = this.state;\r\n\t\tconst {\r\n\t\t\tdocuments,\r\n\t\t\tselectedId,\r\n\t\t\tselectedUserId,\r\n\t\t\tselectedContactId,\r\n\t\t\tselectedStatus,\r\n\t\t\tselectedProjectStatus,\r\n\t\t\tselectedType,\r\n\t\t\tselectedPartner,\r\n\t\t\tselectedSalesmanRecipient,\r\n\t\t\tselectedContact,\r\n\t\t\tconfirmationModal,\r\n\t\t\tconfirmationModalAction,\r\n\t\t\tconfirmationModalMessage,\r\n\t\t\tconfirmationModalTitle,\r\n\t\t\tloading,\r\n\t\t\tsaving,\r\n\t\t\terror,\r\n\t\t\tusers,\r\n\t\t\tcontacts,\r\n\t\t\tdocumentTypes,\r\n\t\t\tdocumentTypeId,\r\n\t\t\tenabledApplication,\r\n\t\t\tenabledEdifactExport,\r\n\t\t\tenabledEdifactImport,\r\n\t\t} = this.state;\r\n\r\n\t\tvar selectRowProp: any = {\r\n\t\t\tmode: 'radio',\r\n\t\t\tclickToSelect: true,\r\n\t\t\thideSelectColumn: true,\r\n\t\t\tbgColor: Helper.themeBottonColorWithShadowRGBA(),\r\n\t\t\tselected: [selectedId],\r\n\t\t\tonSelect: (row: any) => this.handleRowSelect(row),\r\n\t\t};\r\n\t\tvar selectUserRowProp: any = {\r\n\t\t\tmode: 'radio',\r\n\t\t\tclickToSelect: true,\r\n\t\t\thideSelectColumn: true,\r\n\t\t\tbgColor: Helper.themeBottonColorWithShadowRGBA(),\r\n\t\t\tselected: [selectedUserId],\r\n\t\t\tonSelect: (row: any) => this.handleUserRowSelect(row),\r\n\t\t};\r\n\t\tvar selectContactRowProp: any = {\r\n\t\t\tmode: 'radio',\r\n\t\t\tclickToSelect: true,\r\n\t\t\thideSelectColumn: true,\r\n\t\t\tbgColor: Helper.themeBottonColorWithShadowRGBA(),\r\n\t\t\tselected: [selectedContactId],\r\n\t\t\tonSelect: (row: any) => this.handleContactRowSelect(row),\r\n\t\t};\r\n\r\n\t\tconst isDisabled = selectedId === '';\r\n\t\tconst isForSubmitForProduction =\r\n\t\t\t(selectedStatus === documentSatus.documentstatus_confirmed || selectedStatus === documentSatus.documentstatus_confirmedOem) &&\r\n\t\t\t(selectedType === documentType.documenttype_offer ||\r\n\t\t\t\tselectedType === documentType.documenttype_order ||\r\n\t\t\t\tselectedType === documentType.documenttype_orderconfirmation);\r\n\r\n\t\tconst isCanceled = selectedStatus === documentSatus.documentstatus_archived || isDisabled;\r\n\t\tconst isProjectClosed =\r\n\t\t\tselectedProjectStatus === projectStatus.closed ||\r\n\t\t\tselectedProjectStatus === projectStatus.sending ||\r\n\t\t\tselectedProjectStatus === projectStatus.sent;\r\n\t\tconst isProjectActive =\r\n\t\t\tselectedProjectStatus === projectStatus.active ||\r\n\t\t\tselectedProjectStatus === '' ||\r\n\t\t\tselectedProjectStatus === '00000000-0000-0000-0000-000000000000';\r\n\t\tconst canSend = isProjectActive && selectedPartner !== '' && selectedStatus !== documentSatus.documentstatus_offer;\r\n\t\tconst canConfirm =\r\n\t\t\t(selectedType === documentType.documenttype_orderconfirmation || selectedType === documentType.documenttype_offer) &&\r\n\t\t\tselectedStatus !== documentSatus.documentstatus_confirmed &&\r\n\t\t\tselectedStatus !== documentSatus.documentstatus_confirmedOem;\r\n\t\tconst canForward = selectedStatus === documentSatus.documentstatus_received || selectedStatus === documentSatus.documentstatus_forwarded;\r\n\t\tconst generatingTechDoc = selectedStatus === documentSatus.documentstatus_generatingtechdocumentation;\r\n\t\tconst queryValues = queryString.parse(this.props.location.search);\r\n\t\tconst projectFilter = queryValues && queryValues.project ? queryValues.project.toString() : '';\r\n\r\n\t\tlet loadingDiv = null;\r\n\t\tif (loading || saving) {\r\n\t\t\tloadingDiv = ;\r\n\t\t}\r\n\r\n\t\tconst options = {\r\n\t\t\tonRowDoubleClick: (row: any) => this.onDoubleClick(row),\r\n\t\t\tnoDataText: locale.noResults,\r\n\t\t\tsizePerPage: 10,\r\n\t\t};\r\n\t\tconst dateSort = (a: any, b: any, order: string) => {\r\n\t\t\tif (order === 'asc') {\r\n\t\t\t\tif (new Date(a.dateChangedDate) < new Date(b.dateChangedDate)) return 1;\r\n\t\t\t\tif (new Date(a.dateChangedDate) > new Date(b.dateChangedDate)) return -1;\r\n\t\t\t} else if (order === 'desc') {\r\n\t\t\t\tif (new Date(a.dateChangedDate) > new Date(b.dateChangedDate)) return 1;\r\n\t\t\t\tif (new Date(a.dateChangedDate) < new Date(b.dateChangedDate)) return -1;\r\n\t\t\t}\r\n\t\t\treturn 0;\r\n\t\t};\r\n\t\tconst documentNumberSort = (a: any, b: any, order: string) => {\r\n\t\t\tif (order === 'asc') {\r\n\t\t\t\tif (parseInt(a.documentNumber) < parseInt(b.documentNumber)) return 1;\r\n\t\t\t\tif (parseInt(a.documentNumber) > parseInt(b.documentNumber)) return -1;\r\n\t\t\t} else if (order === 'desc') {\r\n\t\t\t\tif (parseInt(a.documentNumber) > parseInt(b.documentNumber)) return 1;\r\n\t\t\t\tif (parseInt(a.documentNumber) < parseInt(b.documentNumber)) return -1;\r\n\t\t\t}\r\n\t\t\treturn 0;\r\n\t\t};\r\n\r\n\t\tconst projectSort = (a: any, b: any, order: string) => {\r\n\t\t\tif (order === 'asc') {\r\n\t\t\t\tif (parseInt(a.projectNumber) < parseInt(b.projectNumber)) return 1;\r\n\t\t\t\tif (parseInt(a.projectNumber) > parseInt(b.projectNumber)) return -1;\r\n\t\t\t} else if (order === 'desc') {\r\n\t\t\t\tif (parseInt(a.projectNumber) > parseInt(b.projectNumber)) return 1;\r\n\t\t\t\tif (parseInt(a.projectNumber) < parseInt(b.projectNumber)) return -1;\r\n\t\t\t}\r\n\t\t\treturn 0;\r\n\t\t};\r\n\t\tconst floatSort = (a: any, b: any, order: string) => {\r\n\t\t\tif (order === 'asc') {\r\n\t\t\t\tif (parseFloat(a.value) < parseFloat(b.value)) return 1;\r\n\t\t\t\tif (parseFloat(a.value) > parseFloat(b.value)) return -1;\r\n\t\t\t} else if (order === 'desc') {\r\n\t\t\t\tif (parseFloat(a.value) > parseFloat(b.value)) return 1;\r\n\t\t\t\tif (parseFloat(a.value) < parseFloat(b.value)) return -1;\r\n\t\t\t}\r\n\t\t\treturn 0;\r\n\t\t};\r\n\t\tconst linkFormatter = (cell: any, row: any) => {\r\n\t\t\tif (row.initialSalesDocument) {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t);\r\n\t\t\t} else {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst indicator = (cell: any, row: any) => {\r\n\t\t\tif (row.isAnyError) {\r\n\t\t\t\treturn ;\r\n\t\t\t} else {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst priceFormatter = (cell: any, row: any) => {\r\n\t\t\tif (cell) {\r\n\t\t\t\treturn cell.toLocaleString('de-DE', {\r\n\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\tcurrency: row.currency != null ? row.currency : 'EUR',\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\treturn 0;\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tconst languages =\r\n\t\t\tArray.isArray(state.languages) &&\r\n\t\t\tstate.languages.map((language: any) => {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t {\r\n\t\t\t\t\t\t\tthis.sendToERP(language.Code);\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t{language.Name}\r\n\t\t\t\t\t\r\n\t\t\t\t);\r\n\t\t\t});\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{this.state.notify.open ? (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t) : null}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{loadingDiv ? (\r\n\t\t\t\t\t\t\t\tloadingDiv\r\n\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.includeArchived}\r\n\t\t\t\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.showAll}\r\n\t\t\t\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.adminDocumentProject}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.adminDocumentProjectStatus}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.adminDocumentDocumentOrder}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.dataLastChange}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.adminDocumentPartner}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.salesmanResponsible}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.partner}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.salesman}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.adminDocumentComission}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.adminDocumentBuyerOrderNumber}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.sourceDocument}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.finalPrice}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.type}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.status}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{Helper.userAdmin() && this.props.viewType === 'my' ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t\t\t\t{/* {Helper.userAdmin() && this.props.viewType === 'all' ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleProjectStatus()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.toggleProjectStatus}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t) : null} */}\r\n\t\t\t\t\t\t\t\t\t\t\t\t{Helper.userAdmin() && this.props.viewType === 'my' ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleAssignDocumentToBrandPartnerUserModal()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.assignDocument}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.toggleConfirmationModal(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlocale.customerSendDocument,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlocale.confirmSendDocument\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t.replace('{Partner}', selectedPartner)\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t.replace('{Salesman}', selectedSalesmanRecipient)\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t.replace('{Contact}', selectedContact),\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'send'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.sendDocument}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t\t\t\t{Helper.userAdmin() && (this.props.viewType === 'my' || this.props.viewType === 'all') ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleCopyDocumentModal()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={isDisabled || !enabledApplication}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.copy}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t\t\t\t{Helper.userAdmin() && this.props.viewType === 'my' ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.toggleConfirmationModal(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlocale.customerConfirmOrder,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlocale.customerConfirmOrderMessage.replace('{number}', this.state.selectedDocumentNumber),\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'confirm'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={isDisabled || !canConfirm || !isProjectActive || !enabledApplication}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.customerConfirmOrder}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{Helper.userIsOem() ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.sendToProduction()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={isDisabled || !isForSubmitForProduction || !isProjectActive || generatingTechDoc || !enabledApplication}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.submitForProduction}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{enabledEdifactExport ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleSendERPButton()}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.customerSendERP}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{languages}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{enabledEdifactImport ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.importEdi()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={isDisabled || !isProjectActive}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.customerImportEdi}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.onFileChange(e)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tid='file'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref='fileUploader'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstyle={{ display: 'none' }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t\t\t\t{Helper.userAdmin() && this.props.viewType === 'all' ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleAssignDocumentToBrandPartnerUserModal()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.assignDocument}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleForwardDocumentToBrandPartnerUserModal()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={isDisabled || !canForward || !isProjectActive || !enabledApplication}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.customerForward}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{this.props.viewType === 'my' ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleSendToSupplierModal()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={isDisabled || !enabledApplication}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.customerSendToSupplier}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleConfirmationModal(locale.archive, locale.confirmArchive, 'delete')}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.archive}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t this.toggleConfirmationModal()}>\r\n\t\t\t\t\t\t this.toggleConfirmationModal()}>{confirmationModalTitle}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{confirmationModalAction === 'send' && (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t this.toggleInquiryCustomerModal()}\r\n\t\t\t\t\t\tclassName='inquiry-popup'\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t this.toggleInquiryCustomerModal()}>{locale.inquirySalesDialog}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tthis.setUserContactData(documentTypeId, projectId, newProject, contactData, contactId)\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t this.toggleInquirySellerModal()} className='inquiry-popup'>\r\n\t\t\t\t\t\t this.toggleInquirySellerModal()}>{locale.assignDocument}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.firstAndLastName}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.type}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.company}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t this.toggleAssignDocumentToBrandPartnerUserModal()}\r\n\t\t\t\t\t\tclassName='inquiry-popup'\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t this.toggleAssignDocumentToBrandPartnerUserModal()}>{locale.assignDocument}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.firstAndLastName}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.type}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t this.toggleForwardDocumentToBrandPartnerUserModal()}\r\n\t\t\t\t\t\tclassName='inquiry-popup'\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t this.toggleForwardDocumentToBrandPartnerUserModal()}>{locale.customerForward}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.firstAndLastName}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.name}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.partner}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.user}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t this.toggleCopyDocumentModal()}\r\n\t\t\t\t\t\tsize='md'\r\n\t\t\t\t\t\tclassName='copy-popup'\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t this.toggleCopyDocumentModal()}>{locale.customerConfirmInqury}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t this.setState({ documentTypeId: e.target.value })}\r\n\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{documentTypes.map((type: any) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleCheckbox(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t

{locale.customerConfirmInquryNewProject}

\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t this.toggleSendToSupplierModal()}\r\n\t\t\t\t\t\tsize='lg'\r\n\t\t\t\t\t\tclassName='copy-popup'\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t this.toggleSendToSupplierModal()}>{locale.customerNewOffer}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t this.setState({ documentTypeId: e.target.value })}\r\n\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{documentTypes.map((type: any) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleCheckbox(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t

{locale.customerConfirmInquryNewProject}

\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.firstAndLastName}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.name}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.partner}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.user}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t this.handleCommentChange(e)}\r\n\t\t\t\t\t\t\t\t\t\t\tstyle={{ height: '20vh' }}\r\n\t\t\t\t\t\t\t\t\t\t\tid='comment'\r\n\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(CustomerView);\r\n","import React, { Fragment } from 'react';\r\nimport { NavLink as RRNavLink } from 'react-router-dom';\r\nimport { NavLink, DropdownMenu, UncontrolledDropdown, DropdownToggle } from 'reactstrap';\r\nimport Helper from '../../Helper';\r\nimport locale from '../../Locale';\r\n\r\nfunction CustomerEditMenu(props: any) {\r\n\tconst baseName = process.env.REACT_APP_ROOT_PATH;\r\n\tconst navLinkClass = 'text-uppercase navbar-brand admin-menu-item';\r\n\tconst pathName = window.location.pathname.toLowerCase().replace(/\\/$/, '');\r\n\r\n\tconst adminDocument = [\r\n\t\t{\r\n\t\t\tid: 1,\r\n\t\t\turl: baseName + '/admin/document/configurations',\r\n\t\t\ttitle: locale.adminMenuConfigurations,\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 2,\r\n\t\t\turl: baseName + '/admin/document/document',\r\n\t\t\ttitle: locale.adminMenuDocument,\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 3,\r\n\t\t\turl: baseName + '/admin/document/terms',\r\n\t\t\ttitle: locale.termsPage,\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 4,\r\n\t\t\turl: baseName + '/admin/document/contact',\r\n\t\t\ttitle: locale.contact,\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 5,\r\n\t\t\turl: baseName + '/admin/document/print',\r\n\t\t\ttitle: locale.adminMenuPrintDocument,\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 6,\r\n\t\t\turl: baseName + '/admin/document/history',\r\n\t\t\ttitle: locale.adminMenuHistory,\r\n\t\t},\r\n\t];\r\n\r\n\tconst installerDocument = [\r\n\t\t{\r\n\t\t\tid: 1,\r\n\t\t\turl: baseName + '/admin/document/configurations',\r\n\t\t\ttitle: locale.adminMenuConfigurations,\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 2,\r\n\t\t\turl: baseName + '/admin/document/document',\r\n\t\t\ttitle: locale.adminMenuDocument,\r\n\t\t},\r\n\t];\r\n\r\n\tconst adminConfiguration = [\r\n\t\t{\r\n\t\t\tid: 1,\r\n\t\t\turl: baseName + '/admin/configuration/calculation',\r\n\t\t\ttitle: locale.adminMenuCalculation,\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 2,\r\n\t\t\turl: baseName + '/admin/configuration/position',\r\n\t\t\ttitle: locale.adminMenuPosition,\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 3,\r\n\t\t\turl: baseName + '/admin/configuration/costs',\r\n\t\t\ttitle: locale.adminMenuDiscountsCosts,\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 5,\r\n\t\t\turl: baseName + '/admin/configuration/images',\r\n\t\t\ttitle: locale.adminMenuTechnicalDocumentation,\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 6,\r\n\t\t\turl: baseName + '/admin/configuration/remarks',\r\n\t\t\ttitle: locale.adminMenuSalesRemarks,\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 7,\r\n\t\t\turl: baseName + '/admin/configuration/monter',\r\n\t\t\ttitle: locale.adminMenuInstallerRemarks,\r\n\t\t},\r\n\t];\r\n\r\n\tconst installerConfiguration = [\r\n\t\t{\r\n\t\t\tid: 1,\r\n\t\t\turl: baseName + '/admin/configuration/calculation',\r\n\t\t\ttitle: locale.adminMenuCalculation,\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 4,\r\n\t\t\turl: baseName + '/admin/configuration/images',\r\n\t\t\ttitle: locale.adminMenuTechnicalDocumentation,\r\n\t\t},\r\n\t\t{\r\n\t\t\tid: 6,\r\n\t\t\turl: baseName + '/admin/configuration/monter',\r\n\t\t\ttitle: locale.adminMenuInstallerRemarks,\r\n\t\t},\r\n\t];\r\n\r\n\tconst adminDocumentNavigation = adminDocument.map((link: any) => {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{link.title}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t);\r\n\t});\r\n\r\n\tconst installerDocumentNavigation = installerDocument.map((link: any) => {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{link.title}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t);\r\n\t});\r\n\r\n\tconst adminConfigurationNavigation = adminConfiguration.map((link: any) => {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{link.title}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t);\r\n\t});\r\n\r\n\tconst installerConfigurationNavigation = installerConfiguration.map((link: any) => {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{link.title}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t);\r\n\t});\r\n\tif (window.location.pathname.toLowerCase().indexOf('/admin/configuration') >= 0) {\r\n\t\tif (Helper.userInstaller()) {\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t\t\t
{installerConfigurationNavigation}
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{installerConfiguration.filter((e) => e.url.toLowerCase() === pathName).map((e) => e.title)}\r\n\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{installerConfigurationNavigation}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t);\r\n\t\t} else if (Helper.userAdmin()) {\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t\t\t
{adminConfigurationNavigation}
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{adminConfiguration.filter((e) => e.url.toLowerCase() === pathName).map((e) => e.title)}\r\n\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{adminConfigurationNavigation}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t);\r\n\t\t}\r\n\t} else {\r\n\t\tif (Helper.userInstaller()) {\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t\t\t
{installerDocumentNavigation}
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{installerDocument.filter((e) => e.url.toLowerCase() === pathName).map((e) => e.title)}\r\n\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{installerDocumentNavigation}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t);\r\n\t\t} else if (Helper.userAdmin()) {\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t\t\t
{adminDocumentNavigation}
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{adminDocument.filter((e) => e.url.toLowerCase() === pathName).map((e) => e.title)}\r\n\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{adminDocumentNavigation}\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t);\r\n\t\t}\r\n\t}\r\n\treturn null;\r\n}\r\n\r\nexport default CustomerEditMenu;\r\n","import React from 'react';\r\nimport { Row, Col, Input, Form, Label, FormGroup, Modal, ModalHeader, ModalBody, Container } from 'reactstrap';\r\nimport { BootstrapTable, TableHeaderColumn } from 'react-bootstrap-table';\r\nimport locale from '../../Locale';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../../store/Configurator';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport Helper from '../../Helper';\r\nimport CustomerEditMenu from './CustomerEditMenu';\r\nimport './Admin.css';\r\nimport Button from '../Button';\r\nimport Loading from 'react-fullscreen-loading';\r\n\r\ninterface IProps extends RouteComponentProps {\r\n\ttheme?: any;\r\n\tdocument?: any;\r\n}\r\ninterface IState {\r\n\tDocumentId: string;\r\n\tDocumentNumber: string;\r\n\tProjectNumber: string;\r\n\tProjectStatus: string;\r\n\tCustomerNumber: { value: string; validate: string };\r\n\tCommission: { value: string; validate: string };\r\n\tComment: string;\r\n\tDocumentLastChanged: string;\r\n\tDocumentStatus: string;\r\n\tDocumentStatusName: string;\r\n\tDocumentType: string;\r\n\tDocumentTypeName: string;\r\n\tPartnerName: string;\r\n\tSalesman: string;\r\n\tSalesmanRecipient: string;\r\n\tPartnerRecipientName: string;\r\n\tDocumentConfigurations: any[];\r\n\ttotalPriceWithoutTax: string;\r\n\ttotalTax: string;\r\n\tfinalPrice: string;\r\n\tContactName: string;\r\n\tContactEmail: string;\r\n\tContactTelephone: string;\r\n\tCurrency: string;\r\n\tcontacts: any[];\r\n\tchangeContactModal: boolean;\r\n\tselectedContactd: string;\r\n\tconfirmationModal: boolean;\r\n\tconfirmationModalTitle: string;\r\n\tconfirmationModalMessage: string;\r\n\tconfirmationModalAction: string;\r\n\tloading: boolean;\r\n}\r\nclass CustomerDocument extends React.Component {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\tDocumentId: '',\r\n\t\t\tDocumentNumber: '',\r\n\t\t\tProjectNumber: '',\r\n\t\t\tProjectStatus: '',\r\n\t\t\tCustomerNumber: { value: '', validate: '' },\r\n\t\t\tCommission: { value: '', validate: '' },\r\n\t\t\tComment: '',\r\n\t\t\tDocumentLastChanged: '',\r\n\t\t\tDocumentStatus: '',\r\n\t\t\tDocumentStatusName: '',\r\n\t\t\tDocumentType: '',\r\n\t\t\tDocumentTypeName: '',\r\n\t\t\tPartnerName: '',\r\n\t\t\tSalesman: '',\r\n\t\t\tSalesmanRecipient: '',\r\n\t\t\tPartnerRecipientName: '',\r\n\t\t\tDocumentConfigurations: [],\r\n\t\t\ttotalPriceWithoutTax: '',\r\n\t\t\ttotalTax: '',\r\n\t\t\tfinalPrice: '',\r\n\t\t\tContactName: '',\r\n\t\t\tContactEmail: '',\r\n\t\t\tContactTelephone: '',\r\n\t\t\tCurrency: 'EUR',\r\n\t\t\tcontacts: [],\r\n\t\t\tchangeContactModal: false,\r\n\t\t\tselectedContactd: '',\r\n\t\t\tconfirmationModal: false,\r\n\t\t\tconfirmationModalTitle: '',\r\n\t\t\tconfirmationModalMessage: '',\r\n\t\t\tconfirmationModalAction: '',\r\n\t\t\tloading: false,\r\n\t\t};\r\n\t}\r\n\r\n\tcomponentDidMount() {\r\n\t\tif (!Helper.userAdmin() && !Helper.userInstaller()) {\r\n\t\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/admin/document/configurations');\r\n\t\t}\r\n\t\tif (!this.props.document.documentId) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.getDocument();\r\n\t}\r\n\tgetDocument() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tconst url = '/document/' + this.props.document.documentId + '?brandPartnerId=' + Helper.brandPartnerId();\r\n\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tconst state: IState = this.state;\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\tstate.DocumentId = data.SalesDocumentId;\r\n\t\t\t\t\tstate.DocumentNumber = data.DocumentNumber;\r\n\t\t\t\t\tstate.ProjectNumber = data.ProjectNumber;\r\n\t\t\t\t\tstate.ProjectStatus = Helper.getLocalizedName(data.ProjectStatus);\r\n\t\t\t\t\tstate.Currency = data.Currency ?? 'EUR';\r\n\t\t\t\t\tstate.CustomerNumber = {\r\n\t\t\t\t\t\tvalue: data.CustomerNumber || '',\r\n\t\t\t\t\t\tvalidate: '',\r\n\t\t\t\t\t};\r\n\t\t\t\t\tstate.Commission = {\r\n\t\t\t\t\t\tvalue: data.Commission || '',\r\n\t\t\t\t\t\tvalidate: '',\r\n\t\t\t\t\t};\r\n\t\t\t\t\tstate.Comment = data.Comment;\r\n\t\t\t\t\tstate.DocumentLastChanged = Helper.dateWithTimeConvert(data.DocumentLastChanged);\r\n\t\t\t\t\tstate.DocumentStatus = data.DocumentStatusId;\r\n\t\t\t\t\tstate.DocumentStatusName = Helper.getLocalizedName(data.DocumentStatusName);\r\n\t\t\t\t\tstate.DocumentType = data.DocumentType;\r\n\t\t\t\t\tstate.DocumentTypeName = Helper.getLocalizedName(data.DocumentTypeName);\r\n\t\t\t\t\tstate.totalPriceWithoutTax = data.TotalPrice.toLocaleString('de-DE', {\r\n\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\tcurrency: state.Currency,\r\n\t\t\t\t\t});\r\n\t\t\t\t\tstate.totalTax = data.TotalTaxCost.toLocaleString('de-DE', {\r\n\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\tcurrency: state.Currency,\r\n\t\t\t\t\t});\r\n\t\t\t\t\tstate.finalPrice = data.TotalPriceWithTax.toLocaleString('de-DE', {\r\n\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\tcurrency: state.Currency,\r\n\t\t\t\t\t});\r\n\t\t\t\t\tlet partner = '';\r\n\t\t\t\t\tif (data.PartnerName) {\r\n\t\t\t\t\t\tpartner = data.PartnerName.replace('null', '');\r\n\t\t\t\t\t\tpartner = Helper.getLocalizedName(partner);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tstate.PartnerName = partner;\r\n\t\t\t\t\tlet partnerRecipient = '';\r\n\t\t\t\t\tif (data.RecipientPartnerName) {\r\n\t\t\t\t\t\tpartnerRecipient = Helper.getLocalizedName(data.RecipientPartnerName.replace('null', ''));\r\n\t\t\t\t\t}\r\n\t\t\t\t\tstate.PartnerRecipientName = partnerRecipient;\r\n\t\t\t\t\tstate.Salesman = data.Salesman;\r\n\t\t\t\t\tstate.SalesmanRecipient = data.SalesmanRecipient;\r\n\t\t\t\t\tstate.DocumentConfigurations = data.Configurations;\r\n\t\t\t\t\tstate.ContactName = data.ContactName;\r\n\t\t\t\t\tstate.ContactEmail = data.ContactEmail;\r\n\t\t\t\t\tstate.ContactTelephone = data.ContactTelephone;\r\n\t\t\t\t\tthis.setState(state);\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\thandleChange(e: any) {\r\n\t\tconst state: any = this.state;\r\n\t\tconst { target } = e;\r\n\t\tconst value = target.value;\r\n\t\tstate[target.name].value = value;\r\n\t\tstate.Saved = false;\r\n\t\tthis.setState(state);\r\n\t}\r\n\thandleRowSelect(row: any) {\r\n\t\tthis.setState({ selectedContactd: row.ContactId });\r\n\t}\r\n\ttoggleConfirmationModal(title?: string, message?: string, action?: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.confirmationModal = !state.confirmationModal;\r\n\t\tif (title && message && action) {\r\n\t\t\tstate.confirmationModalTitle = title;\r\n\t\t\tstate.confirmationModalMessage = message;\r\n\t\t\tstate.confirmationModalAction = action;\r\n\t\t}\r\n\r\n\t\tthis.setState(state);\r\n\t}\r\n\tconfirmationAction(action: string) {\r\n\t\tif (action === 'changeContact') {\r\n\t\t\tthis.changeContact();\r\n\t\t}\r\n\t\tthis.setState({ confirmationModal: false });\r\n\t}\r\n\tbuttonSaveClick() {\r\n\t\tthis.setState({ loading: true }, () => this.saveDocument());\r\n\t}\r\n\tremoveCommentClick() {\r\n\t\tthis.setState({ loading: true }, () => this.removeDocumentComment());\r\n\t}\r\n\ttoggleChangeContactModal() {\r\n\t\tconst url = '/brand/' + Helper.brandPartnerId() + '/contacts';\r\n\t\tconst state: IState = this.state;\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\tstate.contacts = data;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\r\n\t\tstate.changeContactModal = !state.changeContactModal;\r\n\t\tthis.setState(state);\r\n\t}\r\n\tsaveDocument() {\r\n\t\tconst url = '/document/' + this.props.document.documentId;\r\n\r\n\t\tconst body = {\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tCommission: this.state.Commission.value,\r\n\t\t\tCustomerNumber: this.state.CustomerNumber.value,\r\n\t\t};\r\n\t\tHelper.putData(url, JSON.stringify(body)).then((data) => {\r\n\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t}\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t}\r\n\tremoveDocumentComment() {\r\n\t\tconst url = '/document/' + this.props.document.documentId + '/removeComment';\r\n\r\n\t\tconst body = {\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId()\r\n\t\t};\r\n\t\tHelper.postData(url, JSON.stringify(body)).then((data) => {\r\n\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t}\r\n\t\t\tthis.setState({ loading: false }, () => this.getDocument());\r\n\t\t});\r\n\t}\r\n\tchangeContact() {\r\n\t\tthis.setState({\r\n\t\t\tloading: true,\r\n\t\t\tchangeContactModal: false,\r\n\t\t});\r\n\t\tconst documentId = this.state.DocumentId;\r\n\t\tconst contactId = this.state.selectedContactd;\r\n\r\n\t\tif (documentId && contactId) {\r\n\t\t\tconst url = '/document/' + documentId + '/changecontact';\r\n\t\t\tconst body = {\r\n\t\t\t\tContactId: contactId,\r\n\t\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\t};\r\n\t\t\tHelper.postData(url, JSON.stringify(body))\r\n\t\t\t\t.then((data) => {\r\n\t\t\t\t\tif (data) {\r\n\t\t\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t\t\t(this.props as any).setError(locale.assignDocumentToContactTitle, data.Message);\r\n\t\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\t\tloading: false,\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthis.setState(\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tloading: false,\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t() => this.getDocument()\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.catch((error) => {\r\n\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t});\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst state: IState = this.state;\r\n\t\tconst disabled = state.CustomerNumber.validate === 'has-danger';\r\n\t\tconst disableEditDocument = this.props.document && this.props.document.disableEdit;\r\n\r\n\t\tconst themeHeaderColor = this.props.theme && this.props.theme.color ? this.props.theme.color : '#86A33C';\r\n\t\tconst themeHeaderFontColor = this.props.theme && this.props.theme.headerFontColor ? this.props.theme.headerFontColor : '#fff';\r\n\r\n\t\tvar selectRowProp: any = {\r\n\t\t\tmode: 'radio',\r\n\t\t\tclickToSelect: true,\r\n\t\t\thideSelectColumn: true,\r\n\t\t\tbgColor: Helper.themeBottonColorWithShadowRGBA(),\r\n\t\t\tselected: [this.state.selectedContactd],\r\n\t\t\tonSelect: (row: any) => this.handleRowSelect(row),\r\n\t\t};\r\n\t\tconst options = {\r\n\t\t\tsizePerPage: 10,\r\n\t\t\tnoDataText: locale.noResults,\r\n\t\t};\r\n\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{this.state.loading ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleChangeContactModal()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t (window.location.href = `mailto:${state.ContactEmail}`)}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tSave\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t\t this.toggleChangeContactModal()} className='inquiry-popup'>\r\n\t\t\t\t\t this.toggleChangeContactModal()}>{locale.assignDocumentToContactTitle}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.firstAndLastName}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.name}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.partner}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.user}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\tthis.toggleConfirmationModal(locale.assignDocumentToContactTitle, locale.assignDocumentToContactConfirmation, 'changeContact')\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t{locale.save}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{locale.assignDocumentToContactAddNew}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t this.toggleConfirmationModal()}>\r\n\t\t\t\t\t this.toggleConfirmationModal()}>{this.state.confirmationModalTitle}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{this.state.confirmationModalMessage}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(CustomerDocument);\r\n","import React from \"react\";\r\nimport { Row, Col } from \"reactstrap\";\r\n// import DatePicker from \"react-datepicker\";\r\nimport \"react-datepicker/dist/react-datepicker.css\";\r\nimport \"../Configurator.css\";\r\nimport \"./Admin.css\";\r\nimport locale from \"../../Locale\";\r\nimport { bindActionCreators } from \"redux\";\r\nimport { connect } from \"react-redux\";\r\nimport { actionCreators } from \"../../store/Configurator\";\r\nimport { RouteComponentProps } from \"react-router-dom\";\r\nimport Helper from \"../../Helper\";\r\nimport CustomerEditMenu from \"./CustomerEditMenu\";\r\nimport { BootstrapTable, TableHeaderColumn } from \"react-bootstrap-table\";\r\nimport Loading from \"react-fullscreen-loading\";\r\n\r\ninterface IProps extends RouteComponentProps {\r\n document?: any;\r\n}\r\ninterface IState {\r\n selectedId: string;\r\n historyList: any;\r\n loading: boolean;\r\n}\r\nclass CustomerHistory extends React.Component {\r\n constructor(props: IProps) {\r\n super(props);\r\n this.state = {\r\n selectedId: \"\",\r\n historyList: [],\r\n loading: false\r\n };\r\n }\r\n historyData(data: any): any {\r\n let historyList: any = [];\r\n if (data && data.length > 0) {\r\n data.forEach((item: any) => {\r\n historyList.push({\r\n id: item.Id,\r\n image: item.Image,\r\n text: item.Message\r\n });\r\n });\r\n }\r\n return historyList;\r\n }\r\n componentDidMount() {\r\n this.setState({ loading: true });\r\n const state: IState = this.state;\r\n let url =\"/document/\" + this.props.document.documentId + \"/history\";\r\n\r\n Helper.getData(url)\r\n .then(data => {\r\n if (data && data.length > 0) {\r\n let historyList: any = [];\r\n data.forEach((item: any) => {\r\n historyList.push({\r\n id: item.SalesDocumentId,\r\n configurationId: item.ConfigurationId,\r\n dateChanged: Helper.dateWithTimeConvert(item.DateTime),\r\n dateChangedDate: item.DateTime,\r\n text: Helper.getLocalizedName(item.Text),\r\n type: item.ConfigurationId !== null ? (Helper.getLocalizedName(item.Type) +\"\\n\" + item.ConfigurationId) : Helper.getLocalizedName(item.Type),\r\n user: item.User,\r\n value: Helper.getLocalizedValueOrNull(item.Value)\r\n });\r\n });\r\n state.historyList = historyList;\r\n this.setState(state);\r\n }\r\n this.setState({ loading: false });\r\n })\r\n .catch(error => {\r\n this.setState({ loading: false });\r\n console.log(error);\r\n });\r\n }\r\n render() {\r\n const { historyList } = this.state;\r\n const options = {\r\n pageSize: 5,\r\n noDataText: locale.noResults\r\n };\r\n const multilineCell = (cell: any, row: any) => {\r\n if (cell) {\r\n return ``;\r\n } else {\r\n return \"\";\r\n }\r\n };\r\n const dateSort = (a: any, b: any, order: string) => {\r\n if (order === \"asc\") {\r\n if (new Date(a.dateChangedDate) < new Date(b.dateChangedDate))\r\n return 1;\r\n if (new Date(a.dateChangedDate) > new Date(b.dateChangedDate))\r\n return -1;\r\n } else if (order === \"desc\") {\r\n if (new Date(a.dateChangedDate) > new Date(b.dateChangedDate))\r\n return 1;\r\n if (new Date(a.dateChangedDate) < new Date(b.dateChangedDate))\r\n return -1;\r\n }\r\n return 0;\r\n };\r\n return (\r\n
\r\n {this.state.loading ? (\r\n \r\n ) : (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {locale.type}\r\n \r\n\r\n \r\n {locale.text}\r\n \r\n\r\n \r\n {locale.value}\r\n \r\n\r\n \r\n {locale.user}\r\n \r\n\r\n \r\n {locale.date}\r\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(\r\n (state: any) => state.configurator,\r\n dispatch => bindActionCreators(actionCreators, dispatch)\r\n)(CustomerHistory);\r\n","export default __webpack_public_path__ + \"static/media/salesUser.e0075c27.png\";","import React from 'react';\r\nimport { Row, Col, Input, Form, Label, FormGroup, Modal, ModalHeader, ModalBody } from 'reactstrap';\r\nimport '../Configurator.css';\r\nimport './Admin.css';\r\nimport locale from '../../Locale';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../../store/Configurator';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport Helper from '../../Helper';\r\nimport CustomerEditMenu from './CustomerEditMenu';\r\nimport { BootstrapTable, TableHeaderColumn } from 'react-bootstrap-table';\r\nimport salesUser from '../../images/salesUser.png';\r\nimport Button from '../Button';\r\nimport Loading from 'react-fullscreen-loading';\r\nimport DatePicker from 'react-date-picker';\r\n\r\ninterface IProps extends RouteComponentProps {\r\n\tremarksType: string; //montage, sales\r\n\tconfiguration: any;\r\n\tdocument?: any;\r\n\ttheme?: any;\r\n}\r\ninterface IState {\r\n\tselectedId: string;\r\n\tattachments: any;\r\n\timage: any;\r\n\ticon: any;\r\n\timageName: string;\r\n\tcomment: { value: string; validate: string };\r\n\tloading: boolean;\r\n\tconfirmationModal: boolean;\r\n\tcustomerPosition: { value: string; validate: string };\r\n\tcustomerSubPosition: { value: string; validate: string };\r\n\tdeliveryDate: any;\r\n\tcommission: { value: string; validate: string };\r\n}\r\nconst validFileExtensions = ['.jpg', '.jpeg', '.bmp', '.png'];\r\nclass CustomerRemarks extends React.Component {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\tselectedId: '',\r\n\t\t\tattachments: [],\r\n\t\t\ticon: null,\r\n\t\t\timage: null,\r\n\t\t\timageName: '',\r\n\t\t\tcomment: { value: '', validate: '' },\r\n\t\t\tloading: false,\r\n\t\t\tconfirmationModal: false,\r\n\t\t\tcustomerPosition: { value: '', validate: '' },\r\n\t\t\tcustomerSubPosition: { value: '', validate: '' },\r\n\t\t\tdeliveryDate: null,\r\n\t\t\tcommission: { value: '', validate: '' },\r\n\t\t};\r\n\t}\r\n\tattachmentData(data: any): any {\r\n\t\tlet attachments: any = [];\r\n\t\tif (data && data.length > 0) {\r\n\t\t\tdata.forEach((item: any) => {\r\n\t\t\t\tlet comment = '';\r\n\t\t\t\tlet icon = salesUser;\r\n\r\n\t\t\t\tif (this.props.remarksType === 'sales') {\r\n\t\t\t\t\tcomment = item.SalesComment;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tcomment = item.InstallerComment;\r\n\t\t\t\t}\r\n\t\t\t\tattachments.push({\r\n\t\t\t\t\tid: item.SalesDocumentConfigurationCommentId,\r\n\t\t\t\t\ticon: icon,\r\n\t\t\t\t\timage: item.CommentImageUrl,\r\n\t\t\t\t\timageName: item.CommentImageName,\r\n\t\t\t\t\tcomment: comment,\r\n\t\t\t\t\tdate: Helper.dateWithTimeConvert(item.Date),\r\n\t\t\t\t\tdateDate: item.Date,\r\n\t\t\t\t\tuser: item.User,\r\n\t\t\t\t\tdelete: item.CanDelete,\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t}\r\n\t\treturn attachments;\r\n\t}\r\n\tgetComments() {\r\n\t\tif (!this.props.configuration.documentConfigurationId || this.props.remarksType === 'position') {\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst state: IState = this.state;\r\n\t\tconst url =\r\n\t\t\tthis.props.remarksType === 'sales'\r\n\t\t\t\t? '/document/configuration/' + this.props.configuration.documentConfigurationId + '/notes?type=0'\r\n\t\t\t\t: '/document/configuration/' + this.props.configuration.documentConfigurationId + '/notes?type=1';\r\n\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tlet items = this.attachmentData(data);\r\n\t\t\t\tstate.attachments = items;\r\n\t\t\t\tstate.comment = { value: '', validate: '' };\r\n\t\t\t\tstate.image = null;\r\n\t\t\t\tstate.imageName = '';\r\n\t\t\t\tstate.loading = false;\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\tgetDocumentConfigurationData() {\r\n\t\tif (!this.props.configuration.documentConfigurationId || this.props.remarksType !== 'position') {\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst state: IState = this.state;\r\n\t\tconst url = '/document/configuration/' + this.props.configuration.documentConfigurationId;\r\n\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tstate.customerPosition.value = data.CustomerPosition || '';\r\n\t\t\t\tstate.customerSubPosition.value = data.CustomerSubPosition || '';\r\n\t\t\t\tstate.commission.value = data.Commission || '';\r\n\t\t\t\tstate.comment.value = data.Comment || ''; // TODO: remove\r\n\t\t\t\tlet date: any = null;\r\n\t\t\t\tif (data.DeliveryDate) {\r\n\t\t\t\t\tdate = new Date(data.DeliveryDate);\r\n\t\t\t\t\tdate.setTime(date.getTime() + 60 * 60 * 1000 * 12);\r\n\t\t\t\t}\r\n\t\t\t\tstate.deliveryDate = date;\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\tcomponentDidMount() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tthis.getComments();\r\n\t\tthis.getDocumentConfigurationData();\r\n\t}\r\n\tuploadFile() {\r\n\t\t(this.refs.fileUploader as HTMLElement).click();\r\n\t}\r\n\tonImageChange(event: any) {\r\n\t\tif (event.target.files && event.target.files[0]) {\r\n\t\t\tconst fileName = event.target.files[0].name;\r\n\t\t\tlet isImage = false;\r\n\t\t\tfor (let i = 0; i < validFileExtensions.length; i++) {\r\n\t\t\t\tlet ext = validFileExtensions[i];\r\n\t\t\t\tif (fileName.substr(fileName.length - ext.length, ext.length).toLowerCase() === ext.toLowerCase()) {\r\n\t\t\t\t\tisImage = true;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (isImage) {\r\n\t\t\t\tconst reader = new FileReader();\r\n\t\t\t\treader.readAsDataURL(event.target.files[0]);\r\n\t\t\t\treader.onload = (e: any) => {\r\n\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\timage: e.target.result,\r\n\t\t\t\t\t\timageName: fileName,\r\n\t\t\t\t\t});\r\n\t\t\t\t};\r\n\t\t\t} else {\r\n\t\t\t\t(this.props as any).setError(locale.imageUpload, locale.notImage);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tsaveRemark() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tlet url = '/document/configuration/' + this.props.configuration.documentConfigurationId;\r\n\t\tconst state: IState = this.state;\r\n\t\tif (!state.comment.value) {\r\n\t\t\tthis.setState(state);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (this.props.remarksType === 'sales') {\r\n\t\t\turl = url + '/notes?type=0';\r\n\t\t} else {\r\n\t\t\turl = url + '/notes?type=1';\r\n\t\t}\r\n\t\tconst body = {\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tComment: state.comment.value,\r\n\t\t\tFileBase64: state.image,\r\n\t\t\tFileName: state.imageName,\r\n\t\t};\r\n\t\tHelper.postData(url, JSON.stringify(body))\r\n\t\t\t.then((saveData) => {\r\n\t\t\t\tif (saveData) {\r\n\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\timage: null,\r\n\t\t\t\t\t\timageName: '',\r\n\t\t\t\t\t\tcomment: { value: '', validate: '' },\r\n\t\t\t\t\t});\r\n\t\t\t\t\tthis.getComments();\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\thandleChange(e: any) {\r\n\t\tconst state: any = this.state;\r\n\t\tconst { target } = e;\r\n\t\tconst value = target.value;\r\n\t\tstate[target.name].value = value;\r\n\t\tstate.Saved = false;\r\n\t\tthis.setState(state);\r\n\t}\r\n\tsetDeliverDate(date: any) {\r\n\t\tconst state: any = this.state;\r\n\t\tif (date !== null) date.setTime(date.getTime() + 60 * 60 * 1000 * 12);\r\n\t\tstate.deliveryDate = date;\r\n\t\tthis.setState(state);\r\n\t}\r\n\tremoveRemark() {\r\n\t\tconst url =\r\n\t\t\t'/document/configuration/' +\r\n\t\t\tthis.props.configuration.documentConfigurationId +\r\n\t\t\t'/notes/' +\r\n\t\t\tthis.state.selectedId +\r\n\t\t\t'?brandPartnerId=' +\r\n\t\t\tHelper.brandPartnerId();\r\n\t\tthis.setState({ selectedId: '' });\r\n\t\tHelper.deleteData(url)\r\n\t\t\t.then((saveData) => {\r\n\t\t\t\tif (saveData.Message && saveData.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.deleting, saveData.Message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.getComments();\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t})\r\n\t\t\t.catch(() => {\r\n\t\t\t\t(this.props as any).setError(locale.deleting, locale.generalException);\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t});\r\n\t}\r\n\ttoggleConfirmationModal(id?: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.confirmationModal = !state.confirmationModal;\r\n\t\tstate.selectedId = id ? id : '';\r\n\t\tthis.setState(state);\r\n\t}\r\n\tconfirmationDelete() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tthis.removeRemark();\r\n\t\tthis.setState({ confirmationModal: false });\r\n\t}\r\n\tbuttonSaveClick() {\r\n\t\tthis.setState({ loading: true }, () => this.saveDocumentConfiguration());\r\n\t}\r\n\tsaveDocumentConfiguration() {\r\n\t\tconst url = '/document/configuration/' + this.props.configuration.documentConfigurationId;\r\n\r\n\t\tconst body = {\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tCustomerPosition: this.state.customerPosition.value,\r\n\t\t\tCustomerSubPosition: this.state.customerSubPosition.value,\r\n\t\t\tDeliveryDate: this.state.deliveryDate,\r\n\t\t\tCommission: this.state.commission.value,\r\n\t\t};\r\n\t\tHelper.putData(url, JSON.stringify(body)).then((data) => {\r\n\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t}\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t}\r\n\trender() {\r\n\t\tconst { attachments } = this.state;\r\n\t\tconst state: IState = this.state;\r\n\t\tconst options = {\r\n\t\t\tpageSize: 5,\r\n\t\t\tnoDataText: locale.noResults,\r\n\t\t};\r\n\r\n\t\tlet linkFormatter = (cell: any, row: any) => {\r\n\t\t\tif (row.imageName && row.imageName !== null) {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t);\r\n\t\t\t} else {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t};\r\n\t\tlet iconFormatter = (cell: any) => {\r\n\t\t\treturn ``;\r\n\t\t};\r\n\t\tconst cellDelete = (cell: any, row: any) => {\r\n\t\t\tif (!row.delete || disableEditDocument) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\t\tconst dateSort = (a: any, b: any, order: string) => {\r\n\t\t\tif (order === 'asc') {\r\n\t\t\t\tif (new Date(a.dateDate) < new Date(b.dateDate)) return 1;\r\n\t\t\t\tif (new Date(a.dateDate) > new Date(b.dateDate)) return -1;\r\n\t\t\t} else if (order === 'desc') {\r\n\t\t\t\tif (new Date(a.dateDate) > new Date(b.dateDate)) return 1;\r\n\t\t\t\tif (new Date(a.dateDate) < new Date(b.dateDate)) return -1;\r\n\t\t\t}\r\n\t\t\treturn 0;\r\n\t\t};\r\n\t\tconst multilineCell = (cell: any, row: any) => {\r\n\t\t\tif (cell) {\r\n\t\t\t\treturn ``;\r\n\t\t\t} else {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst disableEditDocument =\r\n\t\t\t(this.props.document && this.props.document.disableEdit) || !(this.props.configuration && this.props.configuration.canEdit);\r\n\t\tconst displayDetails = this.props.remarksType === 'position' ? 'block' : 'none';\r\n\t\tconst displayComment = this.props.remarksType === 'position' ? 'none' : 'block';\r\n\r\n\t\t// Only installer can add new 'Instaler' comments\r\n\t\tconst displayCommentAdd =\r\n\t\t\t(this.props.remarksType === 'monter' && Helper.userInstaller()) || (this.props.remarksType === 'sales' && Helper.userAdmin())\r\n\t\t\t\t? 'block'\r\n\t\t\t\t: 'none';\r\n\r\n\t\tconst disabledSave = state.comment.value === '';\r\n\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{this.state.loading ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.setDeliverDate(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tSave\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t this.handleChange(e)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={this.state.comment.value}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tstyle={{ height: '20vh' }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tid='comment'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t this.uploadFile()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={disableEditDocument}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={'button btn-secondary'}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tstyle={{ verticalAlign: 'top', backgroundColor: Helper.themeButtonColor(), color: Helper.themeButtonFontColor() }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.adminRemarkAddImage}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t this.saveRemark()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={disableEditDocument || disabledSave}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={'button btn-secondary ml-2'}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tstyle={{ verticalAlign: 'top', backgroundColor: Helper.themeButtonColor(), color: Helper.themeButtonFontColor() }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.save}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t this.onImageChange(e)} id='file' ref='fileUploader' style={{ display: 'none' }} />\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tID\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\timageName\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.adminRemark}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.image}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.user}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.date}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t this.toggleConfirmationModal()}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t this.toggleConfirmationModal()}>{locale.delete}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.confirmDelete}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(CustomerRemarks);\r\n","import React from 'react';\r\nimport {\r\n\tRow,\r\n\tCol,\r\n\tInput,\r\n\tForm,\r\n\tLabel,\r\n\tFormGroup,\r\n\tModal,\r\n\tModalHeader,\r\n\tModalBody,\r\n\tUncontrolledDropdown,\r\n\tDropdownToggle,\r\n\tDropdownMenu,\r\n\tDropdownItem,\r\n} from 'reactstrap';\r\nimport 'react-datepicker/dist/react-datepicker.css';\r\nimport '../Configurator.css';\r\nimport './Admin.css';\r\nimport locale from '../../Locale';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../../store/Configurator';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport CustomerEditMenu from './CustomerEditMenu';\r\nimport { BootstrapTable, TableHeaderColumn } from 'react-bootstrap-table';\r\nimport Button from '../Button';\r\nimport Helper from '../../Helper';\r\nimport Loading from 'react-fullscreen-loading';\r\n\r\ninterface IProps extends RouteComponentProps {\r\n\tconfiguration?: any;\r\n\tdocument?: any;\r\n}\r\ninterface IState {\r\n\tdiscountModal: boolean;\r\n\tcostModal: boolean;\r\n\tnetCostModal: boolean;\r\n\tdiscountValue: any;\r\n\tdiscountLevel: any;\r\n\tdiscountType: { value: any; validate: any };\r\n\tdiscountTypeId: any;\r\n\tcostValue: any;\r\n\tnetCostValue: any;\r\n\tdiscountText: any;\r\n\tcostText: any;\r\n\tnetCostText: any;\r\n\tdiscounts: any;\r\n\tadditionalCosts: any;\r\n\tnetCosts: any;\r\n\tconfigurationPrice: string;\r\n\tadditionalCost: string;\r\n\tconfigurationWithAdditionalCost: string;\r\n\tdiscountValueSum: string;\r\n\tdiscountPercentageSum: string;\r\n\tvalueAfterDiscountSum: string;\r\n\tconfigurationWithDiscountCost: string;\r\n\tnetCost: string;\r\n\ttotalPrice: string;\r\n\ttaxCost: string;\r\n\ttotalPriceWithTax: string;\r\n\ttotalPriceWithoutTax: string;\r\n\ttotalTax: string;\r\n\tfinalPrice: string;\r\n\tselectedTax: string;\r\n\ttaxList: any[];\r\n\tdiscountTypeList: any[];\r\n\tconfirmationModal: boolean;\r\n\tconfirmationModalTitle: string;\r\n\tconfirmationModalMessage: string;\r\n\tconfirmationModalAction: string;\r\n\tselectedId: string;\r\n\tloading: boolean;\r\n\terrorTextInput: false;\r\n\terrorNumberInput: false;\r\n\terrorNumber2Input: false;\r\n\terrorTextMessage: string;\r\n\terrorNumberMessage: string;\r\n\terrorNumber2Message: string;\r\n\taddEditError: boolean;\r\n\taddEditMessage: string;\r\n}\r\nclass CustomerCalculation extends React.Component {\r\n\tprivate timeout: any;\r\n\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.timeout = 0;\r\n\t\tthis.state = {\r\n\t\t\tdiscountModal: false,\r\n\t\t\tcostModal: false,\r\n\t\t\tnetCostModal: false,\r\n\t\t\tdiscounts: [],\r\n\t\t\tadditionalCosts: [],\r\n\t\t\tnetCosts: [],\r\n\t\t\tcostText: { value: '', validate: '' },\r\n\t\t\tnetCostText: { value: '', validate: '' },\r\n\t\t\tdiscountText: { value: '', validate: '' },\r\n\t\t\tcostValue: { value: '', validate: '' },\r\n\t\t\tnetCostValue: { value: '', validate: '' },\r\n\t\t\tdiscountValue: { value: '', validate: '' },\r\n\t\t\tdiscountLevel: { value: '', validate: '' },\r\n\t\t\tdiscountType: { value: '', validate: '' },\r\n\t\t\tdiscountTypeId: '',\r\n\t\t\tconfigurationPrice: '',\r\n\t\t\tadditionalCost: '',\r\n\t\t\tconfigurationWithAdditionalCost: '',\r\n\t\t\tdiscountValueSum: '',\r\n\t\t\tdiscountPercentageSum: '',\r\n\t\t\tvalueAfterDiscountSum: '',\r\n\t\t\tconfigurationWithDiscountCost: '',\r\n\t\t\tnetCost: '',\r\n\t\t\ttotalPrice: '',\r\n\t\t\ttaxCost: '',\r\n\t\t\ttotalPriceWithTax: '',\r\n\t\t\ttotalPriceWithoutTax: '',\r\n\t\t\ttotalTax: '',\r\n\t\t\tfinalPrice: '',\r\n\t\t\tselectedTax: '',\r\n\t\t\ttaxList: [],\r\n\t\t\tdiscountTypeList: [],\r\n\t\t\tconfirmationModal: false,\r\n\t\t\tconfirmationModalTitle: '',\r\n\t\t\tconfirmationModalMessage: '',\r\n\t\t\tconfirmationModalAction: '',\r\n\t\t\tselectedId: '',\r\n\t\t\tloading: false,\r\n\t\t\terrorTextInput: false,\r\n\t\t\terrorNumberInput: false,\r\n\t\t\terrorNumber2Input: false,\r\n\t\t\terrorTextMessage: '',\r\n\t\t\terrorNumberMessage: '',\r\n\t\t\terrorNumber2Message: '',\r\n\t\t\taddEditError: false,\r\n\t\t\taddEditMessage: '',\r\n\t\t};\r\n\t}\r\n\tgetCalculation() {\r\n\t\tif (!this.props.configuration.documentConfigurationId) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.setState({ loading: true });\r\n\t\tconst url =\r\n\t\t\t'/document/configuration/' + this.props.configuration.documentConfigurationId + '/calculation?brandPartnerId=' + Helper.brandPartnerId();\r\n\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.getCalculationData(data);\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\tgetCalculationData(data: any) {\r\n\t\tlet state: IState = this.state;\r\n\r\n\t\tlet additonalCosts: any = [];\r\n\t\tlet netCosts: any = [];\r\n\t\tlet discounts: any = [];\r\n\r\n\t\tif (data) {\r\n\t\t\tstate.configurationPrice = data.ConfigurationPrice.toLocaleString('de-DE', {\r\n\t\t\t\tstyle: 'currency',\r\n\t\t\t\tcurrency: data.Currency,\r\n\t\t\t});\r\n\t\t\tstate.additionalCost = data.AdditionalCost.toLocaleString('de-DE', {\r\n\t\t\t\tstyle: 'currency',\r\n\t\t\t\tcurrency: data.Currency,\r\n\t\t\t});\r\n\t\t\tstate.configurationWithAdditionalCost = data.ConfigurationWithAdditionalCost.toLocaleString('de-DE', {\r\n\t\t\t\tstyle: 'currency',\r\n\t\t\t\tcurrency: data.Currency,\r\n\t\t\t});\r\n\t\t\tstate.discountValueSum = data.DiscountValue.toLocaleString('de-DE', {\r\n\t\t\t\tstyle: 'currency',\r\n\t\t\t\tcurrency: data.Currency,\r\n\t\t\t});\r\n\t\t\tstate.discountPercentageSum = data.DiscountPercentage.toLocaleString('de-DE', {\r\n\t\t\t\tstyle: 'currency',\r\n\t\t\t\tcurrency: 'EUR', // always EUR because of replace\r\n\t\t\t}).replace('€', '%');\r\n\t\t\tstate.valueAfterDiscountSum = data.ValueAfterDiscount.toLocaleString('de-DE', {\r\n\t\t\t\tstyle: 'currency',\r\n\t\t\t\tcurrency: data.Currency,\r\n\t\t\t});\r\n\t\t\tstate.configurationWithDiscountCost = data.ConfigurationWithDiscountCost.toLocaleString('de-DE', {\r\n\t\t\t\tstyle: 'currency',\r\n\t\t\t\tcurrency: data.Currency,\r\n\t\t\t});\r\n\t\t\tstate.netCost = data.NetCost.toLocaleString('de-DE', {\r\n\t\t\t\tstyle: 'currency',\r\n\t\t\t\tcurrency: data.Currency,\r\n\t\t\t});\r\n\t\t\tstate.totalPrice = data.TotalPrice.toLocaleString('de-DE', {\r\n\t\t\t\tstyle: 'currency',\r\n\t\t\t\tcurrency: data.Currency,\r\n\t\t\t});\r\n\t\t\tstate.taxCost = data.TaxCost.toLocaleString('de-DE', {\r\n\t\t\t\tstyle: 'currency',\r\n\t\t\t\tcurrency: data.Currency,\r\n\t\t\t});\r\n\t\t\tstate.totalPriceWithTax = data.TotalPriceWithTax.toLocaleString('de-DE', {\r\n\t\t\t\tstyle: 'currency',\r\n\t\t\t\tcurrency: data.Currency,\r\n\t\t\t});\r\n\t\t\tif (data.Tax && data.Tax.length > 0) {\r\n\t\t\t\tstate.taxList = data.Tax;\r\n\t\t\t\tconst selectedTax = data.Tax.find((item: any) => item.IsSelected === true);\r\n\t\t\t\tif (selectedTax) {\r\n\t\t\t\t\tstate.selectedTax = selectedTax.TaxValue;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (data.Discounts && data.Discounts.length > 0) {\r\n\t\t\t\tdata.Discounts.forEach((item: any) => {\r\n\t\t\t\t\tdiscounts.push({\r\n\t\t\t\t\t\tid: item.DiscountId,\r\n\t\t\t\t\t\tname: Helper.getLocalizedValueOrNull(item.Name),\r\n\t\t\t\t\t\tvalue: item.Value,\r\n\t\t\t\t\t\tlevel: item.Level,\r\n\t\t\t\t\t\ttypeId: item.TypeId,\r\n\t\t\t\t\t\ttypeName: Helper.getLocalizedName(item.TypeName),\r\n\t\t\t\t\t\ttableValue: item.Value.toLocaleString('de-DE', {\r\n\t\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\t\tcurrency: 'EUR', // always EUR because of replace\r\n\t\t\t\t\t\t}).replace('€', '%'),\r\n\t\t\t\t\t\tdiscountValue: item.DiscountValue.toLocaleString('de-DE', {\r\n\t\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\t\tcurrency: data.Currency,\r\n\t\t\t\t\t\t}),\r\n\t\t\t\t\t\tvalueAfterDiscount: item.ValueAfterDiscount.toLocaleString('de-DE', {\r\n\t\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\t\tcurrency: data.Currency,\r\n\t\t\t\t\t\t}),\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\tif (data.AdditionalCosts && data.AdditionalCosts.length > 0) {\r\n\t\t\t\tdata.AdditionalCosts.forEach((item: any) => {\r\n\t\t\t\t\tadditonalCosts.push({\r\n\t\t\t\t\t\tid: item.CostId,\r\n\t\t\t\t\t\tname: Helper.getLocalizedValueOrNull(item.Name),\r\n\t\t\t\t\t\tvalue: item.Value,\r\n\t\t\t\t\t\ttableValue: item.Value.toLocaleString('de-DE', {\r\n\t\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\t\tcurrency: data.Currency,\r\n\t\t\t\t\t\t}),\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\tif (data.NetCosts && data.NetCosts.length > 0) {\r\n\t\t\t\tdata.NetCosts.forEach((item: any) => {\r\n\t\t\t\t\tnetCosts.push({\r\n\t\t\t\t\t\tid: item.CostId,\r\n\t\t\t\t\t\tname: Helper.getLocalizedValueOrNull(item.Name),\r\n\t\t\t\t\t\tvalue: item.Value,\r\n\t\t\t\t\t\ttableValue: item.Value.toLocaleString('de-DE', {\r\n\t\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\t\tcurrency: data.Currency,\r\n\t\t\t\t\t\t}),\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\tstate.discounts = discounts;\r\n\t\t\tstate.additionalCosts = additonalCosts;\r\n\t\t\tstate.netCosts = netCosts;\r\n\t\t\tstate.costText.value = '';\r\n\t\t\tstate.costText.validate = '';\r\n\t\t\tstate.costValue.value = '';\r\n\t\t\tstate.costValue.validate = '';\r\n\t\t\tstate.costModal = false;\r\n\t\t\tstate.netCostModal = false;\r\n\t\t\tstate.discountText.value = '';\r\n\t\t\tstate.discountText.validate = '';\r\n\t\t\tstate.discountValue.value = '';\r\n\t\t\tstate.discountValue.validate = '';\r\n\t\t\tstate.discountLevel.value = '';\r\n\t\t\tstate.discountLevel.validate = '';\r\n\t\t\tstate.discountType.value = '';\r\n\t\t\tstate.discountTypeId = '';\r\n\t\t\tstate.discountType.validate = '';\r\n\t\t\tstate.netCostText.value = '';\r\n\t\t\tstate.netCostText.validate = '';\r\n\t\t\tstate.netCostValue.value = '';\r\n\t\t\tstate.netCostValue.validate = '';\r\n\t\t\tstate.discountModal = false;\r\n\t\t\tthis.props.configuration.canEdit = data.CanEdit;\r\n\t\t\tthis.setState(state);\r\n\t\t}\r\n\t}\r\n\r\n\tcomponentDidMount() {\r\n\t\tif (!Helper.userAdmin()) {\r\n\t\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/admin/configuration/monter');\r\n\t\t}\r\n\t\tthis.getCalculation();\r\n\r\n\t\tconst url = '/document/discountType';\r\n\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tlet discountTypesFromApi = data.map((discountType: any) => {\r\n\t\t\t\t\t\treturn { value: discountType.TypeId, code: discountType.Code, display: Helper.getLocalizedName(discountType.Name) };\r\n\t\t\t\t\t});\r\n\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\tdiscountTypeList: [\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\tvalue: '',\r\n\t\t\t\t\t\t\t\tcode: '',\r\n\t\t\t\t\t\t\t\tdisplay: locale.selectDiscountType,\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t].concat(discountTypesFromApi),\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\ttoggleDiscountModal(id?: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.discountText.value = '';\r\n\t\tstate.discountText.validate = '';\r\n\t\tstate.discountValue.value = '';\r\n\t\tstate.discountValue.validate = '';\r\n\t\tstate.discountLevel.value = '';\r\n\t\tstate.discountLevel.validate = '';\r\n\t\tstate.discountType.value = '';\r\n\t\tstate.discountTypeId = '';\r\n\t\tstate.discountType.validate = '';\r\n\t\tstate.errorTextMessage = '';\r\n\t\tstate.errorNumberMessage = '';\r\n\t\tstate.errorNumber2Message = '';\r\n\t\tstate.errorTextInput = false;\r\n\t\tstate.errorNumberInput = false;\r\n\t\tstate.errorNumber2Input = false;\r\n\t\tstate.discountModal = !state.discountModal;\r\n\t\tstate.addEditError = false;\r\n\t\tif (id && state.discounts && state.discounts.length > 0) {\r\n\t\t\tconst discount = state.discounts.find((item: any) => item.id === id);\r\n\t\t\tstate.selectedId = id;\r\n\t\t\tstate.discountText.value = discount.name;\r\n\t\t\tstate.discountValue.value = discount.value;\r\n\t\t\tstate.discountLevel.value = discount.level;\r\n\t\t\tstate.discountType.value = discount.typeId;\r\n\t\t\tstate.discountTypeId = discount.typeId;\r\n\t\t\tstate.confirmationModalAction = 'editDiscount';\r\n\t\t} else {\r\n\t\t\tstate.confirmationModalAction = 'addDiscount';\r\n\t\t}\r\n\t\tthis.setState(state);\r\n\t}\r\n\ttoggleAdditionalCostModal(id?: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.costText.value = '';\r\n\t\tstate.costText.validate = '';\r\n\t\tstate.costValue.value = '';\r\n\t\tstate.costValue.validate = '';\r\n\t\tstate.errorTextMessage = '';\r\n\t\tstate.errorNumberMessage = '';\r\n\t\tstate.errorTextInput = false;\r\n\t\tstate.errorNumberInput = false;\r\n\t\tstate.costModal = !state.costModal;\r\n\t\tif (id && state.additionalCosts && state.additionalCosts.length > 0) {\r\n\t\t\tconst cost = state.additionalCosts.find((item: any) => item.id === id);\r\n\t\t\tstate.selectedId = id;\r\n\t\t\tstate.costText.value = cost.name;\r\n\t\t\tstate.costValue.value = cost.value;\r\n\t\t\tstate.confirmationModalAction = 'editAdditionalCost';\r\n\t\t} else {\r\n\t\t\tstate.confirmationModalAction = 'addAdditionalCost';\r\n\t\t}\r\n\t\tthis.setState(state);\r\n\t}\r\n\ttoggleNetCostModal(id?: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.netCostText.value = '';\r\n\t\tstate.netCostText.validate = '';\r\n\t\tstate.netCostValue.value = '';\r\n\t\tstate.netCostValue.validate = '';\r\n\t\tstate.errorTextMessage = '';\r\n\t\tstate.errorNumberMessage = '';\r\n\t\tstate.errorTextInput = false;\r\n\t\tstate.errorNumberInput = false;\r\n\t\tstate.netCostModal = !state.netCostModal;\r\n\t\tif (id && state.netCosts && state.netCosts.length > 0) {\r\n\t\t\tconst cost = state.netCosts.find((item: any) => item.id === id);\r\n\t\t\tstate.selectedId = id;\r\n\t\t\tstate.netCostText.value = cost.name;\r\n\t\t\tstate.netCostValue.value = cost.value;\r\n\t\t\tstate.confirmationModalAction = 'editNetCost';\r\n\t\t} else {\r\n\t\t\tstate.confirmationModalAction = 'addNetCost';\r\n\t\t}\r\n\t\tthis.setState(state);\r\n\t}\r\n\tvalidateDiscountValue(e: React.ChangeEvent) {\r\n\t\tconst state: any = this.state;\r\n\t\tlet { target } = e;\r\n\t\tlet { validate } = state.discountValue;\r\n\t\tlet value = e.target.value.replace('%', '');\r\n\t\tif (this.timeout) clearTimeout(this.timeout);\r\n\t\tthis.timeout = setTimeout(() => {\r\n\t\t\tvar pattern = /^-?\\d{1,3}([,.]\\d{1,2})?$/;\r\n\t\t\tif (!pattern.test(value)) {\r\n\t\t\t\tvalidate = 'has-danger';\r\n\t\t\t\tstate.errorNumberMessage = locale.inputNumber + ' ( -100 - 100 , ' + locale.twoDecimalPlaces + ')';\r\n\t\t\t\tstate.errorNumberInput = true;\r\n\t\t\t} else {\r\n\t\t\t\tvalue = value.replace(',', '.');\r\n\t\t\t\tif (value.length > 0 && parseFloat(value) >= -100 && parseFloat(value) <= 100) {\r\n\t\t\t\t\tvalidate = 'has-success';\r\n\t\t\t\t\tstate.errorNumberInput = false;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tvalidate = 'has-danger';\r\n\t\t\t\t\tstate.errorNumberMessage = locale.inputNumber + ' ( -100 - 100 , ' + locale.twoDecimalPlaces + ')';\r\n\t\t\t\t\tstate.errorNumberInput = true;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tstate[target.name].validate = validate;\r\n\t\t\tthis.setState(state);\r\n\t\t}, 300);\r\n\t}\r\n\tvalidateCostValue(e: React.ChangeEvent) {\r\n\t\tconst state: any = this.state;\r\n\t\tlet { target } = e;\r\n\t\tlet validate = '';\r\n\t\tlet value = e.target.value;\r\n\t\tvar pattern = /^-?\\d{1,6}([,.]\\d{1,2})?$/;\r\n\t\tif (pattern.test(value)) {\r\n\t\t\tvalidate = 'has-success';\r\n\t\t\tstate.errorNumberInput = false;\r\n\t\t} else {\r\n\t\t\tvalidate = 'has-danger';\r\n\t\t\tstate.errorNumberMessage = locale.inputNumber + ' (' + locale.twoDecimalPlaces + ')';\r\n\t\t\tstate.errorNumberInput = true;\r\n\t\t}\r\n\t\tstate[target.name].validate = validate;\r\n\t\tthis.setState(state);\r\n\t}\r\n\tvalidateLevelValue(e: React.ChangeEvent) {\r\n\t\tconst state: any = this.state;\r\n\t\tlet { target } = e;\r\n\t\tlet { validate } = state.discountLevel;\r\n\t\tlet value = e.target.value.replace('%', '');\r\n\t\tif (this.timeout) clearTimeout(this.timeout);\r\n\t\tthis.timeout = setTimeout(() => {\r\n\t\t\tvar pattern = /^[0-9]\\d*$/;\r\n\t\t\tif (!pattern.test(value)) {\r\n\t\t\t\tvalidate = 'has-danger';\r\n\t\t\t\tstate.errorNumber2Message = locale.inputNumber + ' ( 0 - 100 )';\r\n\t\t\t\tstate.errorNumber2Input = true;\r\n\t\t\t} else {\r\n\t\t\t\tvalue = value.replace(',', '.');\r\n\t\t\t\tif (value.length > 0 && parseFloat(value) >= 0 && parseFloat(value) <= 100) {\r\n\t\t\t\t\tvalidate = 'has-success';\r\n\t\t\t\t\tstate.errorNumber2Input = false;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tvalidate = 'has-danger';\r\n\t\t\t\t\tstate.errorNumber2Message = locale.inputNumber + ' ( 0 - 100 )';\r\n\t\t\t\t\tstate.errorNumber2Input = true;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tstate[target.name].validate = validate;\r\n\t\t\tthis.setState(state);\r\n\t\t}, 300);\r\n\t}\r\n\thandleChange(e: React.ChangeEvent) {\r\n\t\tconst state: any = this.state;\r\n\t\tconst { target } = e;\r\n\t\tconst value = target.value;\r\n\t\tstate[target.name].value = value;\r\n\t\tstate.saved = false;\r\n\t\tthis.setState(state);\r\n\t}\r\n\tsaveAdditionalCost() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tconst state: IState = this.state;\r\n\t\tif (!state.costText.value || !state.costValue.value) {\r\n\t\t\tstate.addEditMessage = locale.missingFields;\r\n\t\t\tstate.addEditError = true;\r\n\t\t\tthis.setState(state);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst url = '/document/configuration/' + this.props.configuration.documentConfigurationId + '/additionalCost';\r\n\t\tconst body = {\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tName: state.costText.value,\r\n\t\t\tValue: state.costValue.value.toString().replace(',', '.'),\r\n\t\t};\r\n\r\n\t\tHelper.postData(url, JSON.stringify(body))\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (this.timeout) clearTimeout(this.timeout);\r\n\t\t\t\t}\r\n\t\t\t\tthis.getCalculation();\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\teditAdditionalCost() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tconst state: IState = this.state;\r\n\t\tif (state.costText.value === undefined || state.costValue.value === undefined) {\r\n\t\t\tstate.addEditMessage = locale.missingFields;\r\n\t\t\tstate.addEditError = true;\r\n\t\t\tthis.setState(state);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst url = '/document/configuration/' + this.props.configuration.documentConfigurationId + '/additionalCost/' + this.state.selectedId;\r\n\t\tconst body = {\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tName: state.costText.value,\r\n\t\t\tValue: state.costValue.value.toString().replace(',', '.'),\r\n\t\t};\r\n\r\n\t\tHelper.putData(url, JSON.stringify(body))\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (this.timeout) clearTimeout(this.timeout);\r\n\t\t\t\t}\r\n\t\t\t\tthis.getCalculation();\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\tremoveAdditionalCost() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tconst url =\r\n\t\t\t'/document/configuration/' +\r\n\t\t\tthis.props.configuration.documentConfigurationId +\r\n\t\t\t'/additionalCost/' +\r\n\t\t\tthis.state.selectedId +\r\n\t\t\t'?brandPartnerId=' +\r\n\t\t\tHelper.brandPartnerId();\r\n\t\tthis.setState({ selectedId: '' });\r\n\r\n\t\tHelper.deleteData(url).then((data) => {\r\n\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t}\r\n\t\t\tthis.getCalculation();\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t}\r\n\tsaveDiscount() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tconst state: IState = this.state;\r\n\t\tif (!state.discountText.value || !state.discountValue.value || !state.discountLevel.value || !state.discountTypeId) {\r\n\t\t\tstate.addEditMessage = locale.missingFields;\r\n\t\t\tstate.addEditError = true;\r\n\t\t\tthis.setState(state);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst url = '/document/configuration/' + this.props.configuration.documentConfigurationId + '/discount';\r\n\t\tconst body = {\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tName: state.discountText.value,\r\n\t\t\tValue: state.discountValue.value.toString().replace(',', '.'),\r\n\t\t\tLevel: state.discountLevel.value,\r\n\t\t\tTypeId: state.discountTypeId,\r\n\t\t};\r\n\r\n\t\tHelper.postData(url, JSON.stringify(body))\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (this.timeout) clearTimeout(this.timeout);\r\n\t\t\t\t}\r\n\t\t\t\tthis.getCalculation();\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\teditDiscount() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tconst state: IState = this.state;\r\n\t\tif (state.discountLevel.value === undefined || state.discountText.value === undefined || !state.discountValue.value || !state.discountTypeId) {\r\n\t\t\tstate.addEditMessage = locale.missingFields;\r\n\t\t\tstate.addEditError = true;\r\n\t\t\tthis.setState(state);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst url = '/document/configuration/' + this.props.configuration.documentConfigurationId + '/discount/' + this.state.selectedId;\r\n\t\tconst body = {\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tName: state.discountText.value,\r\n\t\t\tValue: state.discountValue.value.toString().replace(',', '.'),\r\n\t\t\tLevel: state.discountLevel.value,\r\n\t\t\tTypeId: state.discountTypeId,\r\n\t\t};\r\n\r\n\t\tHelper.putData(url, JSON.stringify(body))\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (this.timeout) clearTimeout(this.timeout);\r\n\t\t\t\t}\r\n\t\t\t\tthis.getCalculation();\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\tremoveDiscount() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tconst url =\r\n\t\t\t'/document/configuration/' +\r\n\t\t\tthis.props.configuration.documentConfigurationId +\r\n\t\t\t'/discount/' +\r\n\t\t\tthis.state.selectedId +\r\n\t\t\t'?brandPartnerId=' +\r\n\t\t\tHelper.brandPartnerId();\r\n\t\tthis.setState({ selectedId: '' });\r\n\r\n\t\tHelper.deleteData(url).then((data) => {\r\n\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t}\r\n\t\t\tthis.getCalculation();\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t}\r\n\tsaveNetCost() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tconst state: IState = this.state;\r\n\t\tif (!state.netCostText.value || !state.netCostValue.value) {\r\n\t\t\tstate.addEditMessage = locale.missingFields;\r\n\t\t\tstate.addEditError = true;\r\n\t\t\tthis.setState(state);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst url = '/document/configuration/' + this.props.configuration.documentConfigurationId + '/netCost/';\r\n\t\tconst body = {\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tName: state.netCostText.value,\r\n\t\t\tValue: state.netCostValue.value.toString().replace(',', '.'),\r\n\t\t};\r\n\r\n\t\tHelper.postData(url, JSON.stringify(body))\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (this.timeout) clearTimeout(this.timeout);\r\n\t\t\t\t}\r\n\t\t\t\tthis.getCalculation();\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\teditNetCost() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tconst state: IState = this.state;\r\n\t\tif (state.netCostText.value === undefined || state.netCostValue.value === undefined) {\r\n\t\t\tstate.addEditMessage = locale.missingFields;\r\n\t\t\tstate.addEditError = true;\r\n\t\t\tthis.setState(state);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst url = '/document/configuration/' + this.props.configuration.documentConfigurationId + '/netCost/' + this.state.selectedId;\r\n\t\tconst body = {\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tName: state.netCostText.value,\r\n\t\t\tValue: state.netCostValue.value.toString().replace(',', '.'),\r\n\t\t};\r\n\r\n\t\tHelper.putData(url, JSON.stringify(body))\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (this.timeout) clearTimeout(this.timeout);\r\n\t\t\t\t}\r\n\t\t\t\tthis.getCalculation();\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\tremoveNetCost() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tconst url =\r\n\t\t\t'/document/configuration/' +\r\n\t\t\tthis.props.configuration.documentConfigurationId +\r\n\t\t\t'/netCost/' +\r\n\t\t\tthis.state.selectedId +\r\n\t\t\t'?brandPartnerId=' +\r\n\t\t\tHelper.brandPartnerId();\r\n\t\tthis.setState({ selectedId: '' });\r\n\r\n\t\tHelper.deleteData(url).then((data) => {\r\n\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t}\r\n\t\t\tthis.getCalculation();\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t}\r\n\tsetNewTax(id: string) {\r\n\t\tthis.setState({ loading: true });\r\n\r\n\t\tconst url =\r\n\t\t\t'/document/configuration/' +\r\n\t\t\tthis.props.configuration.documentConfigurationId +\r\n\t\t\t'/taxoption/' +\r\n\t\t\tid +\r\n\t\t\t'?brandPartnerId=' +\r\n\t\t\tHelper.brandPartnerId();\r\n\r\n\t\tHelper.putData(url, '').then((data) => {\r\n\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t} else {\r\n\t\t\t\tif (this.timeout) clearTimeout(this.timeout);\r\n\t\t\t}\r\n\t\t\tthis.getCalculation();\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t}\r\n\ttoggleConfirmationModal(title?: string, message?: string, action?: string, id?: string) {\r\n\t\tconst state: IState = this.state;\r\n\r\n\t\tstate.confirmationModal = !state.confirmationModal;\r\n\t\tif (title && message && action && id) {\r\n\t\t\tstate.confirmationModalTitle = title;\r\n\t\t\tstate.confirmationModalMessage = message;\r\n\t\t\tstate.confirmationModalAction = action;\r\n\t\t\tstate.selectedId = id;\r\n\t\t}\r\n\r\n\t\tthis.setState(state);\r\n\t}\r\n\tconfirmationAction() {\r\n\t\tif (this.state.confirmationModalAction === 'addAdditionalCost') {\r\n\t\t\tthis.saveAdditionalCost();\r\n\t\t} else if (this.state.confirmationModalAction === 'editAdditionalCost') {\r\n\t\t\tthis.editAdditionalCost();\r\n\t\t} else if (this.state.confirmationModalAction === 'deleteAdditionalCost') {\r\n\t\t\tthis.removeAdditionalCost();\r\n\t\t\tthis.setState({ confirmationModal: false });\r\n\t\t} else if (this.state.confirmationModalAction === 'addNetCost') {\r\n\t\t\tthis.saveNetCost();\r\n\t\t} else if (this.state.confirmationModalAction === 'editNetCost') {\r\n\t\t\tthis.editNetCost();\r\n\t\t} else if (this.state.confirmationModalAction === 'deleteNetCost') {\r\n\t\t\tthis.removeNetCost();\r\n\t\t\tthis.setState({ confirmationModal: false });\r\n\t\t} else if (this.state.confirmationModalAction === 'addDiscount') {\r\n\t\t\tthis.saveDiscount();\r\n\t\t} else if (this.state.confirmationModalAction === 'editDiscount') {\r\n\t\t\tthis.editDiscount();\r\n\t\t} else if (this.state.confirmationModalAction === 'deleteDiscount') {\r\n\t\t\tthis.removeDiscount();\r\n\t\t\tthis.setState({ confirmationModal: false });\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst {\r\n\t\t\tdiscountText,\r\n\t\t\tcostText,\r\n\t\t\tdiscountValue,\r\n\t\t\tdiscountLevel,\r\n\t\t\tdiscountType,\r\n\t\t\tdiscountTypeId,\r\n\t\t\tcostValue,\r\n\t\t\tdiscountModal,\r\n\t\t\tcostModal,\r\n\t\t\tnetCostModal,\r\n\t\t\tnetCostText,\r\n\t\t\tnetCostValue,\r\n\t\t\terrorTextInput,\r\n\t\t\terrorNumberInput,\r\n\t\t\terrorNumber2Input,\r\n\t\t\terrorTextMessage,\r\n\t\t\terrorNumberMessage,\r\n\t\t\terrorNumber2Message,\r\n\t\t\taddEditError,\r\n\t\t\taddEditMessage,\r\n\t\t} = this.state;\r\n\r\n\t\tconst disabled1 =\r\n\t\t\tdiscountValue.value === '' ||\r\n\t\t\tdiscountText.value === '' ||\r\n\t\t\tdiscountLevel.value === '' ||\r\n\t\t\tdiscountTypeId === '' ||\r\n\t\t\tdiscountValue.validate === 'has-danger' ||\r\n\t\t\tdiscountText.validate === 'has-danger' ||\r\n\t\t\tdiscountLevel.validate === 'has-danger' ||\r\n\t\t\tdiscountType.validate === 'has-danger' ||\r\n\t\t\terrorTextInput ||\r\n\t\t\terrorNumberInput ||\r\n\t\t\terrorNumber2Input;\r\n\r\n\t\tconst disabled2 =\r\n\t\t\tcostValue.value === '' ||\r\n\t\t\tcostText.value === '' ||\r\n\t\t\tcostValue.validate === 'has-danger' ||\r\n\t\t\tcostText.validate === 'has-danger' ||\r\n\t\t\terrorTextInput ||\r\n\t\t\terrorNumberInput;\r\n\r\n\t\tconst disabled3 =\r\n\t\t\tnetCostValue.value === '' ||\r\n\t\t\tnetCostText.value === '' ||\r\n\t\t\tnetCostValue.validate === 'has-danger' ||\r\n\t\t\tnetCostText.validate === 'has-danger' ||\r\n\t\t\terrorTextInput ||\r\n\t\t\terrorNumberInput;\r\n\t\tconst disableEditDocument =\r\n\t\t\t(this.props.document && this.props.document.disableEdit) || !(this.props.configuration && this.props.configuration.canEdit);\r\n\t\tconst options = {\r\n\t\t\tnoDataText: locale.noResults,\r\n\t\t};\r\n\t\tconst errorTextVisible = errorTextInput ? 'block' : 'none';\r\n\t\tconst errorNumberVisible = errorNumberInput ? 'block' : 'none';\r\n\t\tconst errorNumber2Visible = errorNumber2Input ? 'block' : 'none';\r\n\t\tconst addEditFailedVisible = addEditError ? 'block' : 'none';\r\n\t\tconst deleteDiscount = (cell: any) => {\r\n\t\t\tif (!cell || disableEditDocument) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t this.toggleConfirmationModal(locale.delete, locale.confirmDelete, 'deleteDiscount', cell)}\r\n\t\t\t\t\tcolor='none'\r\n\t\t\t\t\tclassName='close float-left'\r\n\t\t\t\t\taria-label='Close'\r\n\t\t\t\t>\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\t\tconst deleteAdditionalCost = (cell: any) => {\r\n\t\t\tif (!cell || disableEditDocument) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t this.toggleConfirmationModal(locale.delete, locale.confirmDelete, 'deleteAdditionalCost', cell)}\r\n\t\t\t\t\tcolor='none'\r\n\t\t\t\t\tclassName='close float-left'\r\n\t\t\t\t\taria-label='Close'\r\n\t\t\t\t>\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\t\tconst editCost = (cell: any, row: any) => {\r\n\t\t\tif (disableEditDocument) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\r\n\t\tconst editDiscount = (cell: any, row: any) => {\r\n\t\t\tif (!cell || disableEditDocument) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\t\tconst deleteNetCost = (cell: any) => {\r\n\t\t\tif (!cell || disableEditDocument) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t this.toggleConfirmationModal(locale.delete, locale.confirmDelete, 'deleteNetCost', cell)}\r\n\t\t\t\t\tcolor='none'\r\n\t\t\t\t\tclassName='close float-left'\r\n\t\t\t\t\taria-label='Close'\r\n\t\t\t\t>\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\r\n\t\tconst editNetCost = (cell: any, row: any) => {\r\n\t\t\tif (!cell || disableEditDocument) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\t\tconst taxes = this.state.taxList.map((tax: any) => {\r\n\t\t\treturn (\r\n\t\t\t\t this.setNewTax(tax.TaxOptionId)}>\r\n\t\t\t\t\t{tax.TaxValue.toString().replace('.', ',')}\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t});\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{this.state.loading ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.costText}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.value}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleAdditionalCostModal()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={disableEditDocument}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={'button btn-secondary mt-3 mb-3'}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.adminCalculationAddAdditionalCost}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleAdditionalCostModal()}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleAdditionalCostModal()}>{locale.addCost}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errorTextMessage}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.validateCostValue(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errorNumberMessage}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.confirmationAction()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.save}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.name}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.discountType}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.discountLevel}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.discount}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.discountAmount}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.discountValueAfter}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleDiscountModal()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={disableEditDocument}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={'button btn-secondary mt-3 mb-3'}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.adminCalculationAddDiscount}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleDiscountModal()}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleDiscountModal()}>{locale.addDiscount}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errorTextMessage}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdiscountTypeId: e.target.value,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{this.state.discountTypeList.map((discountType) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.validateDiscountValue(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errorNumberMessage}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.validateLevelValue(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errorNumber2Message}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.confirmationAction()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.save}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{addEditMessage}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.name}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.value}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleNetCostModal()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={disableEditDocument}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={'button btn-secondary mt-3 mb-3'}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.adminCalculationAddNetCost}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleNetCostModal()}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleNetCostModal()}>{locale.addNetCost}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errorTextMessage}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.validateCostValue(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errorNumberMessage}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.confirmationAction()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.save}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{this.state.selectedTax !== ''\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? this.state.selectedTax.toString().replace('.', ',') + ' %'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: locale.selectTax}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{taxes}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t this.toggleConfirmationModal()}>\r\n\t\t\t\t\t\t\t\t\t\t this.toggleConfirmationModal()}>{locale.delete}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.confirmDelete}\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(CustomerCalculation);\r\n","import React from 'react';\r\nimport { Row, Col, UncontrolledCollapse, NavbarBrand } from 'reactstrap';\r\nimport '../Configurator.css';\r\nimport './Admin.css';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../../store/Configurator';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport CustomerEditMenu from './CustomerEditMenu';\r\nimport Helper from '../../Helper';\r\nimport Loading from 'react-fullscreen-loading';\r\nimport locale from '../../Locale';\r\n\r\ninterface IProps extends RouteComponentProps {\r\n\tconfiguration: any;\r\n\tdocument?: any;\r\n\tcategories: any;\r\n}\r\ninterface IState {\r\n\toverview: any;\r\n\timages: any;\r\n\tconfigurationPrice: string;\r\n\tcurrency: string;\r\n\tconfigurationId: string;\r\n\tloading: boolean;\r\n}\r\nclass CustomerCalculationOverview extends React.Component {\r\n\tstatic sumCategory = 0;\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\toverview: [],\r\n\t\t\timages: [],\r\n\t\t\tconfigurationId: this.props.configuration.configurationId,\r\n\t\t\tloading: false,\r\n\t\t\tconfigurationPrice: '0',\r\n\t\t\tcurrency: 'EUR',\r\n\t\t};\r\n\t}\r\n\trenderCategoriesRecursion(categories: any, isSubCategory: boolean): any {\r\n\t\tif (!categories || categories.length === 0 || !Array.isArray(categories)) {\r\n\t\t\treturn [];\r\n\t\t}\r\n\t\tconst categoriesList = categories.map((category: any, i: number) => {\r\n\t\t\tlet subsubcategories: any = [];\r\n\t\t\tif (category.Categories && category.Categories.length > 0) {\r\n\t\t\t\tsubsubcategories = this.renderCategoriesRecursion(category.Categories, true);\r\n\t\t\t}\r\n\t\t\tcategory.open = true;\r\n\t\t\tlet parameterList = [];\r\n\t\t\tparameterList = category.Parameters.map((parameter: any, j: number) => {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{Helper.getLocalizedValueOrNull(parameter.ParameterBrandName) ??\r\n\t\t\t\t\t\t\t\tHelper.getLocalizedValueOrNull(parameter.ParameterTitle) ??\r\n\t\t\t\t\t\t\t\tparameter.ParameterName}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{Helper.getLocalizedValueOrNull(parameter.ParameterBrandValue) ??\r\n\t\t\t\t\t\t\t\tHelper.getLocalizedValueOrNull(parameter.ParameterValue) ??\r\n\t\t\t\t\t\t\t\tparameter.ParameterValueName}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{Helper.userLoggedIn() && (parameter.ParameterPrice !== 0 || category.ShowZeroPrices)\r\n\t\t\t\t\t\t\t\t? parameter.ParameterPrice.toLocaleString('de-DE', {\r\n\t\t\t\t\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\t\t\t\t\tcurrency: this.state.currency,\r\n\t\t\t\t\t\t\t\t })\r\n\t\t\t\t\t\t\t\t: ''}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t);\r\n\t\t\t});\r\n\t\t\tif (isSubCategory) {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{Helper.getLocalizedName(category.ParameterCategoryName)}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{parameterList}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{subsubcategories}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t);\r\n\t\t\t} else {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{Helper.getLocalizedName(category.ParameterCategoryName)}{' '}\r\n\t\t\t\t\t\t\t{Helper.userLoggedIn() && (category.ParameterCategoryPrice !== 0 || category.ShowZeroPrices) ? (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{category.ParameterCategoryPrice.toLocaleString('de-DE', {\r\n\t\t\t\t\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\t\t\t\t\tcurrency: this.state.currency,\r\n\t\t\t\t\t\t\t\t\t})}{' '}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{parameterList}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{subsubcategories}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t});\r\n\t\treturn categoriesList;\r\n\t}\r\n\tcomponentDidMount() {\r\n\t\tthis.getOverview(this.props.configuration.documentConfigurationId);\r\n\t}\r\n\tcomponentDidUpdate(nextProps: any) {\r\n\t\tif (nextProps.configuration.documentConfigurationId !== this.props.configuration.documentConfigurationId) {\r\n\t\t\tthis.getOverview(this.props.configuration.documentConfigurationId);\r\n\t\t}\r\n\t}\r\n\tgetOverview(id: string) {\r\n\t\tthis.setState({ loading: true });\r\n\t\tif (!id) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tlet url = '/document/configuration/' + id + '/overview';\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.saving, data.Message);\r\n\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\tloading: false,\r\n\t\t\t\t\t});\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\toverview: data.Categories,\r\n\t\t\t\t\t\timages: data.Images,\r\n\t\t\t\t\t\tconfigurationPrice: data.ConfigurationPrice.toLocaleString('de-DE', {\r\n\t\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\t\tcurrency: data.Currency ?? 'EUR',\r\n\t\t\t\t\t\t}),\r\n\t\t\t\t\t\tcurrency: data.Currency ?? 'EUR',\r\n\t\t\t\t\t\tloading: false,\r\n\t\t\t\t\t});\r\n\t\t\t\t\tthis.props.configuration.canEdit = data.CanEdit;\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch(() => {\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\t(this.props as any).setError(locale.exception, locale.generalException);\r\n\t\t\t});\r\n\t}\r\n\trender() {\r\n\t\tconst categoriesList = this.renderCategoriesRecursion(this.state.overview, false);\r\n\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{this.state.loading ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.adminCalculationConfigurationPrice}\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{this.state.configurationPrice}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{categoriesList}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{this.state.images.map((img: any, i: number) => {\r\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(CustomerCalculationOverview);\r\n","import React, { Fragment } from 'react';\r\nimport { Row, Col, Form, Modal, ModalHeader, ModalBody, FormGroup, Label, Input } from 'reactstrap';\r\nimport '../Configurator.css';\r\nimport './Admin.css';\r\nimport locale from '../../Locale';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../../store/Configurator';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport CustomerEditMenu from './CustomerEditMenu';\r\nimport Helper, { documentSatus } from '../../Helper';\r\nimport { BootstrapTable, TableHeaderColumn } from 'react-bootstrap-table';\r\nimport Button from '../Button';\r\nimport Loading from 'react-fullscreen-loading';\r\n\r\ninterface IProps extends RouteComponentProps {\r\n\tconfiguration: any;\r\n\tdocument?: any;\r\n}\r\n\r\ninterface IState {\r\n\tdocumentation: any[];\r\n\tloading: boolean;\r\n\tcanRequest: boolean;\r\n\tcanRequestSpecial: boolean;\r\n\tcanLoadSpecial: boolean;\r\n\tstatusId: string;\r\n\tstatus: string;\r\n\tselectedId: string;\r\n\timage: any;\r\n\timageName: string;\r\n\turl: string;\r\n\ttext:string;\r\n\tconfirmationModal: boolean;\r\n\tconfirmationTechModal: boolean;\r\n\turlModal: boolean;\r\n}\r\n\r\nclass CustomerImages extends React.Component {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\tloading: false,\r\n\t\t\tdocumentation: [],\r\n\t\t\tcanRequest: false,\r\n\t\t\tcanRequestSpecial: false,\r\n\t\t\tcanLoadSpecial: false,\r\n\t\t\tstatusId: '',\r\n\t\t\tstatus: '',\r\n\t\t\tselectedId: '',\r\n\t\t\timage: null,\r\n\t\t\timageName: '',\r\n\t\t\turl: '',\r\n\t\t\ttext: '',\r\n\t\t\tconfirmationModal: false,\r\n\t\t\tconfirmationTechModal: false,\r\n\t\t\turlModal: false\r\n\t\t};\r\n\t}\r\n\tgetDocumentation() {\r\n\t\tif (!this.props.configuration || !this.props.configuration.documentConfigurationId) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.setState({ loading: true });\r\n\t\tconst state: IState = this.state;\r\n\t\tconst url =\r\n\t\t\t'/document/configuration/' + this.props.configuration.documentConfigurationId + '/documentation?brandPartnerId=' + Helper.brandPartnerId();\r\n\r\n\t\tlet documentation: any[] = [];\r\n\t\tHelper.getData(url).then((data) => {\r\n\t\t\tif (data) {\r\n\t\t\t\tif (data.Documentation && data.Documentation.length > 0) {\r\n\t\t\t\t\tdata.Documentation.forEach((item: any) => {\r\n\t\t\t\t\t\tif (item.Url) {\r\n\t\t\t\t\t\t\tdocumentation.push({\r\n\t\t\t\t\t\t\t\tid: item.ConfigurationDocumentationId,\r\n\t\t\t\t\t\t\t\turl: item.Url,\r\n\t\t\t\t\t\t\t\tname: item.FileName,\r\n\t\t\t\t\t\t\t\tuserAdded: item.UserModified,\r\n\t\t\t\t\t\t\t\tdateAdded: Helper.dateWithTimeConvert(item.DateModified),\r\n\t\t\t\t\t\t\t\tdateAddedDate: item.DateModified,\r\n\t\t\t\t\t\t\t\tuserUploaded: item.IsUserUploaded,\r\n\t\t\t\t\t\t\t\tuserUploadedString: item.IsUserUploaded ? locale.yes : locale.no,\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\tif (\r\n\t\t\t\t\tdata.DocumentStatus &&\r\n\t\t\t\t\tdata.DocumentStatus !== null &&\r\n\t\t\t\t\tdata.DocumentStatus.length > 0 &&\r\n\t\t\t\t\tdata.Documentation &&\r\n\t\t\t\t\tdata.Documentation.length === 0\r\n\t\t\t\t) {\r\n\t\t\t\t\tstate.loading = true;\r\n\t\t\t\t}\r\n\t\t\t\tstate.canRequest = data.CanRequestDocumentation;\r\n\t\t\t\tstate.canRequestSpecial = data.CanRequestSpecialDocumentation;\r\n\t\t\t\tstate.canLoadSpecial = data.CanLoadSpecialDocumentation;\r\n\t\t\t\tstate.statusId = data.DocumentStatusId;\r\n\t\t\t\tstate.status = Helper.getLocalizedName(data.DocumentStatus);\r\n\t\t\t\tthis.props.configuration.canEdit = data.CanEdit;\r\n\t\t\t}\r\n\t\t\tstate.documentation = documentation;\r\n\t\t\tstate.selectedId = '';\r\n\t\t\tthis.setState(state);\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t}\r\n\tcomponentDidMount() {\r\n\t\tthis.getDocumentation();\r\n\t}\r\n\tdelete() {\r\n\t\tconst urlConfiguration =\r\n\t\t\t'/document/configuration/' +\r\n\t\t\tthis.props.configuration.documentConfigurationId +\r\n\t\t\t'/documentation/' +\r\n\t\t\tthis.state.selectedId +\r\n\t\t\t'?brandPartnerId=' +\r\n\t\t\tHelper.brandPartnerId();\r\n\t\tHelper.deleteData(urlConfiguration)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.deleting, data.Message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.getDocumentation();\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch(() => (this.props as any).setError(locale.deleting, locale.generalException));\r\n\t}\r\n\ttoggleConfirmationModal(id?: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.confirmationModal = !state.confirmationModal;\r\n\t\tstate.selectedId = id ? id : '';\r\n\t\tthis.setState(state);\r\n\t}\r\n\ttoggleConfirmationTechModal(id?: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.confirmationTechModal = !state.confirmationTechModal;\r\n\t\tthis.setState(state);\r\n\t}\r\n\ttoggleUrlModal(id?: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.url = '';\r\n\t\tstate.text = '';\r\n\t\tstate.urlModal = !state.urlModal;\r\n\t\tthis.setState(state);\r\n\t}\r\n\tconfirmationDelete() {\r\n\t\tthis.delete();\r\n\t\tthis.setState({ confirmationModal: false, selectedId: '' });\r\n\t}\r\n\tconfirmationTech() {\r\n\t\tthis.requestDocumentation();\r\n\t\tthis.setState({ confirmationTechModal: false });\r\n\t}\r\n\trequestDocumentationConfirmation() {\r\n\t\tif (!this.props.configuration || !this.props.configuration.documentConfigurationId) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (this.state.statusId === documentSatus.documentstatus_specialtechnicaldocumentationgenerated) {\r\n\t\t\tthis.toggleConfirmationTechModal();\r\n\t\t} else {\r\n\t\t\tthis.requestDocumentation();\r\n\t\t}\r\n\t}\r\n\trequestDocumentation() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tlet url =\r\n\t\t\t'/config/generateDocumentation?documentConfigurationId=' +\r\n\t\t\tthis.props.configuration.documentConfigurationId +\r\n\t\t\t'&brandPartnerId=' +\r\n\t\t\tHelper.brandPartnerId();\r\n\r\n\t\tHelper.postData(url, '').then((data) => {\r\n\t\t\tif (data) {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.requestDocumentation, data.Message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (data.StatusName) {\r\n\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\tcanRequest: false,\r\n\t\t\t\t\t\t\tcanRequestSpecial: false,\r\n\t\t\t\t\t\t\tcanLoadSpecial: false,\r\n\t\t\t\t\t\t\tstatus: Helper.getLocalizedName(data.StatusName),\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t}\r\n\trequestSpecialDocumentation() {\r\n\t\tif (!this.props.configuration || !this.props.configuration.documentConfigurationId) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.setState({ loading: true });\r\n\r\n\t\tconst url = '/config/requestSpecialDocumentation';\r\n\t\tconst body = {\r\n\t\t\tDocumentConfigurationId: this.props.configuration.documentConfigurationId,\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tWebUrl: window.location.protocol + '//' + window.location.host + process.env.REACT_APP_ROOT_PATH + '/configurator/configuration?id=',\r\n\t\t};\r\n\t\tHelper.postData(url, JSON.stringify(body)).then((data) => {\r\n\t\t\tif (data) {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.requestDocumentation, data.Message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (data.StatusName) {\r\n\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\tcanRequest: false,\r\n\t\t\t\t\t\t\tcanRequestSpecial: false,\r\n\t\t\t\t\t\t\tcanLoadSpecial: false,\r\n\t\t\t\t\t\t\tstatus: Helper.getLocalizedName(data.StatusName),\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t}\r\n\tloadSpecialDocumentation() {\r\n\t\tif (!this.props.configuration || !this.props.configuration.documentConfigurationId) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.setState({ loading: true });\r\n\r\n\t\tconst url = '/config/loadSpecialDocumentation';\r\n\t\tconst body = {\r\n\t\t\tDocumentConfigurationId: this.props.configuration.documentConfigurationId,\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tWebUrl: window.location.protocol + '//' + window.location.host + process.env.REACT_APP_ROOT_PATH + '/configurator/configuration?id=',\r\n\t\t};\r\n\t\tHelper.postData(url, JSON.stringify(body)).then((data) => {\r\n\t\t\tif (data) {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.requestDocumentation, data.Message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (data.StatusName) {\r\n\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\tcanRequest: false,\r\n\t\t\t\t\t\t\tcanRequestSpecial: false,\r\n\t\t\t\t\t\t\tcanLoadSpecial: false,\r\n\t\t\t\t\t\t\tstatus: Helper.getLocalizedName(data.StatusName),\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t}\r\n\tuploadFile() {\r\n\t\t(this.refs.fileUploader as HTMLElement).click();\r\n\t}\r\n\tonImageChange(event: any) {\r\n\t\tif (event.target.files && event.target.files[0]) {\r\n\t\t\tconst fileName = event.target.files[0].name;\r\n\t\t\tlet reader = new FileReader();\r\n\t\t\treader.readAsDataURL(event.target.files[0]);\r\n\t\t\treader.onload = (e: any) => {\r\n\t\t\t\tthis.saveDocument(e.target.result.split(',')[1], fileName);\r\n\t\t\t};\r\n\t\t}\r\n\t}\r\n\tsaveUrl(){\r\n\t\tconst url = '/document/configuration/' + this.props.configuration.documentConfigurationId + '/documentation';\r\n\t\tconst body = {\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tUrl: this.state.url,\r\n\t\t\tBase64File: null,\r\n\t\t\tFileName: this.state.text,\r\n\t\t};\r\n\t\tHelper.postData(url, JSON.stringify(body))\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\timage: null,\r\n\t\t\t\t\t\timageName: '',\r\n\t\t\t\t\t\turlModal: false,\r\n\t\t\t\t\t\ttext: '',\r\n\t\t\t\t\t\turl: ''\r\n\r\n\t\t\t\t\t});\r\n\t\t\t\t\tthis.getDocumentation();\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\r\n\tsaveDocument(file: any, fileName: string) {\r\n\t\tconst url = '/document/configuration/' + this.props.configuration.documentConfigurationId + '/documentation';\r\n\t\tconst body = {\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tBase64File: file,\r\n\t\t\tFileName: fileName,\r\n\t\t};\r\n\t\tHelper.postData(url, JSON.stringify(body))\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\timage: null,\r\n\t\t\t\t\t\timageName: '',\r\n\t\t\t\t\t});\r\n\t\t\t\t\tthis.getDocumentation();\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\thandleChange(e: React.ChangeEvent) {\r\n\t\tconst state: any = this.state;\r\n\t\tconst { target } = e;\r\n\t\tconst value = target.value;\r\n\t\tstate[target.name] = value;\r\n\t\tstate.saved = false;\r\n\t\tthis.setState(state);\r\n\t}\r\n\trender() {\r\n\t\tconst options = {\r\n\t\t\tpageSize: 5,\r\n\t\t\tnoDataText: locale.noResults,\r\n\t\t};\r\n\t\tconst disableEditDocument =\r\n\t\t\t(this.props.document && this.props.document.disableEdit) || !(this.props.configuration && this.props.configuration.canEdit);\r\n\t\tconst canRequest = Helper.userIsOemAdmin() ? this.state.canRequest : this.state.canRequest && !disableEditDocument;\r\n\t\tconst disabledUrlDialogSave =\r\n\t\t\tthis.state.url === '' ||\r\n\t\t\tthis.state.text === '' ;\r\n\r\n\t\tconst linkFormatter = (cell: any, row: any) => {\r\n\t\t\tif (row.url) {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t);\r\n\t\t\t} else {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst cellDelete = (cell: any, row: any) => {\r\n\t\t\tif (disableEditDocument) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\t\tconst dateSort = (a: any, b: any, order: string) => {\r\n\t\t\tif (order === 'asc') {\r\n\t\t\t\tif (new Date(a.dateAddedDate) < new Date(b.dateAddedDate)) return 1;\r\n\t\t\t\tif (new Date(a.dateAddedDate) > new Date(b.dateAddedDate)) return -1;\r\n\t\t\t} else if (order === 'desc') {\r\n\t\t\t\tif (new Date(a.dateAddedDate) > new Date(b.dateAddedDate)) return 1;\r\n\t\t\t\tif (new Date(a.dateAddedDate) < new Date(b.dateAddedDate)) return -1;\r\n\t\t\t}\r\n\t\t\treturn 0;\r\n\t\t};\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{this.state.loading ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.requestDocumentationConfirmation()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.requestDocumentation}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{Helper.userIsOem() ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.requestSpecialDocumentation()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.requestSpecialDocumentation}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.loadSpecialDocumentation()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.loadSpecialDocumentation}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{this.state.status !== '' ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.status + ': '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{this.state.status}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleUrlModal()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={disableEditDocument}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={'button btn-secondary'}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstyle={{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tverticalAlign: 'top',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbackgroundColor: Helper.themeButtonColor(),\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolor: Helper.themeButtonFontColor(),\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmarginRight: '20px'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.adminDocumentationAddUrl}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.uploadFile()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={disableEditDocument}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={'button btn-secondary'}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstyle={{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tverticalAlign: 'top',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbackgroundColor: Helper.themeButtonColor(),\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcolor: Helper.themeButtonFontColor(),\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.adminDocumentationAdd}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.onImageChange(e)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tid='file'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref='fileUploader'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstyle={{\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplay: 'none',\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.name}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.user}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.date}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.userUploaded}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t this.toggleConfirmationModal()}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleConfirmationModal()}>{locale.delete}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.confirmDelete}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t this.toggleConfirmationTechModal()}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleConfirmationTechModal()}>{locale.requestDocumentation}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.confirmChangeStatusSpecialTechnical}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t this.toggleUrlModal()}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleUrlModal()}>{locale.addNetCost}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.saveUrl()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.save}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(CustomerImages);\r\n","import React, { Fragment } from 'react';\r\nimport { Col, Container, Form, FormGroup, Label, Input, FormText, Row } from 'reactstrap';\r\nimport './Configurator.css';\r\nimport './Login.css';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../store/Configurator';\r\nimport { RouteComponentProps, Link } from 'react-router-dom';\r\nimport locale from '../Locale';\r\nimport Button from './Button';\r\nimport Helper from '../Helper';\r\nimport Loading from 'react-fullscreen-loading';\r\n\r\ninterface IProps extends RouteComponentProps {}\r\n\r\ninterface IState {\r\n\temail: string;\r\n\tpassword: string;\r\n\tshowPassword: boolean;\r\n\tvalidate: {\r\n\t\temailState: string;\r\n\t\tpassState: string;\r\n\t};\r\n\tloginError: boolean;\r\n\tloginMessage: string;\r\n\tloading: boolean;\r\n}\r\n\r\nclass Login extends React.Component {\r\n\tprivate timeout: number;\r\n\r\n\tconstructor(props: any) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\temail: '',\r\n\t\t\tpassword: '',\r\n\t\t\tshowPassword: false,\r\n\t\t\tvalidate: {\r\n\t\t\t\temailState: '',\r\n\t\t\t\tpassState: '',\r\n\t\t\t},\r\n\t\t\tloginError: false,\r\n\t\t\tloginMessage: '',\r\n\t\t\tloading: false,\r\n\t\t};\r\n\t\tthis.timeout = 0;\r\n\t}\r\n\r\n\tcomponentDidMount() {\r\n\t\tif (window.location.pathname.toLowerCase().indexOf('/logout') >= 0) {\r\n\t\t\tthis.setState({ loading: true });\r\n\t\t\t// Helper.postData(\"/account/logoff\", \"\")\r\n\t\t\t// .then((result: any) => { this.setState({ loading: false });})\r\n\t\t\t// .catch((error: any) => {\r\n\t\t\t// console.log(error);\r\n\t\t\t// });\r\n\t\t\tconst themeCached = localStorage.getItem('theme') as string;\r\n\t\t\tconst theme = JSON.parse(themeCached);\r\n\t\t\tconst brandPartnerId = localStorage.getItem('brandPartnerId');\r\n\t\t\tthis.setToken('', '', '', '', '', '', '', '');\r\n\t\t\t(this.props as any).destroySession();\r\n\t\t\tif (theme) {\r\n\t\t\t\t(this.props as any).setBrand(\r\n\t\t\t\t\ttheme.logo,\r\n\t\t\t\t\ttheme.logotype,\r\n\t\t\t\t\ttheme.title,\r\n\t\t\t\t\ttheme.header,\r\n\t\t\t\t\ttheme.color,\r\n\t\t\t\t\ttheme.headerFontColor,\r\n\t\t\t\t\tbrandPartnerId,\r\n\t\t\t\t\ttheme.buttonColor,\r\n\t\t\t\t\ttheme.buttonFontColor\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\twindow.location.href = process.env.REACT_APP_ROOT_PATH + '/configurator/selection';\r\n\t\t\t}, 700);\r\n\t\t}\r\n\t}\r\n\r\n\tvalidateEmail(e: React.FormEvent) {\r\n\t\tconst emailRex =\r\n\t\t\t/^(([^<>()[\\]\\\\.,;:\\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\t\tconst { validate } = this.state;\r\n\t\tlet value = e.currentTarget.value;\r\n\t\tif (this.timeout) window.clearTimeout(this.timeout);\r\n\t\tthis.timeout = window.setTimeout(() => {\r\n\t\t\tif (emailRex.test(value)) {\r\n\t\t\t\tvalidate.emailState = 'has-success';\r\n\t\t\t} else {\r\n\t\t\t\tvalidate.emailState = 'has-danger';\r\n\t\t\t}\r\n\t\t\tthis.setState({ validate });\r\n\t\t}, 700);\r\n\t}\r\n\r\n\tvalidatePass(e: React.FormEvent) {\r\n\t\tconst { validate } = this.state;\r\n\t\tlet value = e.currentTarget.value;\r\n\t\tif (this.timeout) window.clearTimeout(this.timeout);\r\n\t\tthis.timeout = window.setTimeout(() => {\r\n\t\t\tif (value && value.length) {\r\n\t\t\t\tvalidate.passState = 'has-success';\r\n\t\t\t} else {\r\n\t\t\t\tvalidate.passState = 'has-danger';\r\n\t\t\t}\r\n\t\t\tthis.setState({ validate });\r\n\t\t}, 700);\r\n\t}\r\n\r\n\thandleChange = async (event: React.FormEvent) => {\r\n\t\tconst { currentTarget } = event;\r\n\t\tconst value = currentTarget.type === 'checkbox' ? currentTarget.checked : currentTarget.value;\r\n\t\tconst { name } = currentTarget;\r\n\t\tawait this.setState({\r\n\t\t\t[name]: value,\r\n\t\t} as any);\r\n\t};\r\n\tprivate setToken(\r\n\t\temail: string,\r\n\t\tname: string,\r\n\t\tuserType: string,\r\n\t\ttoken: string,\r\n\t\trefreshToken: string,\r\n\t\tisUserOem: string,\r\n\t\tisUserOemAdmin: string,\r\n\t\tisParentPartner: string\r\n\t) {\r\n\t\tlocalStorage.removeItem('theme');\r\n\t\tlocalStorage.removeItem('brandPartnerId');\r\n\t\tif (token !== '') {\r\n\t\t\tlocalStorage.setItem('userToken', token);\r\n\t\t\tlocalStorage.setItem('userRole', userType);\r\n\t\t\tlocalStorage.setItem('refreshToken', refreshToken);\r\n\t\t\tlocalStorage.setItem('isUserOEM', isUserOem);\r\n\t\t\tlocalStorage.setItem('isUserOEMAdmin', isUserOemAdmin);\r\n\t\t\tlocalStorage.setItem('isParentPartner', isParentPartner);\r\n\t\t} else {\r\n\t\t\tlocalStorage.removeItem('userToken');\r\n\t\t\tlocalStorage.removeItem('userRole');\r\n\t\t\tlocalStorage.removeItem('refreshToken');\r\n\t\t\tlocalStorage.removeItem('isUserOEM');\r\n\t\t\tlocalStorage.removeItem('isUserOEMAdmin');\r\n\t\t\tlocalStorage.removeItem('isParentPartner');\r\n\t\t}\r\n\t\t(this.props as any).setAnonymousToken(null);\r\n\t\t(this.props as any).setUser(email, name, userType, []);\r\n\t\t(this.props as any).clearPart();\r\n\t}\r\n\r\n\tasync redirectForm(accessToken: string, refreshToken: string) {\r\n\t\tif (!accessToken) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.setToken('', '', '', accessToken, refreshToken, '', '', '');\r\n\t\tconst url = '/account/info';\r\n\t\tHelper.getData(url).then((data: any) => {\r\n\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t(this.props as any).setError(locale.saving, data.Message);\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t} else {\r\n\t\t\t\tlet email = '';\r\n\t\t\t\tif (data.Email) {\r\n\t\t\t\t\temail = data.Email;\r\n\t\t\t\t}\r\n\t\t\t\tlet name = '';\r\n\t\t\t\tif (data.FirstName) {\r\n\t\t\t\t\tname = data.FirstName;\r\n\t\t\t\t}\r\n\t\t\t\tif (data.LastName) {\r\n\t\t\t\t\tname += ' ' + data.LastName;\r\n\t\t\t\t}\r\n\t\t\t\tlet userType = '';\r\n\t\t\t\tif (data.PartnerUserType) {\r\n\t\t\t\t\tuserType = data.PartnerUserType;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.setToken(email, name, userType, accessToken, refreshToken, data.IsUserOem, data.IsUserOemAdmin, data.IsParentPartner);\r\n\t\t\t\tif (Helper.userEditor()) {\r\n\t\t\t\t\tif (data.BrandInfo) {\r\n\t\t\t\t\t\tconst brandInfo = data.BrandInfo;\r\n\t\t\t\t\t\tconst footer = data.Footer;\r\n\t\t\t\t\t\tconst logo = (brandInfo.Style && brandInfo.Style.HeaderLogo) || '';\r\n\t\t\t\t\t\tconst logotype = (brandInfo.Style && brandInfo.Style.HeaderLogotype) || '';\r\n\t\t\t\t\t\tconst title = (brandInfo && Helper.getLocalizedName(brandInfo.BrandName)) || '';\r\n\t\t\t\t\t\tconst header = (brandInfo.Style && Helper.getLocalizedName(brandInfo.Style.HeaderText)) || '';\r\n\r\n\t\t\t\t\t\tconst color = (brandInfo.Style && brandInfo.Style.BackgroundColor) || '';\r\n\t\t\t\t\t\tconst headerFontColor = (brandInfo.Style && brandInfo.Style.HeaderFontColor) || '';\r\n\t\t\t\t\t\tconst buttonColor = (brandInfo.Style && brandInfo.Style.ButtonColor) || '';\r\n\t\t\t\t\t\tconst buttonFontColor = (brandInfo.Style && brandInfo.Style.ButtonFontColor) || '';\r\n\r\n\t\t\t\t\t\tconst theme = {\r\n\t\t\t\t\t\t\tlogo: logo,\r\n\t\t\t\t\t\t\ttitle: title,\r\n\t\t\t\t\t\t\theader: header,\r\n\t\t\t\t\t\t\tcolor: color,\r\n\t\t\t\t\t\t\theaderFontColor: headerFontColor,\r\n\t\t\t\t\t\t\tbuttonColor: buttonColor,\r\n\t\t\t\t\t\t\tbuttonFontColor: buttonFontColor,\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t\tlocalStorage.setItem('theme', JSON.stringify(theme));\r\n\t\t\t\t\t\tlocalStorage.setItem('brandPartnerId', brandInfo.BrandPartnerId);\r\n\r\n\t\t\t\t\t\t(this.props as any).setBrand(\r\n\t\t\t\t\t\t\tlogo,\r\n\t\t\t\t\t\t\tlogotype,\r\n\t\t\t\t\t\t\ttitle,\r\n\t\t\t\t\t\t\theader,\r\n\t\t\t\t\t\t\tcolor,\r\n\t\t\t\t\t\t\theaderFontColor,\r\n\t\t\t\t\t\t\tbrandInfo.BrandPartnerId,\r\n\t\t\t\t\t\t\ttheme.buttonColor,\r\n\t\t\t\t\t\t\ttheme.buttonFontColor\r\n\t\t\t\t\t\t);\r\n\r\n\t\t\t\t\t\tconst footer1text = (footer && footer.Footer1text) || '';\r\n\t\t\t\t\t\tconst footer1url = (footer && footer.Footer1url) || '';\r\n\t\t\t\t\t\tconst footer2text = (footer && footer.Footer2text) || '';\r\n\t\t\t\t\t\tconst footer2url = (footer && footer.Footer2url) || '';\r\n\t\t\t\t\t\tconst footer3text = (footer && footer.Footer3text) || '';\r\n\t\t\t\t\t\tconst footer3url = (footer && footer.Footer3url) || '';\r\n\t\t\t\t\t\t(this.props as any).setFooter(footer1text, footer1url, footer2text, footer2url, footer3text, footer3url);\r\n\t\t\t\t\t}\r\n\t\t\t\t\t(this.props as any).setNumberOfBrands(data.NumberOfBrands);\r\n\t\t\t\t\tif (Helper.userInstaller()) {\r\n\t\t\t\t\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/admin/allProjects');\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/admin/myProjects');\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/configurator/selection');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tasync submitForm(e: React.FormEvent) {\r\n\t\te.preventDefault();\r\n\t\tif (this.state.email === '') {\r\n\t\t\tthis.setState({\r\n\t\t\t\tloginMessage: locale.loginNoUsername,\r\n\t\t\t\tloginError: true,\r\n\t\t\t});\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (this.state.password === '') {\r\n\t\t\tthis.setState({\r\n\t\t\t\tloginMessage: locale.loginNoPass,\r\n\t\t\t\tloginError: true,\r\n\t\t\t});\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.setState({ loading: true });\r\n\t\tconst _this = this;\r\n\t\tconst details: { [key: string]: string | any } = {\r\n\t\t\tusername: this.state.email,\r\n\t\t\tpassword: this.state.password,\r\n\t\t\tclient_id: process.env.REACT_APP_CLIENT_ID,\r\n\t\t\tclient_secret: process.env.REACT_APP_CLIENT_SECRET,\r\n\t\t\tgrant_type: 'password',\r\n\t\t};\r\n\r\n\t\tconst formBody = Object.keys(details)\r\n\t\t\t.map((key) => encodeURIComponent(key) + '=' + encodeURIComponent(details[key]))\r\n\t\t\t.join('&');\r\n\t\tconst state: IState = this.state;\r\n\r\n\t\tHelper.login(process.env.REACT_APP_TOKEN_URL + '/api/token', formBody).then((result: any) => {\r\n\t\t\tif (result) {\r\n\t\t\t\tif (result.error) {\r\n\t\t\t\t\tstate.loginError = true;\r\n\t\t\t\t\tstate.loginMessage = locale.loginFailed;\r\n\t\t\t\t\tstate.loading = false;\r\n\t\t\t\t\tthis.setState(state);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconst refreshToken = result.refresh_token;\r\n\t\t\t\t\tconst accessToken = result.access_token;\r\n\t\t\t\t\tstate.loginError = false;\r\n\t\t\t\t\tstate.loading = true;\r\n\t\t\t\t\tthis.setState(state);\r\n\t\t\t\t\t_this.redirectForm(accessToken, refreshToken);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\trender() {\r\n\t\tconst { email, password, loginError, showPassword, loginMessage } = this.state;\r\n\t\tconst loginFailedVisible = loginError ? 'block' : 'none';\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{this.state.loading ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
this.submitForm(e)}>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t

{locale.signIn}

\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.validateEmail(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.validatePass(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t{this.state.validate.passState !== 'has-danger' ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tshowPassword: true,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonMouseUp={() =>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tshowPassword: false,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName='fa fa-fw fa-eye toggle-password'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t) : null}\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.forgotPassword}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{loginMessage}\r\n\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(Login);\r\n","import React from \"react\";\r\nimport locale from \"../Locale\";\r\nimport { Container, Col } from \"reactstrap\";\r\n\r\nconst CookieInfo: React.FunctionComponent = props => {\r\n return (\r\n \r\n \r\n

{locale.cookiesTitle}

\r\n \r\n ...\r\n
\r\n );\r\n};\r\nexport default CookieInfo;\r\n","import React, { Fragment } from 'react';\r\nimport { Row, Col, Modal, ModalHeader, ModalBody } from 'reactstrap';\r\nimport locale from '../../Locale';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../../store/Configurator';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\n\r\nimport CustomerEditMenu from './CustomerEditMenu';\r\nimport { BootstrapTable, TableHeaderColumn } from 'react-bootstrap-table';\r\nimport Button from '../Button';\r\nimport Helper, { documentSatus } from '../../Helper';\r\nimport NumericInput from 'react-numeric-input';\r\nimport Loading from 'react-fullscreen-loading';\r\n\r\ninterface IProps extends RouteComponentProps {\r\n\tconfiguration?: any;\r\n\tdocument?: any;\r\n\ttheme?: any;\r\n\tpart?: any;\r\n}\r\ninterface IState {\r\n\tselectedId: string;\r\n\tselectedDocConfigId: string;\r\n\tselectedDocPosition: string;\r\n\tselectedStatus: string;\r\n\tselectedPartId: string;\r\n\tconfigurations: any;\r\n\tsentConfirmation: boolean;\r\n\tconfirmationModal: boolean;\r\n\tconfirmationModalTitle: string;\r\n\tconfirmationModalMessage: string;\r\n\taction: string;\r\n\tsaving: boolean;\r\n\tchangedNumericInput: string;\r\n\tnewQuantity: string;\r\n\tpreventDoubleClick: boolean;\r\n\tloading: boolean;\r\n}\r\nclass CustomerConfigurations extends React.Component {\r\n\tprivate timeout: any;\r\n\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.timeout = 0;\r\n\r\n\t\tthis.state = {\r\n\t\t\tselectedId: '',\r\n\t\t\tselectedDocConfigId: '',\r\n\t\t\tselectedDocPosition: '',\r\n\t\t\tselectedStatus: '',\r\n\t\t\tselectedPartId: '',\r\n\t\t\tconfigurations: [],\r\n\t\t\tsentConfirmation: false,\r\n\t\t\tconfirmationModal: false,\r\n\t\t\tconfirmationModalTitle: '',\r\n\t\t\tconfirmationModalMessage: '',\r\n\t\t\taction: '',\r\n\t\t\tsaving: false,\r\n\t\t\tchangedNumericInput: '',\r\n\t\t\tnewQuantity: '',\r\n\t\t\tpreventDoubleClick: false,\r\n\t\t\tloading: false,\r\n\t\t};\r\n\t}\r\n\tcomponentDidMount() {\r\n\t\tthis.configurationData(true);\r\n\t}\r\n\r\n\tsetConfigurations(configData: any, currency: any) {\r\n\t\tlet configurations: any = [];\r\n\t\tlet selectedId = '';\r\n\t\tlet selectedDocConfigId = '';\r\n\t\tlet selectedDocPosition = '';\r\n\t\tlet selectedStatus = '';\r\n\t\tlet selectedPartId = '';\r\n\t\tif (configData && configData.length > 0) {\r\n\t\t\tfor (let i = 0; i < configData.length; i++) {\r\n\t\t\t\tlet item = configData[i];\r\n\t\t\t\tconfigurations.push({\r\n\t\t\t\t\tid: item.ConfigurationId,\r\n\t\t\t\t\tdocumentConfigurationId: item.SalesDocumentConfigurationId,\r\n\t\t\t\t\tposition: item.ConfigurationPosition,\r\n\t\t\t\t\tconfigurationName: Helper.userIsParentPartner()\r\n\t\t\t\t\t\t? (Helper.getLocalizedName(item.ConfigurationBrandName) ?? '') + '
(' + Helper.getLocalizedName(item.ConfigurationName) + ')'\r\n\t\t\t\t\t\t: Helper.getLocalizedName(item.ConfigurationBrandName),\r\n\t\t\t\t\timage: item.Image,\r\n\t\t\t\t\tdateChanged: Helper.dateWithTimeConvert(item.ConfigurationDateModified),\r\n\t\t\t\t\tdateChangedDate: item.ConfigurationDateModified,\r\n\t\t\t\t\tvalue: item.TotalPrice.toLocaleString('de-DE', {\r\n\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\tcurrency: currency,\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tconfigurationWithAdditionalCost: item.ConfigurationWithAdditionalCost.toLocaleString('de-DE', {\r\n\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\tcurrency: currency,\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tquantity: item.Quantity,\r\n\t\t\t\t\tstatus: Helper.getLocalizedName(item.DocumentStatus),\r\n\t\t\t\t\tstatusId: item.DocumentStatusId,\r\n\t\t\t\t\tpartId: item.PartId,\r\n\t\t\t\t\tclonePart: item.ClonePart,\r\n\t\t\t\t\tdeliveryDate: Helper.dateConvert(item.DeliveryDate),\r\n\t\t\t\t\tcustomerPosition: item.CustomerPosition,\r\n\t\t\t\t});\r\n\t\t\t\tif (this.props.configuration && item.ConfigurationId === this.props.configuration.configurationId) {\r\n\t\t\t\t\tselectedId = item.ConfigurationId;\r\n\t\t\t\t\tselectedDocConfigId = item.SalesDocumentConfigurationId;\r\n\t\t\t\t\tselectedDocPosition = item.ConfigurationPosition;\r\n\t\t\t\t\tselectedStatus = item.DocumentStatusId;\r\n\t\t\t\t\tselectedPartId = item.PartId;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t\tthis.setState({\r\n\t\t\tconfigurations: configurations,\r\n\t\t\tselectedId: selectedId,\r\n\t\t\tselectedDocConfigId: selectedDocConfigId,\r\n\t\t\tselectedDocPosition: selectedDocPosition,\r\n\t\t\tselectedStatus: selectedStatus,\r\n\t\t\tselectedPartId: selectedPartId,\r\n\t\t\tloading: false,\r\n\t\t});\r\n\t}\r\n\tconfigurationData(refresh: boolean) {\r\n\t\tif (!this.props.document) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (refresh || !this.props.document.documentConfigurations) {\r\n\t\t\tthis.setState({ loading: true });\r\n\t\t\tconst url = '/document/' + this.props.document.documentId;\r\n\t\t\tHelper.getData(url).then((data: any) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\tconst configData = data.Configurations || [];\r\n\t\t\t\t\tthis.setConfigurations(configData, data.Currency ?? 'EUR');\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\tconst configData = this.props.document.documentConfigurations;\r\n\t\t\tthis.setConfigurations(configData, this.props.document.currency ?? 'EUR');\r\n\t\t}\r\n\t}\r\n\thandleSelectAndRedirect(url: string) {\r\n\t\t(this.props as any).clearPart();\r\n\t\t(this.props as any).buildCategories(this.state.selectedId, null, this.state.selectedDocConfigId);\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + url);\r\n\t\t}, 500);\r\n\t}\r\n\thandleRowSelect(row: any) {\r\n\t\tthis.setState({\r\n\t\t\tselectedId: row.id,\r\n\t\t\tselectedDocConfigId: row.documentConfigurationId,\r\n\t\t\tselectedDocPosition: row.position,\r\n\t\t\tsentConfirmation: false,\r\n\t\t\tselectedStatus: row.statusId,\r\n\t\t\tselectedPartId: row.partId,\r\n\t\t});\r\n\t}\r\n\tonDoubleClick(row: any) {\r\n\t\t(this.props as any).clearPart();\r\n\t\t(this.props as any).saveConfiguration(row.id, row.documentConfigurationId, row.position);\r\n\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/admin/configuration/calculation');\r\n\t}\r\n\tedit(selectedStatus: any) {\r\n\t\tif (selectedStatus === documentSatus.documentstatus_specialtechnicaldocumentationgenerated) {\r\n\t\t\tthis.toggleConfirmationModal(locale.change, locale.confirmChangeStatusSpecialTechnical, 'edit');\r\n\t\t} else {\r\n\t\t\tthis.handleSelectAndRedirect('/configurator/configuration');\r\n\t\t}\r\n\t}\r\n\topen() {\r\n\t\t(this.props as any).clearPart();\r\n\t\t(this.props as any).saveConfiguration(this.state.selectedId, this.state.selectedDocConfigId, this.state.selectedDocPosition);\r\n\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/admin/configuration/calculation');\r\n\t}\r\n\tcopy() {\r\n\t\tthis.setState({ saving: true, action: 'copy' });\r\n\t\tconst urlConfiguration = '/document/configuration/' + this.state.selectedDocConfigId + '/copy/?brandPartnerId=' + Helper.brandPartnerId();\r\n\r\n\t\tthis.setState({ selectedId: '', selectedDocConfigId: '' });\r\n\t\tHelper.postData(urlConfiguration, '')\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.copy, data.Message);\r\n\t\t\t\t\tthis.setState({ saving: false, action: '' });\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.setState({ saving: false, action: '' }, () => this.configurationData(true));\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch(() => (this.props as any).setError(locale.exception, locale.generalException));\r\n\t}\r\n\tadd() {\r\n\t\t(this.props as any).clearPart();\r\n\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/configurator/selection');\r\n\t}\r\n\tdelete() {\r\n\t\tconst url = '/document/configuration/' + this.state.selectedDocConfigId + '?brandPartnerId=' + Helper.brandPartnerId();\r\n\t\tthis.setState({ selectedId: '', selectedDocConfigId: '' });\r\n\t\tHelper.deleteData(url)\r\n\t\t\t.then((saveData) => {\r\n\t\t\t\tif (saveData.Message && saveData.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.deleting, saveData.Message);\r\n\t\t\t\t\tthis.setState({ saving: false, confirmationModal: false });\r\n\t\t\t\t} else {\r\n\t\t\t\t\t(this.props as any).clearPart();\r\n\t\t\t\t\tthis.setState({ saving: false, confirmationModal: false }, () => this.configurationData(true));\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t\t.catch(() => (this.props as any).setError(locale.deleting, locale.generalException));\r\n\t}\r\n\ttoggleConfirmationModal(title?: string, message?: string, action?: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.sentConfirmation = false;\r\n\t\tstate.confirmationModal = !state.confirmationModal;\r\n\t\tif (title && message && action) {\r\n\t\t\tstate.confirmationModalTitle = title;\r\n\t\t\tstate.confirmationModalMessage = message;\r\n\t\t\tstate.action = action;\r\n\t\t}\r\n\r\n\t\tthis.setState(state);\r\n\t}\r\n\tconfirmationAction(action: string) {\r\n\t\tif (action === 'edit') {\r\n\t\t\tconst state: IState = this.state;\r\n\t\t\tstate.confirmationModal = !state.confirmationModal;\r\n\t\t\tthis.setState(state);\r\n\t\t\tthis.handleSelectAndRedirect('/configurator/configuration');\r\n\t\t} else {\r\n\t\t\tthis.setState({ saving: true }, () => this.delete());\r\n\t\t}\r\n\t}\r\n\tvalidateText(e: React.ChangeEvent) {\r\n\t\tconst state: any = this.state;\r\n\t\tlet { target } = e;\r\n\t\tlet { validate } = state[target.name];\r\n\t\tlet value = e.target.value;\r\n\t\tif (this.timeout) clearTimeout(this.timeout);\r\n\t\tthis.timeout = setTimeout(() => {\r\n\t\t\tif (value.length > 0) {\r\n\t\t\t\tvalidate = 'has-success';\r\n\t\t\t} else {\r\n\t\t\t\tvalidate = 'has-danger';\r\n\t\t\t}\r\n\t\t\tstate[target.name].validate = validate;\r\n\t\t\tthis.setState(state);\r\n\t\t}, 700);\r\n\t}\r\n\thandleChange(e: React.ChangeEvent) {\r\n\t\tconst state: any = this.state;\r\n\t\tconst { target } = e;\r\n\t\tconst value = target.value;\r\n\t\tstate[target.name] = value;\r\n\t\tstate.saved = false;\r\n\t\tstate.sentConfirmation = false;\r\n\t\tthis.setState(state);\r\n\t}\r\n\tcancelSetQuantity() {\r\n\t\tthis.setState({\r\n\t\t\tchangedNumericInput: '',\r\n\t\t\tnewQuantity: '',\r\n\t\t\tpreventDoubleClick: false,\r\n\t\t});\r\n\t}\r\n\tsetQuantity() {\r\n\t\tif (this.state.newQuantity === '' || this.state.changedNumericInput === '') {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst url = '/document/configuration/' + this.state.changedNumericInput + '/changeQuantity';\r\n\r\n\t\tconst body = {\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tQuantity: this.state.newQuantity,\r\n\t\t};\r\n\t\tHelper.putData(url, JSON.stringify(body))\r\n\t\t\t.then((saveData) => {\r\n\t\t\t\tif (saveData.Message && saveData.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.deleting, saveData.Message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t(this.props as any).clearPart();\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\tchangedNumericInput: '',\r\n\t\t\t\t\tnewQuantity: '',\r\n\t\t\t\t\tpreventDoubleClick: false,\r\n\t\t\t\t});\r\n\t\t\t\tthis.configurationData(true);\r\n\t\t\t})\r\n\t\t\t.catch(() => (this.props as any).setError(locale.deleting, locale.generalException));\r\n\t}\r\n\trender() {\r\n\t\tconst configurations = this.state.configurations;\r\n\t\tconst { selectedId, selectedStatus, confirmationModal, saving, confirmationModalMessage, confirmationModalTitle, action, loading } = this.state;\r\n\r\n\t\tconst disableEditDocument = this.props.document && this.props.document.disableEdit;\r\n\t\tconst buttonsDisabled = !selectedId || selectedId.length === 0 || this.props.configuration.loading;\r\n\t\tconst buttonsDisabledTech = !selectedStatus || selectedStatus === documentSatus.documentstatus_generatingtechdocumentation;\r\n\r\n\t\tconst selectRowProp: any = {\r\n\t\t\tmode: 'radio', // single row selection\r\n\t\t\tclickToSelect: true,\r\n\t\t\thideSelectColumn: true,\r\n\t\t\tbgColor: Helper.themeBottonColorWithShadowRGBA(),\r\n\t\t\tselected: [selectedId],\r\n\t\t\tonSelect: (row: any) => this.handleRowSelect(row),\r\n\t\t};\r\n\t\tconst options = {\r\n\t\t\tonRowDoubleClick: (row: any) => this.onDoubleClick(row),\r\n\t\t\tnoDataText: locale.noResults,\r\n\t\t};\r\n\t\tconst imgFormatter = (cell: any, row: any) => {\r\n\t\t\tif (cell && cell !== null) {\r\n\t\t\t\treturn ``;\r\n\t\t\t} else {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst nameFormatter = (cell: any, row: any) => {\r\n\t\t\tif (cell && cell !== null) {\r\n\t\t\t\treturn `${cell} `;\r\n\t\t\t} else {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst idCopy = (cell: any, row: any) => {\r\n\t\t\tif (cell && cell !== null) {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\tnavigator.clipboard.writeText(`${cell}`);\r\n\t\t\t\t\t\t\t\talert(locale.clipboard + ' - ConfigurationID: ' + cell);\r\n\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\r\n\t\t\t\t);\r\n\t\t\t} else {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst qtyFormatter = (cell: any, row: any) => {\r\n\t\t\tif (cell && cell !== null) {\r\n\t\t\t\tconst disabled =\r\n\t\t\t\t\tthis.state.changedNumericInput !== row.documentConfigurationId ||\r\n\t\t\t\t\tthis.state.newQuantity === '0' ||\r\n\t\t\t\t\t!this.state.newQuantity ||\r\n\t\t\t\t\tdisableEditDocument;\r\n\t\t\t\tconst disabledCancel = this.state.changedNumericInput !== row.documentConfigurationId;\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\t\t\tchangedNumericInput: row.documentConfigurationId,\r\n\t\t\t\t\t\t\t\t\tnewQuantity: value,\r\n\t\t\t\t\t\t\t\t\tpreventDoubleClick: true,\r\n\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t);\r\n\t\t\t} else {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst dateSort = (a: any, b: any, order: string) => {\r\n\t\t\tif (order === 'asc') {\r\n\t\t\t\tif (new Date(a.dateChangedDate) < new Date(b.dateChangedDate)) return 1;\r\n\t\t\t\tif (new Date(a.dateChangedDate) > new Date(b.dateChangedDate)) return -1;\r\n\t\t\t} else if (order === 'desc') {\r\n\t\t\t\tif (new Date(a.dateChangedDate) > new Date(b.dateChangedDate)) return 1;\r\n\t\t\t\tif (new Date(a.dateChangedDate) < new Date(b.dateChangedDate)) return -1;\r\n\t\t\t}\r\n\t\t\treturn 0;\r\n\t\t};\r\n\t\tlet loadingDiv = null;\r\n\t\tif (loading || saving) {\r\n\t\t\tloadingDiv = ;\r\n\t\t}\r\n\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{loadingDiv ? (\r\n\t\t\t\t\t\t\tloadingDiv\r\n\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.position}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.adminDocumentCustomerPosition}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.name}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.clonePart}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.quantity}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.deliveryTime}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.adminCalculationConfigurationWithAdditionalSum}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.totalPriceWithoutTax}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.overview}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.date}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.status}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tId\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{Helper.userAdmin() ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.edit(selectedStatus)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.change}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.copy()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsaving={saving && action === 'copy'}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.copy}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleConfirmationModal(locale.delete, locale.confirmDelete, 'delete')}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.delete}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t\t\t\t{Helper.userInstaller() ? (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t) : null}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\r\n\t\t\t\t this.toggleConfirmationModal()}>\r\n\t\t\t\t\t this.toggleConfirmationModal()}>{confirmationModalTitle}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{confirmationModalMessage}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(CustomerConfigurations);\r\n","import React from \"react\";\r\nimport {\r\n Col,\r\n Button,\r\n Container,\r\n Form,\r\n FormGroup,\r\n Label,\r\n Input\r\n} from \"reactstrap\";\r\nimport \"./Configurator.css\";\r\nimport \"./ResetPassword.css\";\r\nimport { bindActionCreators } from \"redux\";\r\nimport { connect } from \"react-redux\";\r\nimport { actionCreators } from \"../store/Configurator\";\r\nimport locale from \"../Locale\";\r\nimport Helper from \"../Helper\";\r\n\r\ninterface IState {\r\n email: string;\r\n afterReset: boolean;\r\n validate: {\r\n emailState: string;\r\n };\r\n}\r\n\r\nclass ResetPassword extends React.Component {\r\n private timeout: number;\r\n\r\n constructor(props: any) {\r\n super(props);\r\n this.state = {\r\n email: \"\",\r\n afterReset: false,\r\n validate: {\r\n emailState: \"\"\r\n }\r\n };\r\n this.timeout = 0;\r\n }\r\n\r\n validateEmail(e: React.FormEvent) {\r\n const emailRex = /^(([^<>()[\\]\\\\.,;:\\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 { validate } = this.state;\r\n let value = e.currentTarget.value;\r\n if (this.timeout) window.clearTimeout(this.timeout);\r\n this.timeout = window.setTimeout(() => {\r\n if (emailRex.test(value)) {\r\n validate.emailState = \"has-success\";\r\n } else {\r\n validate.emailState = \"has-danger\";\r\n }\r\n this.setState({ validate });\r\n }, 700);\r\n }\r\n\r\n handleChange = async (event: React.FormEvent) => {\r\n const { currentTarget } = event;\r\n const value =\r\n currentTarget.type === \"checkbox\"\r\n ? currentTarget.checked\r\n : currentTarget.value;\r\n const { name } = currentTarget;\r\n await this.setState({\r\n [name]: value\r\n } as any);\r\n };\r\n\r\n async submitForm(e: React.FormEvent) {\r\n e.preventDefault();\r\n if (this.state.email === \"\") return;\r\n\r\n const state: IState = this.state;\r\n\r\n Helper.postData(\r\n \"/account/reset\",\r\n JSON.stringify({ username: this.state.email })\r\n ).then((result: any) => {\r\n state.afterReset = true;\r\n this.setState(state);\r\n });\r\n }\r\n\r\n render() {\r\n const { email, afterReset } = this.state;\r\n return (\r\n \r\n
this.submitForm(e)}>\r\n \r\n

{locale.resetPassword}

\r\n

\r\n \r\n \r\n \r\n \r\n {\r\n this.validateEmail(e);\r\n this.handleChange(e);\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {locale.resetPasswordMessage}\r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default connect(\r\n (state: any) => state.configurator,\r\n dispatch => bindActionCreators(actionCreators, dispatch)\r\n)(ResetPassword);\r\n","import React from 'react';\r\nimport { Col, Container, Form, FormGroup, Label, Input, Row, Modal, ModalHeader, ModalBody } from 'reactstrap';\r\nimport './Configurator.css';\r\nimport './Register.css';\r\nimport locale from '../Locale';\r\nimport Helper from '../Helper';\r\nimport Button from './Button';\r\nimport { BootstrapTable, TableHeaderColumn } from 'react-bootstrap-table';\r\nimport Loading from 'react-fullscreen-loading';\r\n\r\ninterface IState {\r\n\taddressing: string;\r\n\tfirstName: string;\r\n\tlastName: string;\r\n\temail: string;\r\n\taddress: string;\r\n\tzip: string;\r\n\tcity: string;\r\n\tcompanyName: string;\r\n\tcompanyRegistration: string;\r\n\tcompanyVAT: string;\r\n\tcountries: any[];\r\n\tcountryId: string;\r\n\ttelephone: string;\r\n\tmarketing: boolean;\r\n\tnotifications: boolean;\r\n\tpersonalData: boolean;\r\n\tdeliveryAddress: any;\r\n\treceiptAddress: any;\r\n\taddEditModal: boolean;\r\n\taddEditModalTitle: string;\r\n\taddEditModalAction: string;\r\n\taddEditAddressing: string;\r\n\taddEditFirstName: string;\r\n\taddEditLastName: string;\r\n\taddEditAddress: string;\r\n\taddEditZip: string;\r\n\taddEditCity: string;\r\n\taddEditCompanyName: string;\r\n\taddEditCompanyRegistration: string;\r\n\taddEditCompanyVAT: string;\r\n\taddEditCountryId: string;\r\n\taddEditTelephone: string;\r\n\taddEditCompany: boolean;\r\n\taddEditSelectedId: string;\r\n\tconfirmationModal: boolean;\r\n\tconfirmationModalTitle: string;\r\n\tconfirmationModalMessage: string;\r\n\tconfirmationModalAction: string;\r\n\tselectedId: string;\r\n\tregisterError: boolean;\r\n\tregisterSuccess: boolean;\r\n\tregisterMessage: string;\r\n\taddEditError: boolean;\r\n\taddEditMessage: string;\r\n\tloading: boolean;\r\n}\r\n\r\nexport default class Profile extends React.Component {\r\n\tprivate timeout: any;\r\n\tconstructor(props: any) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.timeout = 0;\r\n\t\tthis.state = {\r\n\t\t\taddressing: '',\r\n\t\t\tfirstName: '',\r\n\t\t\tlastName: '',\r\n\t\t\temail: '',\r\n\t\t\taddress: '',\r\n\t\t\tzip: '',\r\n\t\t\tcity: '',\r\n\t\t\tcompanyName: '',\r\n\t\t\tcompanyRegistration: '',\r\n\t\t\tcompanyVAT: '',\r\n\t\t\tcountries: [],\r\n\t\t\tcountryId: '',\r\n\t\t\ttelephone: '',\r\n\t\t\tmarketing: false,\r\n\t\t\tnotifications: false,\r\n\t\t\tpersonalData: false,\r\n\t\t\tdeliveryAddress: [],\r\n\t\t\treceiptAddress: [],\r\n\t\t\taddEditModal: false,\r\n\t\t\taddEditModalTitle: '',\r\n\t\t\taddEditModalAction: '',\r\n\t\t\taddEditAddressing: '',\r\n\t\t\taddEditFirstName: '',\r\n\t\t\taddEditLastName: '',\r\n\t\t\taddEditAddress: '',\r\n\t\t\taddEditZip: '',\r\n\t\t\taddEditCity: '',\r\n\t\t\taddEditCompanyName: '',\r\n\t\t\taddEditCompanyRegistration: '',\r\n\t\t\taddEditCompanyVAT: '',\r\n\t\t\taddEditCountryId: '',\r\n\t\t\taddEditTelephone: '',\r\n\t\t\taddEditCompany: false,\r\n\t\t\taddEditSelectedId: '',\r\n\t\t\tconfirmationModal: false,\r\n\t\t\tconfirmationModalTitle: '',\r\n\t\t\tconfirmationModalMessage: '',\r\n\t\t\tconfirmationModalAction: '',\r\n\t\t\tselectedId: '',\r\n\t\t\tregisterError: false,\r\n\t\t\tregisterSuccess: false,\r\n\t\t\tregisterMessage: '',\r\n\t\t\taddEditError: false,\r\n\t\t\taddEditMessage: '',\r\n\t\t\tloading: false,\r\n\t\t};\r\n\t}\r\n\r\n\tgetDeliveryAddressData(deliveryAddressData: any) {\r\n\t\tlet state: IState = this.state;\r\n\r\n\t\tlet deliveryAddress: any = [];\r\n\r\n\t\tif (deliveryAddressData.length > 0) {\r\n\t\t\tdeliveryAddressData.forEach((item: any) => {\r\n\t\t\t\tdeliveryAddress.push({\r\n\t\t\t\t\tid: item.UserAddressId,\r\n\t\t\t\t\taddressing: item.Addressing,\r\n\t\t\t\t\tfirstName: item.FirstName,\r\n\t\t\t\t\tlastName: item.LastName,\r\n\t\t\t\t\taddress: item.Address,\r\n\t\t\t\t\tzip: item.Zip,\r\n\t\t\t\t\tcity: item.City,\r\n\t\t\t\t\tcountryId: item.CountryId,\r\n\t\t\t\t\tcompany: item.Company,\r\n\t\t\t\t\tcompanyName: item.CompanyName,\r\n\t\t\t\t\tcompanyRegistration: item.CompanyRegistration,\r\n\t\t\t\t\tcompanyVAT: item.CompanyVAT,\r\n\t\t\t\t\ttelephone: item.Telephone,\r\n\t\t\t\t\tname:\r\n\t\t\t\t\t\titem.Addressing +\r\n\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\titem.FirstName +\r\n\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\titem.LastName +\r\n\t\t\t\t\t\t', ' +\r\n\t\t\t\t\t\titem.Address +\r\n\t\t\t\t\t\t', ' +\r\n\t\t\t\t\t\titem.Zip +\r\n\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\titem.City +\r\n\t\t\t\t\t\t(state.countries.find((element) => element.value === item.CountryId) !== undefined\r\n\t\t\t\t\t\t\t? ', ' + state.countries.find((element) => element.value === item.CountryId).code\r\n\t\t\t\t\t\t\t: '') +\r\n\t\t\t\t\t\t(item.CompanyName !== '' ? ', ' + item.CompanyName : '') +\r\n\t\t\t\t\t\t(item.Telephone !== '' ? ', ' + item.Telephone : ''),\r\n\t\t\t\t\tisDefault: item.Default,\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t}\r\n\t\tstate.deliveryAddress = deliveryAddress;\r\n\r\n\t\tthis.setState(state);\r\n\t}\r\n\r\n\tgetReceiptAddressData(receiptAddressData: any) {\r\n\t\tlet state: IState = this.state;\r\n\r\n\t\tlet receiptAddress: any = [];\r\n\r\n\t\tif (receiptAddressData.length > 0) {\r\n\t\t\treceiptAddressData.forEach((item: any) => {\r\n\t\t\t\treceiptAddress.push({\r\n\t\t\t\t\tid: item.UserAddressId,\r\n\t\t\t\t\taddressing: item.Addressing,\r\n\t\t\t\t\tfirstName: item.FirstName,\r\n\t\t\t\t\tlastName: item.LastName,\r\n\t\t\t\t\taddress: item.Address,\r\n\t\t\t\t\tzip: item.Zip,\r\n\t\t\t\t\tcity: item.City,\r\n\t\t\t\t\tcountryId: item.CountryId,\r\n\t\t\t\t\tcompany: item.Company,\r\n\t\t\t\t\tcompanyName: item.CompanyName,\r\n\t\t\t\t\tcompanyRegistration: item.CompanyRegistration,\r\n\t\t\t\t\tcompanyVAT: item.CompanyVAT,\r\n\t\t\t\t\ttelephone: item.Telephone,\r\n\t\t\t\t\tname:\r\n\t\t\t\t\t\titem.Addressing +\r\n\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\titem.FirstName +\r\n\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\titem.LastName +\r\n\t\t\t\t\t\t', ' +\r\n\t\t\t\t\t\titem.Address +\r\n\t\t\t\t\t\t', ' +\r\n\t\t\t\t\t\titem.Zip +\r\n\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\titem.City +\r\n\t\t\t\t\t\t(state.countries.find((element) => element.value === item.CountryId) !== undefined\r\n\t\t\t\t\t\t\t? ', ' + state.countries.find((element) => element.value === item.CountryId).code\r\n\t\t\t\t\t\t\t: '') +\r\n\t\t\t\t\t\t(item.CompanyName !== '' ? ', ' + item.CompanyName : '') +\r\n\t\t\t\t\t\t(item.Telephone !== '' ? ', ' + item.Telephone : ''),\r\n\t\t\t\t\tisDefault: item.Default,\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t}\r\n\t\tstate.receiptAddress = receiptAddress;\r\n\r\n\t\tthis.setState(state);\r\n\t}\r\n\r\n\tremoveAddress(isDelivery: boolean) {\r\n\t\tthis.setState({ loading: true });\r\n\t\tlet url = '';\r\n\t\tif (isDelivery) {\r\n\t\t\turl += '/account/removeDeliveryAddress?userAddressId=' + this.state.selectedId;\r\n\t\t} else {\r\n\t\t\turl += '/account/removeReceiptAddress?userAddressId=' + this.state.selectedId;\r\n\t\t}\r\n\t\tthis.setState({ selectedId: '' });\r\n\t\tHelper.postData(url, '').then((saveData) => {\r\n\t\t\tif (saveData && saveData) {\r\n\t\t\t\tif (isDelivery) {\r\n\t\t\t\t\tthis.getDeliveryAddressData(saveData);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.getReceiptAddressData(saveData);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t}\r\n\r\n\tsaveAddressModal(isDelivery: boolean, edit: boolean) {\r\n\t\tthis.setState({ loading: true });\r\n\t\tconst state: IState = this.state;\r\n\r\n\t\tlet url = '';\r\n\t\tlet body = {};\r\n\t\tif (\r\n\t\t\tstate.addEditFirstName === '' ||\r\n\t\t\tstate.addEditLastName === '' ||\r\n\t\t\tstate.addEditAddress === '' ||\r\n\t\t\tstate.addEditZip === '' ||\r\n\t\t\tstate.addEditCity === '' ||\r\n\t\t\tstate.addEditCountryId === '' ||\r\n\t\t\tstate.addEditCountryId === '00000000-0000-0000-0000-000000000000'\r\n\t\t) {\r\n\t\t\tstate.addEditMessage = locale.missingFields;\r\n\t\t\tstate.addEditError = true;\r\n\t\t\tthis.setState(state);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (edit) {\r\n\t\t\turl = '/account/update';\r\n\t\t} else {\r\n\t\t\turl = '/account/add';\r\n\t\t}\r\n\t\tif (isDelivery) {\r\n\t\t\turl += 'DeliveryAddress';\r\n\t\t} else {\r\n\t\t\turl += 'ReceiptAddress';\r\n\t\t}\r\n\t\tbody = {\r\n\t\t\tUserAddressId: state.addEditSelectedId,\r\n\t\t\tAddressing: state.addEditAddressing,\r\n\t\t\tFirstName: state.addEditFirstName,\r\n\t\t\tLastName: state.addEditLastName,\r\n\t\t\tAddress: state.addEditAddress,\r\n\t\t\tZip: state.addEditZip,\r\n\t\t\tCity: state.addEditCity,\r\n\t\t\tCompanyName: state.addEditCompanyName,\r\n\t\t\tCompanyRegistration: state.addEditCompanyRegistration,\r\n\t\t\tCompanyVAT: state.addEditCompanyVAT,\r\n\t\t\tCountryId: state.addEditCountryId,\r\n\t\t\tTelephone: state.addEditTelephone,\r\n\t\t};\r\n\t\tHelper.postData(url, JSON.stringify(body))\r\n\t\t\t.then((saveData) => {\r\n\t\t\t\tif (saveData && saveData) {\r\n\t\t\t\t\tif (this.timeout) clearTimeout(this.timeout);\r\n\t\t\t\t\tstate.addEditMessage = '';\r\n\t\t\t\t\tstate.addEditError = false;\r\n\t\t\t\t\tstate.addEditModal = false;\r\n\t\t\t\t\tstate.addEditModalAction = '';\r\n\t\t\t\t\tstate.addEditModalTitle = '';\r\n\t\t\t\t\tstate.addEditSelectedId = '';\r\n\t\t\t\t\tstate.addEditAddressing = '';\r\n\t\t\t\t\tstate.addEditFirstName = '';\r\n\t\t\t\t\tstate.addEditLastName = '';\r\n\t\t\t\t\tstate.addEditAddress = '';\r\n\t\t\t\t\tstate.addEditZip = '';\r\n\t\t\t\t\tstate.addEditCity = '';\r\n\t\t\t\t\tstate.addEditCompanyName = '';\r\n\t\t\t\t\tstate.addEditCompanyRegistration = '';\r\n\t\t\t\t\tstate.addEditCompanyVAT = '';\r\n\t\t\t\t\tstate.addEditCountryId = '';\r\n\t\t\t\t\tstate.addEditTelephone = '';\r\n\t\t\t\t\tthis.setState(state);\r\n\t\t\t\t\tif (isDelivery) {\r\n\t\t\t\t\t\tthis.getDeliveryAddressData(saveData);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.getReceiptAddressData(saveData);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\r\n\tsetDefaultAddress(isDelivery: boolean, id: string) {\r\n\t\tthis.setState({ loading: true });\r\n\t\tlet url = '';\r\n\t\tif (isDelivery) {\r\n\t\t\turl += '/account/setDefaultDeliveryAddress?userAddressId=' + id;\r\n\t\t} else {\r\n\t\t\turl += '/account/setDefaultReceiptAddress?userAddressId=' + id;\r\n\t\t}\r\n\t\tHelper.postData(url, '').then((saveData) => {\r\n\t\t\tif (saveData && saveData) {\r\n\t\t\t\tif (isDelivery) {\r\n\t\t\t\t\tthis.getDeliveryAddressData(saveData);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.getReceiptAddressData(saveData);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t}\r\n\r\n\ttoggleConfirmationModal(title?: string, message?: string, action?: string, id?: string) {\r\n\t\tconst state: IState = this.state;\r\n\r\n\t\tstate.confirmationModal = !state.confirmationModal;\r\n\t\tif (title && message && action && id) {\r\n\t\t\tstate.confirmationModalTitle = title;\r\n\t\t\tstate.confirmationModalMessage = message;\r\n\t\t\tstate.confirmationModalAction = action;\r\n\t\t\tstate.selectedId = id;\r\n\t\t}\r\n\t\tthis.setState(state);\r\n\t}\r\n\r\n\ttoggleAddressModal(reset: boolean, isDelivery: boolean, edit: boolean, title?: string, id?: string, item?: any) {\r\n\t\tconst state: IState = this.state;\r\n\r\n\t\tstate.addEditModal = !state.addEditModal;\r\n\t\tstate.addEditMessage = '';\r\n\t\tstate.addEditError = false;\r\n\t\tif (!reset) {\r\n\t\t\tif (title) {\r\n\t\t\t\tstate.addEditModalTitle = title;\r\n\t\t\t}\r\n\t\t\tif (!edit) {\r\n\t\t\t\tif (isDelivery) {\r\n\t\t\t\t\tstate.addEditModalAction = 'addDelivery';\r\n\t\t\t\t} else {\r\n\t\t\t\t\tstate.addEditModalAction = 'addReceipt';\r\n\t\t\t\t}\r\n\t\t\t} else if (id && edit && item) {\r\n\t\t\t\tstate.addEditSelectedId = id;\r\n\t\t\t\tstate.addEditAddressing = item.addressing;\r\n\t\t\t\tstate.addEditFirstName = item.firstName;\r\n\t\t\t\tstate.addEditLastName = item.lastName;\r\n\t\t\t\tstate.addEditAddress = item.address;\r\n\t\t\t\tstate.addEditZip = item.zip;\r\n\t\t\t\tstate.addEditCity = item.city;\r\n\t\t\t\tstate.addEditCountryId = item.countryId;\r\n\t\t\t\tstate.addEditCompany = item.company;\r\n\t\t\t\tstate.addEditCompanyName = item.companyName;\r\n\t\t\t\tstate.addEditCompanyRegistration = item.companyRegistration;\r\n\t\t\t\tstate.addEditCompanyVAT = item.companyVAT;\r\n\t\t\t\tstate.addEditTelephone = item.telephone;\r\n\t\t\t\tif (isDelivery) {\r\n\t\t\t\t\tstate.addEditModalAction = 'editDelivery';\r\n\t\t\t\t} else {\r\n\t\t\t\t\tstate.addEditModalAction = 'editReceipt';\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tstate.addEditModalAction = '';\r\n\t\t\tstate.addEditModalTitle = '';\r\n\t\t\tstate.addEditSelectedId = '';\r\n\t\t\tstate.addEditAddressing = '';\r\n\t\t\tstate.addEditFirstName = '';\r\n\t\t\tstate.addEditLastName = '';\r\n\t\t\tstate.addEditAddress = '';\r\n\t\t\tstate.addEditZip = '';\r\n\t\t\tstate.addEditCity = '';\r\n\t\t\tstate.addEditCompanyName = '';\r\n\t\t\tstate.addEditCompanyRegistration = '';\r\n\t\t\tstate.addEditCompanyVAT = '';\r\n\t\t\tstate.addEditCountryId = '';\r\n\t\t\tstate.addEditTelephone = '';\r\n\t\t}\r\n\t\tthis.setState(state);\r\n\t}\r\n\r\n\tconfirmationDelete() {\r\n\t\tif (this.state.confirmationModalAction === 'removeDelivery') {\r\n\t\t\tthis.removeAddress(true);\r\n\t\t} else if (this.state.confirmationModalAction === 'removeReceipt') {\r\n\t\t\tthis.removeAddress(false);\r\n\t\t}\r\n\t\tthis.setState({ confirmationModal: false });\r\n\t}\r\n\r\n\tconfirmationAddress() {\r\n\t\tif (this.state.addEditModalAction === 'addDelivery') {\r\n\t\t\tthis.saveAddressModal(true, false);\r\n\t\t} else if (this.state.addEditModalAction === 'addReceipt') {\r\n\t\t\tthis.saveAddressModal(false, false);\r\n\t\t} else if (this.state.addEditModalAction === 'editDelivery') {\r\n\t\t\tthis.saveAddressModal(true, true);\r\n\t\t} else if (this.state.addEditModalAction === 'editReceipt') {\r\n\t\t\tthis.saveAddressModal(false, true);\r\n\t\t}\r\n\t}\r\n\r\n\tcomponentDidMount() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tlet url = '/account/info';\r\n\t\tHelper.getData(url).then((data: any) => {\r\n\t\t\tif (data) {\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\taddressing: data.Addressing,\r\n\t\t\t\t\tfirstName: data.FirstName,\r\n\t\t\t\t\tlastName: data.LastName,\r\n\t\t\t\t\temail: data.Email,\r\n\t\t\t\t\taddress: data.Address,\r\n\t\t\t\t\tzip: data.Zip,\r\n\t\t\t\t\tcity: data.City,\r\n\t\t\t\t\tcompanyName: data.CompanyName,\r\n\t\t\t\t\tcompanyRegistration: data.CompanyRegistration,\r\n\t\t\t\t\tcompanyVAT: data.CompanyVAT,\r\n\t\t\t\t\tcountryId: data.CountryId,\r\n\t\t\t\t\ttelephone: data.Telephone,\r\n\t\t\t\t\tmarketing: data.Marketing,\r\n\t\t\t\t\tnotifications: data.Notification,\r\n\t\t\t\t\tpersonalData: data.PersonalData,\r\n\t\t\t\t});\r\n\t\t\t\tif (data.DeliveryAddress && data.DeliveryAddress.length > 0) {\r\n\t\t\t\t\tthis.getDeliveryAddressData(data.DeliveryAddress);\r\n\t\t\t\t}\r\n\t\t\t\tif (data.ReceiptAddress && data.ReceiptAddress.length > 0) {\r\n\t\t\t\t\tthis.getReceiptAddressData(data.ReceiptAddress);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t\tHelper.getData('/selection/countrylist')\r\n\t\t\t.then((data: any) => {\r\n\t\t\t\tlet countriesFromApi = data\r\n\t\t\t\t\t.map((country: any) => {\r\n\t\t\t\t\t\treturn { value: country.CountryId, code: country.Code, display: Helper.getLocalizedName(country.Name) };\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.sort((a: any, b: any) => a.display.localeCompare(b.display));\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\tcountries: [\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tvalue: '',\r\n\t\t\t\t\t\t\tcode: '',\r\n\t\t\t\t\t\t\tdisplay: locale.selectCountry,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t].concat(countriesFromApi),\r\n\t\t\t\t});\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\r\n\thandleChange = async (event: React.FormEvent) => {\r\n\t\tconst { currentTarget } = event;\r\n\t\tconst value = currentTarget.type === 'checkbox' ? currentTarget.checked : currentTarget.value;\r\n\t\tconst { name } = currentTarget;\r\n\t\tawait this.setState({\r\n\t\t\t[name]: value,\r\n\t\t} as unknown as Pick);\r\n\t};\r\n\r\n\tsubmitForm(event: React.FormEvent) {\r\n\t\tevent.preventDefault();\r\n\t\tconst state: IState = this.state;\r\n\t\tif (\r\n\t\t\tstate.firstName === '' ||\r\n\t\t\tstate.lastName === '' ||\r\n\t\t\tstate.address === '' ||\r\n\t\t\tstate.zip === '' ||\r\n\t\t\tstate.city === '' ||\r\n\t\t\tstate.countryId === '' ||\r\n\t\t\tstate.countryId === '00000000-0000-0000-0000-000000000000'\r\n\t\t) {\r\n\t\t\tstate.registerMessage = locale.missingFields;\r\n\t\t\tstate.registerError = true;\r\n\t\t\tstate.registerSuccess = false;\r\n\t\t\tthis.setState(state);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tlet data = {\r\n\t\t\tAddressing: state.addressing,\r\n\t\t\tFirstName: state.firstName,\r\n\t\t\tLastName: state.lastName,\r\n\t\t\tEmail: state.email,\r\n\t\t\tAddress: state.address,\r\n\t\t\tZip: state.zip,\r\n\t\t\tCity: state.city,\r\n\t\t\tCompanyName: state.companyName,\r\n\t\t\tCompanyRegistration: state.companyRegistration,\r\n\t\t\tCompanyVAT: state.companyVAT,\r\n\t\t\tCountryId: state.countryId,\r\n\t\t\tTelephone: state.telephone,\r\n\t\t\tMarketing: state.marketing,\r\n\t\t\tNotification: state.notifications,\r\n\t\t\tPersonalData: state.personalData,\r\n\t\t};\r\n\r\n\t\tHelper.postData('/account/update', JSON.stringify(data)).then((res) => {\r\n\t\t\tif (res.Message && res.Message !== '') {\r\n\t\t\t\tstate.registerMessage = res.Message;\r\n\t\t\t\tstate.registerError = true;\r\n\t\t\t\tstate.registerSuccess = false;\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t} else {\r\n\t\t\t\tstate.registerMessage = locale.profileUpdateSucceeded;\r\n\t\t\t\tstate.registerError = false;\r\n\t\t\t\tstate.registerSuccess = true;\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\trender() {\r\n\t\tconst {\r\n\t\t\taddressing,\r\n\t\t\tfirstName,\r\n\t\t\tlastName,\r\n\t\t\temail,\r\n\t\t\taddress,\r\n\t\t\tzip,\r\n\t\t\tcity,\r\n\t\t\tcompanyName,\r\n\t\t\tcompanyRegistration,\r\n\t\t\tcompanyVAT,\r\n\t\t\ttelephone,\r\n\t\t\taddEditAddressing,\r\n\t\t\taddEditFirstName,\r\n\t\t\taddEditLastName,\r\n\t\t\taddEditAddress,\r\n\t\t\taddEditZip,\r\n\t\t\taddEditCity,\r\n\t\t\taddEditCompanyName,\r\n\t\t\taddEditCompanyRegistration,\r\n\t\t\taddEditCompanyVAT,\r\n\t\t\taddEditTelephone,\r\n\r\n\t\t\tregisterError,\r\n\t\t\tregisterMessage,\r\n\t\t\tregisterSuccess,\r\n\t\t\taddEditError,\r\n\t\t\taddEditMessage,\r\n\t\t} = this.state;\r\n\r\n\t\tconst registerFailedVisible = registerError ? 'block' : 'none';\r\n\t\tconst registerSuccessVisible = registerSuccess ? 'block' : 'none';\r\n\t\tconst addEditFailedVisible = addEditError ? 'block' : 'none';\r\n\r\n\t\tconst options = {\r\n\t\t\tnoDataText: locale.noData,\r\n\t\t};\r\n\r\n\t\tconst removeDelivery = (cell: any, row: any) => {\r\n\t\t\tif (!cell) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\r\n\t\tconst removeReceipt = (cell: any) => {\r\n\t\t\tif (!cell) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\r\n\t\tconst editDelivery = (cell: any, row: any) => {\r\n\t\t\tif (!cell) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\r\n\t\tconst editReceipt = (cell: any, row: any) => {\r\n\t\t\tif (!cell) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\r\n\t\tconst setDefaultDelivery = (cell: any, row: any) => {\r\n\t\t\tif (!cell) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\tif (row.isDefault) {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\r\n\t\tconst setDefaultReceipt = (cell: any, row: any) => {\r\n\t\t\tif (!cell) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\tif (row.isDefault) {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{this.state.loading ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t

{locale.profile}

\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tcountryId: e.target.value,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t{this.state.countries.map((country) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
{locale.inquiryConsents}
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.inquiryConsent1Title} - {locale.inquiryConsent1}\r\n\t\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.inquiryConsent2Title} - {locale.inquiryConsent2}\r\n\t\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.inquiryConsent3Title} - {locale.inquiryConsent3}\r\n\t\t\t\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t{registerMessage}\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t{registerMessage}\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t

{locale.profileDeliveryTitle}

\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{''}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{''}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{''}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.name}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t this.toggleAddressModal(false, true, false, locale.profileAddressAdd)}\r\n\t\t\t\t\t\t\t\t\t\t\tclassName={'button btn-secondary mt-3 mb-3'}\r\n\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.profileAddressAdd}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t

{locale.profileReceiptTitle}

\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{''}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{''}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{''}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t{locale.name}\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t this.toggleAddressModal(false, false, false, locale.profileAddressAdd)}\r\n\t\t\t\t\t\t\t\t\t\t\tclassName={'button btn-secondary mt-3 mb-3'}\r\n\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t{locale.profileAddressAdd}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t this.toggleConfirmationModal()}>\r\n\t\t\t\t\t\t\t this.toggleConfirmationModal()}>{locale.delete}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{locale.confirmDelete}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t this.toggleAddressModal(true, false, false)}\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t this.toggleAddressModal(true, false, false)}>{this.state.addEditModalTitle}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\t\t\t\t\t\t\taddEditCountryId: e.target.value,\r\n\t\t\t\t\t\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t{this.state.countries.map((addEditCountry) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t{addEditMessage}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n","import React, { Fragment } from 'react';\r\nimport {\r\n\tRow,\r\n\tCol,\r\n\tInput,\r\n\tLabel,\r\n\tFormGroup,\r\n\tUncontrolledDropdown,\r\n\tDropdownItem,\r\n\tDropdownMenu,\r\n\tDropdownToggle,\r\n\tModal,\r\n\tModalHeader,\r\n\tModalBody,\r\n} from 'reactstrap';\r\nimport locale from '../../Locale';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../../store/Configurator';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport Helper, { documentSatus, documentType } from '../../Helper';\r\nimport CustomerEditMenu from './CustomerEditMenu';\r\nimport './Admin.css';\r\nimport Button from '../Button';\r\nimport { BootstrapTable, TableHeaderColumn } from 'react-bootstrap-table';\r\nimport Loading from 'react-fullscreen-loading';\r\n\r\ninterface IProps extends RouteComponentProps {\r\n\tdocument?: any;\r\n}\r\ninterface IState {\r\n\tselectedId: string;\r\n\tselected: any[];\r\n\tchkPrices: boolean;\r\n\tchkColorImage: boolean;\r\n\tchkTechImage: boolean;\r\n\tchkConditions: boolean;\r\n\tprintTemplates: any;\r\n\tlanguages: any;\r\n\tselectedTemplate: any;\r\n\tselectedLanguage: any;\r\n\tgenerateDocuments: any[];\r\n\tloading: boolean;\r\n\tconfirmationModal: boolean;\r\n\tconfirmationModalTitle: string;\r\n\tconfirmationModalMessage: string;\r\n\tconfirmationModalAction: string;\r\n\tdeleteId: string;\r\n\tdocumentNumber: string;\r\n\tcontact: string;\r\n\temail: string;\r\n\tdisableTechDocumentation: boolean;\r\n}\r\nclass CustomerDocumentPrint extends React.Component {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\tselectedId: '',\r\n\t\t\tselected: [],\r\n\t\t\tchkPrices: false,\r\n\t\t\tchkColorImage: false,\r\n\t\t\tchkTechImage: false,\r\n\t\t\tchkConditions: false,\r\n\t\t\tprintTemplates: [],\r\n\t\t\tlanguages: [],\r\n\t\t\tselectedTemplate: { name: '', value: '' },\r\n\t\t\tselectedLanguage: { name: '', value: '' },\r\n\t\t\tgenerateDocuments: [],\r\n\t\t\tloading: false,\r\n\t\t\tconfirmationModal: false,\r\n\t\t\tconfirmationModalTitle: '',\r\n\t\t\tconfirmationModalMessage: '',\r\n\t\t\tconfirmationModalAction: '',\r\n\t\t\tdeleteId: '',\r\n\t\t\tdocumentNumber: '',\r\n\t\t\tcontact: '',\r\n\t\t\temail: '',\r\n\t\t\tdisableTechDocumentation: false,\r\n\t\t};\r\n\t}\r\n\tcomponentDidMount() {\r\n\t\tif (!Helper.userAdmin()) {\r\n\t\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/admin/document/configurations');\r\n\t\t}\r\n\t\tthis.setState({ loading: true });\r\n\t\tthis.getTemplates();\r\n\t\tthis.getLanguages();\r\n\t\tthis.getPrintData();\r\n\t}\r\n\r\n\tonRowSelect(row: any, isSelected: boolean) {\r\n\t\tif (isSelected) {\r\n\t\t\tthis.setState({\r\n\t\t\t\tselected: [...this.state.selected, row.id].sort(),\r\n\t\t\t});\r\n\t\t} else {\r\n\t\t\tthis.setState({\r\n\t\t\t\tselected: this.state.selected.filter((it) => it !== row.id),\r\n\t\t\t});\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\r\n\tonSelectAll(isSelected: boolean) {\r\n\t\tif (!isSelected) {\r\n\t\t\tthis.setState({ selected: [] });\r\n\t\t} else {\r\n\t\t\tthis.setState({\r\n\t\t\t\tselected: this.state.generateDocuments.map((doc: any) => doc.id),\r\n\t\t\t});\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\r\n\ttoggleConfirmationModal(title?: string, message?: string, action?: string, id?: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.confirmationModal = !state.confirmationModal;\r\n\t\tif (title && message && action) {\r\n\t\t\tstate.confirmationModalTitle = title;\r\n\t\t\tstate.confirmationModalMessage = message;\r\n\t\t\tstate.confirmationModalAction = action;\r\n\t\t\tstate.deleteId = id ? id : '';\r\n\t\t}\r\n\t\tthis.setState(state);\r\n\t}\r\n\r\n\tconfirmationAction() {\r\n\t\tif (this.state.confirmationModalAction === 'changeToSent') {\r\n\t\t\tthis.changeStatusToSent();\r\n\t\t} else if (this.state.confirmationModalAction === 'sendDocument') {\r\n\t\t\tthis.printOffer(true);\r\n\t\t} else if (this.state.confirmationModalAction === 'deleteOffer') {\r\n\t\t\tthis.deleteOffer(this.state.deleteId);\r\n\t\t}\r\n\t}\r\n\tgetPrintData() {\r\n\t\tconst state: IState = this.state;\r\n\t\tconst url = '/document/' + this.props.document.documentId + '/documents?brandPartnerId=' + Helper.brandPartnerId();\r\n\t\tlet generateDocuments: any[] = [];\r\n\r\n\t\tHelper.getData(url).then((data: any) => {\r\n\t\t\tif (data) {\r\n\t\t\t\tif (data.Documents && data.Documents.length > 0) {\r\n\t\t\t\t\tdata.Documents.forEach((item: any) => {\r\n\t\t\t\t\t\tgenerateDocuments.push({\r\n\t\t\t\t\t\t\tid: item.SalesDocumentGeneratedId,\r\n\t\t\t\t\t\t\tfileName: item.FileName,\r\n\t\t\t\t\t\t\ttype: Helper.getLocalizedName(item.DocumentType),\r\n\t\t\t\t\t\t\ttypeId: item.DocumentTypeId,\r\n\t\t\t\t\t\t\tuserAdded: item.CreatedBy,\r\n\t\t\t\t\t\t\tdateAdded: Helper.dateWithTimeConvert(item.TimeStamp),\r\n\t\t\t\t\t\t\tdateAddedDate: item.TimeStamp,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t});\r\n\t\t\t\t\tstate.generateDocuments = generateDocuments;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tstate.documentNumber = data.DocumentNumber;\r\n\t\t\t\tstate.contact = data.Contact;\r\n\t\t\t\tstate.email = data.Email;\r\n\t\t\t\tstate.loading = false;\r\n\t\t\t\tstate.disableTechDocumentation = data.DisableTechDocumentation;\r\n\t\t\t}\r\n\t\t\tthis.setState(state);\r\n\t\t});\r\n\t}\r\n\r\n\tgetTemplates() {\r\n\t\tconst state: any = this.state;\r\n\t\tconst url = '/document/' + this.props.document.documentId + '/templates';\r\n\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\tstate.printTemplates = data;\r\n\t\t\t\t\tdata.map((template: any) => {\r\n\t\t\t\t\t\tif (template.IsPrintDefault) {\r\n\t\t\t\t\t\t\tstate.selectedTemplate.name = template.TemplateName;\r\n\t\t\t\t\t\t\tstate.selectedTemplate.value = template.DocumentTemplateId;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\treturn null;\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\r\n\tgetLanguages() {\r\n\t\tconst state: any = this.state;\r\n\t\tconst url = '/selection/language/' + this.props.document.documentId;\r\n\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\tstate.languages = data;\r\n\t\t\t\t\tdata.map((language: any) => {\r\n\t\t\t\t\t\tif (language.IsDefault) {\r\n\t\t\t\t\t\t\tstate.selectedLanguage.name = language.Name;\r\n\t\t\t\t\t\t\tstate.selectedLanguage.value = language.LanguageId;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\treturn null;\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\r\n\tprintOffer(send: boolean) {\r\n\t\tif (this.state.selectedTemplate.value === '' || this.state.selectedLanguage.value === '') {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.setState({ loading: true, confirmationModal: false });\r\n\t\tconst url = '/document/' + this.props.document.documentId + '/generateDocument';\r\n\r\n\t\tconst body = {\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tTemplateId: this.state.selectedTemplate.value,\r\n\t\t\tLanguageId: this.state.selectedLanguage.value,\r\n\t\t\tSend: send,\r\n\t\t\tShowPrices: this.state.chkPrices,\r\n\t\t\tShowImages: this.state.chkColorImage,\r\n\t\t\tShowDocumentation: this.state.chkTechImage,\r\n\t\t\tShowTerms: this.state.chkConditions,\r\n\t\t};\r\n\r\n\t\tHelper.postData(url, JSON.stringify(body)).then((data: any) => {\r\n\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t(this.props as any).setError(locale.printOffer, data.Message);\r\n\t\t\t} else if (data) {\r\n\t\t\t\tif (send) {\r\n\t\t\t\t\t//send email\r\n\t\t\t\t\tthis.setState(() => this.getPrintData());\r\n\t\t\t\t\t(this.props as any).setDocument(\r\n\t\t\t\t\t\tthis.props.document.documentId,\r\n\t\t\t\t\t\t'',\r\n\t\t\t\t\t\tnull,\r\n\t\t\t\t\t\tthis.props.document.name,\r\n\t\t\t\t\t\tthis.props.document.project,\r\n\t\t\t\t\t\ttrue,\r\n\t\t\t\t\t\tdocumentSatus.documentstatus_offer,\r\n\t\t\t\t\t\tthis.props.document.currency\r\n\t\t\t\t\t);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t//download\r\n\t\t\t\t\tlet link = document.createElement('a');\r\n\t\t\t\t\tlink.download = data.FileName;\r\n\t\t\t\t\tlink.href = `data:${data.MimeType};base64,${data.Contents}`;\r\n\t\t\t\t\tlink.click();\r\n\t\t\t\t\tthis.setState(() => this.getPrintData());\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t}\r\n\tchangeStatusToSent() {\r\n\t\tthis.setState({ loading: true, confirmationModal: false });\r\n\t\tconst url = '/document/' + this.props.document.documentId + '/sendmanually?brandPartnerId=' + Helper.brandPartnerId();\r\n\t\tHelper.postData(url, '').then((data: any) => {\r\n\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t(this.props as any).setError(locale.printOffer, data.Message);\r\n\t\t\t} else if (data) {\r\n\t\t\t\tthis.setState(() => this.getPrintData());\r\n\t\t\t\t(this.props as any).setDocument(\r\n\t\t\t\t\tthis.props.document.documentId,\r\n\t\t\t\t\t'',\r\n\t\t\t\t\tnull,\r\n\t\t\t\t\tthis.props.document.name,\r\n\t\t\t\t\tthis.props.document.project,\r\n\t\t\t\t\ttrue,\r\n\t\t\t\t\tdocumentSatus.documentstatus_offer,\r\n\t\t\t\t\tthis.props.document.currency\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t}\r\n\tdeleteOffer(id: string) {\r\n\t\tthis.setState({ loading: true, confirmationModal: false });\r\n\t\tthis.onSelectAll(false);\r\n\t\tconst url = '/document/' + this.props.document.documentId + '/download/' + id;\r\n\t\tHelper.deleteData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.deleting, data.Message);\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.getPrintData();\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t})\r\n\t\t\t.catch(() => {\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\t(this.props as any).setError(locale.deleting, locale.generalException);\r\n\t\t\t});\r\n\t}\r\n\tdownloadDocument(id: string, pdf: boolean) {\r\n\t\tthis.setState({ loading: true });\r\n\t\tlet url = '';\r\n\t\tif (pdf) {\r\n\t\t\turl = '/document/' + this.props.document.documentId + '/download/' + id + '/pdf';\r\n\t\t} else {\r\n\t\t\turl = '/document/' + this.props.document.documentId + '/download/' + id + '/doc';\r\n\t\t}\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\tconst value = data;\r\n\t\t\t\t\tlet link = document.createElement('a');\r\n\t\t\t\t\tlink.download = value.FileName;\r\n\t\t\t\t\tlink.href = `data:${value.MimeType};base64,${value.Contents}`;\r\n\t\t\t\t\tlink.click();\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\tdownloadZip() {\r\n\t\tif (!this.state.selected || this.state.selected.length < 1) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.setState({ loading: true });\r\n\t\tconst url = '/document/' + this.props.document.documentId + '/download/zip';\r\n\r\n\t\tconst body = {\r\n\t\t\tDocumentIds: this.state.selected,\r\n\t\t};\r\n\r\n\t\tHelper.postData(url, JSON.stringify(body)).then((data: any) => {\r\n\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t(this.props as any).setError(locale.printOffer, data.Message);\r\n\t\t\t} else if (data) {\r\n\t\t\t\tlet link = document.createElement('a');\r\n\t\t\t\tlink.download = data.FileName;\r\n\t\t\t\tlink.href = `data:${data.MimeType};base64,${data.Contents}`;\r\n\t\t\t\tlink.click();\r\n\t\t\t\tthis.setState(() => this.getPrintData());\r\n\t\t\t}\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t}\r\n\trender() {\r\n\t\tconst state = this.state;\r\n\t\tconst options = {\r\n\t\t\tpageSize: 5,\r\n\t\t\tnoDataText: locale.noResults,\r\n\t\t};\r\n\r\n\t\t// Document can be printed even when it is readonly but cannot be sent\r\n\t\tconst disableEditDocument = this.props.document && this.props.document.disableEdit;\r\n\r\n\t\tconst selectRowProp: any = {\r\n\t\t\tmode: 'checkbox',\r\n\t\t\tclickToSelect: true,\r\n\t\t\tbgColor: Helper.themeBottonColorWithShadowRGBA(),\r\n\t\t\tselected: this.state.selected,\r\n\t\t\tonSelect: (row: any, isSelected: boolean) => this.onRowSelect(row, isSelected),\r\n\t\t\tonSelectAll: (isSelected: boolean) => this.onSelectAll(isSelected),\r\n\t\t};\r\n\r\n\t\tlet mailto = `?subject=${encodeURIComponent(locale.printEmailSubject.replace('{number}', state.documentNumber))}\r\n &body=${encodeURIComponent(locale.printEmailBody.replace('{contact}', state.contact).replace('{number}', state.documentNumber))}`;\r\n\r\n\t\tconst linkFormatter = (cell: any, row: any) => {\r\n\t\t\tif (row.id) {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{row.typeId !== documentType.documenttype_offersent ? (\r\n\t\t\t\t\t\t\t this.toggleConfirmationModal(locale.delete, locale.confirmDelete, 'deleteOffer', row.id)}\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t''\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t\r\n\t\t\t\t);\r\n\t\t\t} else {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t};\r\n\t\tconst printTemplates =\r\n\t\t\tArray.isArray(state.printTemplates) &&\r\n\t\t\tstate.printTemplates.map((template: any) => {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t {\r\n\t\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\t\tselectedTemplate: {\r\n\t\t\t\t\t\t\t\t\tname: template.TemplateName,\r\n\t\t\t\t\t\t\t\t\tvalue: template.DocumentTemplateId,\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t{template.TemplateName}\r\n\t\t\t\t\t\r\n\t\t\t\t);\r\n\t\t\t});\r\n\t\tconst languages =\r\n\t\t\tArray.isArray(state.languages) &&\r\n\t\t\tstate.languages.map((language: any) => {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t {\r\n\t\t\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\t\t\tselectedLanguage: {\r\n\t\t\t\t\t\t\t\t\tname: language.Name,\r\n\t\t\t\t\t\t\t\t\tvalue: language.LanguageId,\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t{language.Name}\r\n\t\t\t\t\t\r\n\t\t\t\t);\r\n\t\t\t});\r\n\t\tconst dateSort = (a: any, b: any, order: string) => {\r\n\t\t\tif (order === 'asc') {\r\n\t\t\t\tif (new Date(a.dateAddedDate) < new Date(b.dateAddedDate)) return 1;\r\n\t\t\t\tif (new Date(a.dateAddedDate) > new Date(b.dateAddedDate)) return -1;\r\n\t\t\t} else if (order === 'desc') {\r\n\t\t\t\tif (new Date(a.dateAddedDate) > new Date(b.dateAddedDate)) return 1;\r\n\t\t\t\tif (new Date(a.dateAddedDate) < new Date(b.dateAddedDate)) return -1;\r\n\t\t\t}\r\n\t\t\treturn 0;\r\n\t\t};\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{this.state.loading ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{state.selectedTemplate.name !== '' ? state.selectedTemplate.name : locale.selectPrintTemplate}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{printTemplates}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{state.selectedLanguage.name !== '' ? state.selectedLanguage.name : locale.selectPrintLanguage}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{languages}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t this.printOffer(false)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.printOffer}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleConfirmationModal(locale.customerSendOffer, locale.confirmSend, 'sendDocument')}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.customerSendOffer}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t (window.location.href = `mailto:${this.state.email}${mailto}`)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.printEditSent}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleConfirmationModal(locale.printChangeToSend, locale.confirmChangeStatusToSend, 'changeToSent')}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.printChangeToSend}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.document}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.type}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.user}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.date}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t\t this.toggleConfirmationModal()}>\r\n\t\t\t\t\t this.toggleConfirmationModal()}>{this.state.confirmationModalTitle}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{this.state.confirmationModalMessage}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(CustomerDocumentPrint);\r\n","import React from 'react';\r\nimport { Row, Col, Input, Form, Label, FormGroup, Modal, ModalHeader, ModalBody } from 'reactstrap';\r\nimport 'react-datepicker/dist/react-datepicker.css';\r\nimport '../Configurator.css';\r\nimport './Admin.css';\r\nimport locale from '../../Locale';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../../store/Configurator';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport CustomerEditMenu from './CustomerEditMenu';\r\nimport Helper from '../../Helper';\r\nimport { BootstrapTable, TableHeaderColumn } from 'react-bootstrap-table';\r\nimport Button from '../Button';\r\nimport Loading from 'react-fullscreen-loading';\r\n\r\ninterface IProps extends RouteComponentProps {\r\n\tconfiguration?: any;\r\n\tdocument?: any;\r\n}\r\ninterface IState {\r\n\ttermsPaymentModal: boolean;\r\n\ttermSalesModal: boolean;\r\n\ttermsPaymentModalView: boolean;\r\n\ttermSalesModalView: boolean;\r\n\ttermsPaymentModalEdit: boolean;\r\n\ttermSalesModalEdit: boolean;\r\n\ttermPaymentText: any;\r\n\ttermPaymentValue: any;\r\n\ttermPaymentSortOrder: any;\r\n\ttermSalesText: any;\r\n\ttermSalesSortOrder: any;\r\n\ttermPaymentDesc: any;\r\n\ttermSalesDesc: any;\r\n\tsaving: boolean;\r\n\tconfigurationPrice: string;\r\n\ttermsPayments: any;\r\n\ttermsSales: any;\r\n\tconfirmationModal: boolean;\r\n\tconfirmationModalTitle: string;\r\n\tconfirmationModalMessage: string;\r\n\tconfirmationModalAction: string;\r\n\tselectedId: string;\r\n\taddEditError: boolean;\r\n\taddEditMessage: string;\r\n}\r\nclass CustomerTerms extends React.Component {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\ttermsPaymentModal: false,\r\n\t\t\ttermSalesModal: false,\r\n\t\t\ttermsPaymentModalView: false,\r\n\t\t\ttermSalesModalView: false,\r\n\t\t\ttermsPaymentModalEdit: false,\r\n\t\t\ttermSalesModalEdit: false,\r\n\t\t\ttermSalesText: { value: '', validate: '' },\r\n\t\t\ttermSalesSortOrder: { value: '', validate: '' },\r\n\t\t\ttermPaymentText: { value: '', validate: '' },\r\n\t\t\ttermPaymentValue: { value: '', validate: '' },\r\n\t\t\ttermPaymentSortOrder: { value: '', validate: '' },\r\n\t\t\ttermSalesDesc: { value: '', validate: '' },\r\n\t\t\ttermPaymentDesc: { value: '', validate: '' },\r\n\t\t\tsaving: false,\r\n\t\t\tconfigurationPrice: '',\r\n\t\t\ttermsSales: [],\r\n\t\t\ttermsPayments: [],\r\n\t\t\tconfirmationModal: false,\r\n\t\t\tconfirmationModalTitle: '',\r\n\t\t\tconfirmationModalMessage: '',\r\n\t\t\tconfirmationModalAction: '',\r\n\t\t\tselectedId: '',\r\n\t\t\taddEditError: false,\r\n\t\t\taddEditMessage: '',\r\n\t\t};\r\n\t}\r\n\tgetCalculation() {\r\n\t\tif (!this.props.document.documentId) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tlet url = '/document/' + this.props.document.documentId + '/terms?brandPartnerId=' + Helper.brandPartnerId();\r\n\t\tHelper.getData(url).then((data: any) => {\r\n\t\t\tif (data) {\r\n\t\t\t\tlet termsPaymentsList: any[] = [];\r\n\t\t\t\tlet termsSalesList: any[] = [];\r\n\t\t\t\tconst value = data;\r\n\t\t\t\tif (value.PaymentMethods) {\r\n\t\t\t\t\tvalue.PaymentMethods.forEach((method: any, i: number) => {\r\n\t\t\t\t\t\ttermsSalesList.push({\r\n\t\t\t\t\t\t\tid: method.TermId,\r\n\t\t\t\t\t\t\tname: method.Name,\r\n\t\t\t\t\t\t\tisCustom: method.IsCustom,\r\n\t\t\t\t\t\t\tdesc: method.Description,\r\n\t\t\t\t\t\t\tsortOrder: method.SortOrder,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\tif (value.PaymentTerms) {\r\n\t\t\t\t\tvalue.PaymentTerms.forEach((term: any, i: number) => {\r\n\t\t\t\t\t\ttermsPaymentsList.push({\r\n\t\t\t\t\t\t\tid: term.TermId,\r\n\t\t\t\t\t\t\tname: term.Name,\r\n\t\t\t\t\t\t\tisCustom: term.IsCustom,\r\n\t\t\t\t\t\t\tdesc: term.Description,\r\n\t\t\t\t\t\t\tvalue: term.Value,\r\n\t\t\t\t\t\t\tsortOrder: term.SortOrder,\r\n\t\t\t\t\t\t\tprice: term.Price,\r\n\t\t\t\t\t\t\ttableValue: term.Value.toLocaleString('de-DE', {\r\n\t\t\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\t\t\tcurrency: 'EUR', // always EUR because of replace\r\n\t\t\t\t\t\t\t}).replace('€', '%'),\r\n\t\t\t\t\t\t\ttablePrice: term.Price.toLocaleString('de-DE', {\r\n\t\t\t\t\t\t\t\tstyle: 'currency',\r\n\t\t\t\t\t\t\t\tcurrency: data.Currency,\r\n\t\t\t\t\t\t\t}),\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\tconst state: IState = this.state;\r\n\t\t\t\tstate.termsSales = termsSalesList;\r\n\t\t\t\tstate.termsPayments = termsPaymentsList;\r\n\t\t\t\tstate.termSalesModal = false;\r\n\t\t\t\tstate.termsPaymentModal = false;\r\n\t\t\t\tstate.termPaymentText = { value: '', validate: '' };\r\n\t\t\t\tstate.termPaymentDesc = { value: '', validate: '' };\r\n\t\t\t\tstate.termPaymentValue = { value: '', validate: '' };\r\n\t\t\t\tstate.termPaymentSortOrder = { value: '', validate: '' };\r\n\t\t\t\tstate.termSalesText = { value: '', validate: '' };\r\n\t\t\t\tstate.termSalesSortOrder = { value: '', validate: '' };\r\n\t\t\t\tstate.termSalesDesc = { value: '', validate: '' };\r\n\t\t\t\tstate.confirmationModal = false;\r\n\t\t\t\tstate.saving = false;\r\n\t\t\t\tstate.confirmationModal = false;\r\n\t\t\t\tstate.confirmationModalTitle = '';\r\n\t\t\t\tstate.confirmationModalMessage = '';\r\n\t\t\t\tstate.confirmationModalAction = '';\r\n\t\t\t\tstate.termsPaymentModalView = false;\r\n\t\t\t\tstate.termSalesModalView = false;\r\n\t\t\t\tstate.termsPaymentModalEdit = false;\r\n\t\t\t\tstate.termSalesModalEdit = false;\r\n\t\t\t\tstate.selectedId = '';\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tcomponentDidMount() {\r\n\t\tif (!Helper.userAdmin()) {\r\n\t\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/admin/configuration/monter');\r\n\t\t}\r\n\t\tthis.getCalculation();\r\n\t}\r\n\ttoggleTermPaymentModal() {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.termPaymentText.value = '';\r\n\t\tstate.termPaymentText.validate = '';\r\n\t\tstate.termPaymentValue.value = '';\r\n\t\tstate.termPaymentValue.validate = '';\r\n\t\tstate.termPaymentSortOrder.value = '';\r\n\t\tstate.termPaymentSortOrder.validate = '';\r\n\t\tstate.termsPaymentModal = !state.termsPaymentModal;\r\n\t\tthis.setState(state);\r\n\t}\r\n\ttoggleTermSalesModal() {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.termSalesText.value = '';\r\n\t\tstate.termSalesText.validate = '';\r\n\t\tstate.termSalesSortOrder.value = '';\r\n\t\tstate.termSalesSortOrder.validate = '';\r\n\t\tstate.termSalesModal = !state.termSalesModal;\r\n\t\tthis.setState(state);\r\n\t}\r\n\r\n\ttoggleTermPaymentModalView(id?: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.termsPaymentModalView = !state.termsPaymentModalView;\r\n\t\tstate.termPaymentText = { value: '', validate: '' };\r\n\t\tstate.termPaymentDesc = { value: '', validate: '' };\r\n\t\tstate.termPaymentValue = { value: '', validate: '' };\r\n\t\tstate.termPaymentSortOrder = { value: '', validate: '' };\r\n\t\tstate.termSalesText = { value: '', validate: '' };\r\n\t\tstate.termSalesSortOrder = { value: '', validate: '' };\r\n\t\tstate.termSalesDesc = { value: '', validate: '' };\r\n\t\tif (id && state.termsPayments && state.termsPayments.length > 0) {\r\n\t\t\tconst term = state.termsPayments.find((item: any) => item.id === id);\r\n\t\t\tstate.selectedId = id;\r\n\t\t\tstate.termPaymentText.value = term.name;\r\n\t\t\tstate.termPaymentDesc.value = term.desc;\r\n\t\t\tstate.termPaymentValue.value = term.value;\r\n\t\t\tstate.termPaymentSortOrder.value = term.sortOrder;\r\n\t\t}\r\n\t\tthis.setState(state);\r\n\t}\r\n\ttoggleTermSalesModalView(id?: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.termSalesModalView = !state.termSalesModalView;\r\n\t\tstate.termPaymentText = { value: '', validate: '' };\r\n\t\tstate.termPaymentDesc = { value: '', validate: '' };\r\n\t\tstate.termPaymentValue = { value: '', validate: '' };\r\n\t\tstate.termPaymentSortOrder = { value: '', validate: '' };\r\n\t\tstate.termSalesText = { value: '', validate: '' };\r\n\t\tstate.termSalesSortOrder = { value: '', validate: '' };\r\n\t\tstate.termSalesDesc = { value: '', validate: '' };\r\n\t\tif (id && state.termsSales && state.termsSales.length > 0) {\r\n\t\t\tconst term = state.termsSales.find((item: any) => item.id === id);\r\n\t\t\tstate.selectedId = id;\r\n\t\t\tstate.termSalesText.value = term.name;\r\n\t\t\tstate.termSalesSortOrder.value = term.sortOrder;\r\n\t\t\tstate.termSalesDesc.value = term.desc;\r\n\t\t}\r\n\t\tthis.setState(state);\r\n\t}\r\n\r\n\ttoggleTermPaymentModalEdit(id?: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.termsPaymentModalEdit = !state.termsPaymentModalEdit;\r\n\t\tstate.confirmationModalAction = 'updatePaymentTerm';\r\n\t\tstate.termPaymentText = { value: '', validate: '' };\r\n\t\tstate.termPaymentDesc = { value: '', validate: '' };\r\n\t\tstate.termPaymentValue = { value: '', validate: '' };\r\n\t\tstate.termPaymentSortOrder = { value: '', validate: '' };\r\n\t\tstate.termSalesText = { value: '', validate: '' };\r\n\t\tstate.termSalesSortOrder = { value: '', validate: '' };\r\n\t\tstate.termSalesDesc = { value: '', validate: '' };\r\n\t\tif (id && state.termsPayments && state.termsPayments.length > 0) {\r\n\t\t\tconst term = state.termsPayments.find((item: any) => item.id === id);\r\n\t\t\tstate.selectedId = id;\r\n\t\t\tstate.termPaymentText.value = term.name;\r\n\t\t\tstate.termPaymentDesc.value = term.desc;\r\n\t\t\tstate.termPaymentValue.value = term.value;\r\n\t\t\tstate.termPaymentSortOrder.value = term.sortOrder;\r\n\t\t}\r\n\t\tthis.setState(state);\r\n\t}\r\n\r\n\ttoggleTermSalesModalEdit(id?: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.termSalesModalEdit = !state.termSalesModalEdit;\r\n\t\tstate.confirmationModalAction = 'updateSalesTerm';\r\n\t\tstate.termPaymentText = { value: '', validate: '' };\r\n\t\tstate.termPaymentDesc = { value: '', validate: '' };\r\n\t\tstate.termPaymentValue = { value: '', validate: '' };\r\n\t\tstate.termPaymentSortOrder = { value: '', validate: '' };\r\n\t\tstate.termSalesText = { value: '', validate: '' };\r\n\t\tstate.termSalesSortOrder = { value: '', validate: '' };\r\n\t\tstate.termSalesDesc = { value: '', validate: '' };\r\n\t\tif (id && state.termsSales && state.termsSales.length > 0) {\r\n\t\t\tconst term = state.termsSales.find((item: any) => item.id === id);\r\n\t\t\tstate.selectedId = id;\r\n\t\t\tstate.termSalesText.value = term.name;\r\n\t\t\tstate.termSalesSortOrder.value = term.sortOrder;\r\n\t\t\tstate.termSalesDesc.value = term.desc;\r\n\t\t}\r\n\t\tthis.setState(state);\r\n\t}\r\n\r\n\ttoggleConfirmationModal(title?: string, message?: string, action?: string, id?: string) {\r\n\t\tconst state: IState = this.state;\r\n\t\tstate.confirmationModal = !state.confirmationModal;\r\n\t\tif (title && message && action) {\r\n\t\t\tstate.confirmationModalTitle = title;\r\n\t\t\tstate.confirmationModalMessage = message;\r\n\t\t\tstate.confirmationModalAction = action;\r\n\t\t}\r\n\t\tif (id) {\r\n\t\t\tstate.selectedId = id;\r\n\t\t}\r\n\t\tthis.setState(state);\r\n\t}\r\n\r\n\thandleChange(e: React.ChangeEvent) {\r\n\t\tconst state: any = this.state;\r\n\t\tconst { target } = e;\r\n\t\tconst value = target.value;\r\n\t\tstate[target.name].value = value;\r\n\t\tstate.saved = false;\r\n\t\tthis.setState(state);\r\n\t}\r\n\tvalidateCostValue(e: React.ChangeEvent) {\r\n\t\tconst state: any = this.state;\r\n\t\tlet { target } = e;\r\n\t\tlet validate = '';\r\n\t\tlet value = e.target.value;\r\n\t\tvar pattern = /^-?\\d{1,6}([,.]\\d{1,2})?$/;\r\n\t\tif (pattern.test(value)) {\r\n\t\t\tvalidate = 'has-success';\r\n\t\t\tstate.errorNumberInput = false;\r\n\t\t} else {\r\n\t\t\tvalidate = 'has-danger';\r\n\t\t\tstate.errorNumberMessage = locale.inputNumber + ' (' + locale.twoDecimalPlaces + ')';\r\n\t\t\tstate.errorNumberInput = true;\r\n\t\t}\r\n\t\tstate[target.name].validate = validate;\r\n\t\tthis.setState(state);\r\n\t}\r\n\tvalidateSortOrder(e: React.ChangeEvent) {\r\n\t\tconst state: any = this.state;\r\n\t\tlet { target } = e;\r\n\t\tlet validate = '';\r\n\t\tlet value = e.target.value;\r\n\t\tvar pattern = /^\\+?(0|[1-9]\\d*)$/;\r\n\t\tif (pattern.test(value)) {\r\n\t\t\tvalidate = 'has-success';\r\n\t\t\tstate.errorNumberInput = false;\r\n\t\t} else {\r\n\t\t\tvalidate = 'has-danger';\r\n\t\t\tstate.errorNumberMessage = locale.inputNumber + ' (' + locale.twoDecimalPlaces + ')';\r\n\t\t\tstate.errorNumberInput = true;\r\n\t\t}\r\n\t\tstate[target.name].validate = validate;\r\n\t\tthis.setState(state);\r\n\t}\r\n\tconfirmationAction(action: string) {\r\n\t\tif (!this.state.selectedId) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.setState({ saving: true });\r\n\t\tconst state: IState = this.state;\r\n\t\tif (action === 'deleteSalesTerm') {\r\n\t\t\tconst url =\r\n\t\t\t\t'/document/' + this.props.document.documentId + '/deliveryTerm/' + this.state.selectedId + '?brandPartnerId=' + Helper.brandPartnerId();\r\n\t\t\tHelper.deleteData(url).then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\t}\r\n\t\t\t\tthis.getCalculation();\r\n\t\t\t});\r\n\t\t} else if (action === 'deletePaymentTerm') {\r\n\t\t\tconst url =\r\n\t\t\t\t'/document/' + this.props.document.documentId + '/paymentTerm/' + this.state.selectedId + '?brandPartnerId=' + Helper.brandPartnerId();\r\n\t\t\tHelper.deleteData(url).then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\t}\r\n\t\t\t\tthis.getCalculation();\r\n\t\t\t});\r\n\t\t} else if (action === 'updateSalesTerm') {\r\n\t\t\tif (!state.termSalesText.value || !state.termSalesDesc.value || state.termSalesSortOrder.value === '') {\r\n\t\t\t\tstate.addEditMessage = locale.missingFields;\r\n\t\t\t\tstate.addEditError = true;\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tconst url = '/document/' + this.props.document.documentId + '/deliveryTerm/' + this.state.selectedId;\r\n\t\t\tconst body = {\r\n\t\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\t\tName: this.state.termSalesText.value,\r\n\t\t\t\tDescription: this.state.termSalesDesc.value,\r\n\t\t\t\tSortOrder: this.state.termSalesSortOrder.value,\r\n\t\t\t};\r\n\t\t\tHelper.putData(url, JSON.stringify(body)).then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\t}\r\n\t\t\t\tthis.getCalculation();\r\n\t\t\t});\r\n\t\t} else if (action === 'updatePaymentTerm') {\r\n\t\t\tif (\r\n\t\t\t\t!state.termPaymentText.value ||\r\n\t\t\t\t!state.termPaymentDesc.value ||\r\n\t\t\t\tstate.termPaymentValue.value === '' ||\r\n\t\t\t\tstate.termPaymentSortOrder.value === ''\r\n\t\t\t) {\r\n\t\t\t\tstate.addEditMessage = locale.missingFields;\r\n\t\t\t\tstate.addEditError = true;\r\n\t\t\t\tthis.setState(state);\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tconst url = '/document/' + this.props.document.documentId + '/paymentTerm/' + this.state.selectedId;\r\n\t\t\tconst body = {\r\n\t\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\t\tName: this.state.termPaymentText.value,\r\n\t\t\t\tDescription: this.state.termPaymentDesc.value,\r\n\t\t\t\tValue: this.state.termPaymentValue.value.toString().replace(',', '.'),\r\n\t\t\t\tSortOrder: this.state.termPaymentSortOrder.value,\r\n\t\t\t};\r\n\t\t\tHelper.putData(url, JSON.stringify(body)).then((data) => {\r\n\t\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t\t}\r\n\t\t\t\tthis.getCalculation();\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\tremoveTermPayment(id: string) {\r\n\t\tif (id) {\r\n\t\t\tthis.toggleConfirmationModal(locale.delete, locale.confirmDelete, 'deletePaymentTerm', id);\r\n\t\t}\r\n\t}\r\n\tremoveTermSales(id: string) {\r\n\t\tif (id) {\r\n\t\t\tthis.toggleConfirmationModal(locale.delete, locale.confirmDelete, 'deleteSalesTerm', id);\r\n\t\t}\r\n\t}\r\n\teditTermPayment(id: string) {\r\n\t\tif (id) {\r\n\t\t\tthis.toggleTermPaymentModalEdit(id);\r\n\t\t}\r\n\t}\r\n\teditTermSales(id: string) {\r\n\t\tif (id) {\r\n\t\t\tthis.toggleTermSalesModalEdit(id);\r\n\t\t}\r\n\t}\r\n\tviewTermPayment(id: string) {\r\n\t\tif (id) {\r\n\t\t\tthis.toggleTermPaymentModalView(id);\r\n\t\t}\r\n\t}\r\n\tviewTermSales(id: string) {\r\n\t\tif (id) {\r\n\t\t\tthis.toggleTermSalesModalView(id);\r\n\t\t}\r\n\t}\r\n\tsaveTermPayment() {\r\n\t\tthis.setState({ saving: true });\r\n\t\tconst state: IState = this.state;\r\n\t\tif (!state.termPaymentText.value || !state.termPaymentDesc.value || !state.termPaymentValue.value || !state.termPaymentSortOrder.value) {\r\n\t\t\tstate.addEditMessage = locale.missingFields;\r\n\t\t\tstate.addEditError = true;\r\n\t\t\tthis.setState(state);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst url = '/document/' + this.props.document.documentId + '/paymentTerm';\r\n\t\tconst body = {\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tName: this.state.termPaymentText.value,\r\n\t\t\tDescription: this.state.termPaymentDesc.value,\r\n\t\t\tValue: this.state.termPaymentValue.value.toString().replace(',', '.'),\r\n\t\t\tSortOrder: this.state.termPaymentSortOrder.value,\r\n\t\t};\r\n\t\tHelper.postData(url, JSON.stringify(body)).then((data) => {\r\n\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t}\r\n\t\t\tthis.getCalculation();\r\n\t\t});\r\n\t}\r\n\tsaveTermSales() {\r\n\t\tthis.setState({ saving: true });\r\n\t\tconst state: IState = this.state;\r\n\t\tif (!state.termSalesText.value || !state.termSalesDesc.value || !state.termSalesSortOrder.value) {\r\n\t\t\tstate.addEditMessage = locale.missingFields;\r\n\t\t\tstate.addEditError = true;\r\n\t\t\tthis.setState(state);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst url = '/document/' + this.props.document.documentId + '/deliveryTerm';\r\n\t\tconst body = {\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tName: this.state.termSalesText.value,\r\n\t\t\tDescription: this.state.termSalesDesc.value,\r\n\t\t\tSortOrder: this.state.termSalesSortOrder.value,\r\n\t\t};\r\n\t\tHelper.postData(url, JSON.stringify(body)).then((data) => {\r\n\t\t\tif (data.Message && data.Message.length > 0) {\r\n\t\t\t\t(this.props as any).setError(locale.exception, data.Message);\r\n\t\t\t}\r\n\t\t\tthis.getCalculation();\r\n\t\t});\r\n\t}\r\n\trender() {\r\n\t\tconst {\r\n\t\t\ttermPaymentText,\r\n\t\t\ttermSalesText,\r\n\t\t\ttermSalesSortOrder,\r\n\t\t\ttermPaymentDesc,\r\n\t\t\ttermPaymentValue,\r\n\t\t\ttermPaymentSortOrder,\r\n\t\t\ttermSalesDesc,\r\n\t\t\ttermsPaymentModal,\r\n\t\t\ttermSalesModal,\r\n\t\t\ttermSalesModalEdit,\r\n\t\t\ttermSalesModalView,\r\n\t\t\ttermsPaymentModalEdit,\r\n\t\t\ttermsPaymentModalView,\r\n\t\t\tconfirmationModal,\r\n\t\t\tconfirmationModalAction,\r\n\t\t\tconfirmationModalMessage,\r\n\t\t\tconfirmationModalTitle,\r\n\t\t\taddEditError,\r\n\t\t\taddEditMessage,\r\n\t\t} = this.state;\r\n\r\n\t\tconst disabled1 =\r\n\t\t\ttermPaymentText.value === '' ||\r\n\t\t\ttermPaymentDesc.value === '' ||\r\n\t\t\ttermPaymentValue.value === '' ||\r\n\t\t\ttermPaymentValue.validate === 'has-danger' ||\r\n\t\t\ttermPaymentSortOrder.value === '' ||\r\n\t\t\ttermPaymentSortOrder.validate === 'has-danger';\r\n\r\n\t\tconst disabled2 =\r\n\t\t\ttermSalesText.value === '' || termSalesDesc.value === '' || termSalesSortOrder.value === '' || termSalesSortOrder.validate === 'has-danger';\r\n\r\n\t\tconst disableEditDocument = this.props.document && this.props.document.disableEdit;\r\n\t\tconst addEditFailedVisible = addEditError ? 'block' : 'none';\r\n\t\tconst options = {\r\n\t\t\tpageSize: 5,\r\n\t\t\tnoDataText: locale.noResults,\r\n\t\t};\r\n\t\tconst cellDeletePaymentTerm = (cell: any, row: any) => {\r\n\t\t\tif (!cell || disableEditDocument) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t this.removeTermPayment(cell)}\r\n\t\t\t\t\tcolor='none'\r\n\t\t\t\t\tdisabled={disableEditDocument}\r\n\t\t\t\t\tclassName='close float-left cell-button'\r\n\t\t\t\t\taria-label='Close'\r\n\t\t\t\t>\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\t\tconst cellDeleteSalesTerm = (cell: any, row: any) => {\r\n\t\t\tif (!cell || disableEditDocument) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t this.removeTermSales(cell)}\r\n\t\t\t\t\tcolor='none'\r\n\t\t\t\t\tdisabled={disableEditDocument}\r\n\t\t\t\t\tclassName='close float-left cell-button'\r\n\t\t\t\t\taria-label='Close'\r\n\t\t\t\t>\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\t\tconst cellEditPaymentTerm = (cell: any, row: any) => {\r\n\t\t\tif (!cell || disableEditDocument) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\t\tconst cellEditSalesTerm = (cell: any, row: any) => {\r\n\t\t\tif (!cell || disableEditDocument) {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t};\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{this.state.saving ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.name}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.discount}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.desc}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.amount}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.sortOrder}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleTermPaymentModal()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={disableEditDocument}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={'button btn-secondary mt-3 mb-3'}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.add}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleConfirmationModal()}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleConfirmationModal()}>{confirmationModalTitle}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{confirmationModalMessage}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.confirmationAction(confirmationModalAction)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.confirm}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleConfirmationModal()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.cancel}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleTermPaymentModal()}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleTermPaymentModal()}>{locale.addTermPayment}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.validateCostValue(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.validateSortOrder(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.saveTermPayment()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.save}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{addEditMessage}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleTermPaymentModalEdit()}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleTermPaymentModalEdit()}>{locale.editTermPayment}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.validateCostValue(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.validateSortOrder(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.confirmationAction(confirmationModalAction)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.save}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleTermPaymentModalEdit()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.cancel}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{addEditMessage}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleTermPaymentModalView()}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleTermPaymentModalView()}>{locale.viewTermPayment}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.name}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.desc}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.sortOrder}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleTermSalesModal()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisabled={disableEditDocument}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclassName={'button btn-secondary mt-3 mb-3'}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.add}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleTermSalesModal()}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleTermSalesModal()}>{locale.addTermSales}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.validateSortOrder(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.saveTermSales()}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.save}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{addEditMessage}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleTermSalesModalEdit()}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleTermSalesModalEdit()}>{locale.editTermSales}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.validateSortOrder(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.confirmationAction(confirmationModalAction)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.save}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{addEditMessage}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleTermSalesModalView()}>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.toggleTermSalesModalView()}>{locale.viewTermSales}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(CustomerTerms);\r\n","import React from 'react';\r\nimport { Row, Col, Input, Form, Label, FormGroup } from 'reactstrap';\r\nimport locale from '../../Locale';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../../store/Configurator';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport Helper from '../../Helper';\r\nimport CustomerEditMenu from './CustomerEditMenu';\r\nimport './Admin.css';\r\nimport Button from '../Button';\r\nimport Loading from 'react-fullscreen-loading';\r\n\r\ninterface IProps extends RouteComponentProps {\r\n\tdocument?: any;\r\n}\r\ninterface IState {\r\n\tAddressing: { value: string; validate: string };\r\n\tAddressingD: { value: string; validate: string };\r\n\tAddressingR: { value: string; validate: string };\r\n\tFirstName: { value: string; validate: string };\r\n\tFirstNameD: { value: string; validate: string };\r\n\tFirstNameR: { value: string; validate: string };\r\n\tLastName: { value: string; validate: string };\r\n\tLastNameD: { value: string; validate: string };\r\n\tLastNameR: { value: string; validate: string };\r\n\tEmail: { value: string; validate: string };\r\n\tTelephone: { value: string; validate: string };\r\n\tTelephoneD: { value: string; validate: string };\r\n\tAddress: { value: string; validate: string };\r\n\tAddressD: { value: string; validate: string };\r\n\tAddressR: { value: string; validate: string };\r\n\tCity: { value: string; validate: string };\r\n\tCityD: { value: string; validate: string };\r\n\tCityR: { value: string; validate: string };\r\n\tZip: { value: string; validate: string };\r\n\tZipD: { value: string; validate: string };\r\n\tZipR: { value: string; validate: string };\r\n\tCountryId: string;\r\n\tCountryIdD: string;\r\n\tCountryIdR: string;\r\n\tCountries: any[];\r\n\tCompanyName: { value: string; validate: string };\r\n\tCompanyNameD: { value: string; validate: string };\r\n\tCompanyNameR: { value: string; validate: string };\r\n\tCompanyRegistration: { value: string; validate: string };\r\n\tCompanyRegistrationD: { value: string; validate: string };\r\n\tCompanyRegistrationR: { value: string; validate: string };\r\n\tCompanyVAT: { value: string; validate: string };\r\n\tCompanyVATD: { value: string; validate: string };\r\n\tCompanyVATR: { value: string; validate: string };\r\n\tDeliveryAddress: boolean;\r\n\tReceiptAddress: boolean;\r\n\tEnabled: boolean;\r\n\tloading: boolean;\r\n}\r\nclass CustomerContact extends React.Component {\r\n\tprivate timeout: any;\r\n\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.timeout = 0;\r\n\t\tthis.state = {\r\n\t\t\tAddressing: { value: '', validate: '' },\r\n\t\t\tAddressingD: { value: '', validate: '' },\r\n\t\t\tAddressingR: { value: '', validate: '' },\r\n\t\t\tFirstName: { value: '', validate: '' },\r\n\t\t\tFirstNameD: { value: '', validate: '' },\r\n\t\t\tFirstNameR: { value: '', validate: '' },\r\n\t\t\tLastName: { value: '', validate: '' },\r\n\t\t\tLastNameD: { value: '', validate: '' },\r\n\t\t\tLastNameR: { value: '', validate: '' },\r\n\t\t\tEmail: { value: '', validate: '' },\r\n\t\t\tTelephone: { value: '', validate: '' },\r\n\t\t\tTelephoneD: { value: '', validate: '' },\r\n\t\t\tAddress: { value: '', validate: '' },\r\n\t\t\tAddressD: { value: '', validate: '' },\r\n\t\t\tAddressR: { value: '', validate: '' },\r\n\t\t\tCity: { value: '', validate: '' },\r\n\t\t\tCityD: { value: '', validate: '' },\r\n\t\t\tCityR: { value: '', validate: '' },\r\n\t\t\tZip: { value: '', validate: '' },\r\n\t\t\tZipD: { value: '', validate: '' },\r\n\t\t\tZipR: { value: '', validate: '' },\r\n\t\t\tCountryId: '',\r\n\t\t\tCountryIdD: '',\r\n\t\t\tCountryIdR: '',\r\n\t\t\tCountries: [],\r\n\t\t\tCompanyName: { value: '', validate: '' },\r\n\t\t\tCompanyNameD: { value: '', validate: '' },\r\n\t\t\tCompanyNameR: { value: '', validate: '' },\r\n\t\t\tCompanyRegistration: { value: '', validate: '' },\r\n\t\t\tCompanyRegistrationD: { value: '', validate: '' },\r\n\t\t\tCompanyRegistrationR: { value: '', validate: '' },\r\n\t\t\tCompanyVAT: { value: '', validate: '' },\r\n\t\t\tCompanyVATD: { value: '', validate: '' },\r\n\t\t\tCompanyVATR: { value: '', validate: '' },\r\n\t\t\tDeliveryAddress: false,\r\n\t\t\tReceiptAddress: false,\r\n\t\t\tEnabled: false,\r\n\t\t\tloading: false,\r\n\t\t};\r\n\t}\r\n\r\n\tgetContactData() {\r\n\t\tconst url = '/document/' + this.props.document.documentId + '/contact';\r\n\r\n\t\tHelper.getData(url)\r\n\t\t\t.then((data) => {\r\n\t\t\t\tconst state: IState = this.state;\r\n\t\t\t\tif (data) {\r\n\t\t\t\t\tif (data.ContactData) {\r\n\t\t\t\t\t\tstate.Addressing.value = data.ContactData.Addressing || '';\r\n\t\t\t\t\t\tstate.FirstName.value = data.ContactData.FirstName || '';\r\n\t\t\t\t\t\tstate.LastName.value = data.ContactData.LastName || '';\r\n\t\t\t\t\t\tstate.Email.value = data.ContactData.Email || '';\r\n\t\t\t\t\t\tstate.Telephone.value = data.ContactData.Telephone || '';\r\n\t\t\t\t\t\tstate.Address.value = data.ContactData.Address || '';\r\n\t\t\t\t\t\tstate.City.value = data.ContactData.City || '';\r\n\t\t\t\t\t\tstate.Zip.value = data.ContactData.Zip || '';\r\n\t\t\t\t\t\tstate.CountryId = data.ContactData.CountryId;\r\n\t\t\t\t\t\tstate.CompanyName.value = data.ContactData.CompanyName || '';\r\n\t\t\t\t\t\tstate.CompanyRegistration.value = data.ContactData.CompanyRegistration || '';\r\n\t\t\t\t\t\tstate.CompanyVAT.value = data.ContactData.CompanyVAT || '';\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (data.DeliveryAddress) {\r\n\t\t\t\t\t\tstate.DeliveryAddress = data.DeliveryAddress;\r\n\t\t\t\t\t\tif (data.DeliveryAddress === true) {\r\n\t\t\t\t\t\t\tstate.AddressingD.value = data.DeliveryData.Addressing || '';\r\n\t\t\t\t\t\t\tstate.FirstNameD.value = data.DeliveryData.FirstName || '';\r\n\t\t\t\t\t\t\tstate.LastNameD.value = data.DeliveryData.LastName || '';\r\n\t\t\t\t\t\t\tstate.TelephoneD.value = data.DeliveryData.Telephone || '';\r\n\t\t\t\t\t\t\tstate.AddressD.value = data.DeliveryData.Address || '';\r\n\t\t\t\t\t\t\tstate.CityD.value = data.DeliveryData.City || '';\r\n\t\t\t\t\t\t\tstate.ZipD.value = data.DeliveryData.Zip || '';\r\n\t\t\t\t\t\t\tstate.CountryIdD = data.DeliveryData.CountryId;\r\n\t\t\t\t\t\t\tstate.CompanyNameD.value = data.DeliveryData.CompanyName || '';\r\n\t\t\t\t\t\t\tstate.CompanyRegistrationD.value = data.DeliveryData.CompanyRegistration || '';\r\n\t\t\t\t\t\t\tstate.CompanyVATD.value = data.DeliveryData.CompanyVAT || '';\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (data.ReceiptAddress) {\r\n\t\t\t\t\t\tstate.ReceiptAddress = data.ReceiptAddress;\r\n\t\t\t\t\t\tif (data.ReceiptAddress === true) {\r\n\t\t\t\t\t\t\tstate.AddressingR.value = data.ReceiptData.Addressing || '';\r\n\t\t\t\t\t\t\tstate.FirstNameR.value = data.ReceiptData.FirstName || '';\r\n\t\t\t\t\t\t\tstate.LastNameR.value = data.ReceiptData.LastName || '';\r\n\t\t\t\t\t\t\tstate.AddressR.value = data.ReceiptData.Address || '';\r\n\t\t\t\t\t\t\tstate.CityR.value = data.ReceiptData.City || '';\r\n\t\t\t\t\t\t\tstate.ZipR.value = data.ReceiptData.Zip || '';\r\n\t\t\t\t\t\t\tstate.CountryIdR = data.ReceiptData.CountryId;\r\n\t\t\t\t\t\t\tstate.CompanyNameR.value = data.ReceiptData.CompanyName || '';\r\n\t\t\t\t\t\t\tstate.CompanyRegistrationR.value = data.ReceiptData.CompanyRegistration || '';\r\n\t\t\t\t\t\t\tstate.CompanyVATR.value = data.ReceiptData.CompanyVAT || '';\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tthis.setState(state);\r\n\t\t\t\t}\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\r\n\tgetCountries() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tHelper.getData('/selection/countrylist')\r\n\t\t\t.then((data: any) => {\r\n\t\t\t\tlet countriesFromApi = data\r\n\t\t\t\t\t.map((country: any) => {\r\n\t\t\t\t\t\treturn { value: country.CountryId, display: Helper.getLocalizedName(country.Name) };\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.sort((a: any, b: any) => a.display.localeCompare(b.display));\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\tCountries: [\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tvalue: '',\r\n\t\t\t\t\t\t\tdisplay: locale.selectCountry,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t].concat(countriesFromApi),\r\n\t\t\t\t});\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t})\r\n\t\t\t.catch((error) => {\r\n\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t});\r\n\t}\r\n\r\n\tcomponentDidMount() {\r\n\t\tif (!Helper.userAdmin()) {\r\n\t\t\tthis.props.history.push(process.env.REACT_APP_ROOT_PATH + '/admin/document/configurations');\r\n\t\t}\r\n\t\tthis.setState({ loading: true });\r\n\t\tthis.getContactData();\r\n\t\tthis.getCountries();\r\n\t}\r\n\r\n\thandleChange(e: any) {\r\n\t\tconst state: any = this.state;\r\n\t\tconst { target } = e;\r\n\t\tif (target.type === 'checkbox') {\r\n\t\t\tstate[target.name] = target.checked;\r\n\t\t} else {\r\n\t\t\tstate[target.name].value = target.value;\r\n\t\t}\r\n\t\tstate.Enabled = true;\r\n\t\tthis.setState(state);\r\n\t}\r\n\tvalidateName(e: any) {\r\n\t\tlet state = this.state;\r\n\t\tlet { validate } = state.FirstName;\r\n\t\tlet value = e.target.value;\r\n\t\tif (this.timeout) clearTimeout(this.timeout);\r\n\t\tthis.timeout = setTimeout(() => {\r\n\t\t\tif (value.length > 0) {\r\n\t\t\t\tvalidate = 'has-success';\r\n\t\t\t} else {\r\n\t\t\t\tvalidate = 'has-danger';\r\n\t\t\t}\r\n\t\t\tstate.FirstName.validate = validate;\r\n\t\t\tthis.setState(state);\r\n\t\t}, 700);\r\n\t}\r\n\tvalidateEmail(e: any) {\r\n\t\tlet state = this.state;\r\n\t\tconst emailRex =\r\n\t\t\t/^(([^<>()[\\]\\\\.,;:\\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\t\tlet { validate } = state.Email;\r\n\t\tlet value = e.target.value;\r\n\t\tif (this.timeout) clearTimeout(this.timeout);\r\n\t\tthis.timeout = setTimeout(() => {\r\n\t\t\tif (emailRex.test(value)) {\r\n\t\t\t\tvalidate = 'has-success';\r\n\t\t\t} else {\r\n\t\t\t\tvalidate = 'has-danger';\r\n\t\t\t}\r\n\t\t\tstate.Email.validate = validate;\r\n\t\t\tthis.setState(state);\r\n\t\t}, 700);\r\n\t}\r\n\tsaveContact() {\r\n\t\tthis.setState({ loading: true });\r\n\t\tconst state: IState = this.state;\r\n\t\tconst url = '/document/' + this.props.document.documentId + '/contact';\r\n\t\tconst ContactData = {\r\n\t\t\tAddressing: state['Addressing'].value,\r\n\t\t\tFirstName: state['FirstName'].value,\r\n\t\t\tLastName: state['LastName'].value,\r\n\t\t\tEmail: state['Email'].value,\r\n\t\t\tTelephone: state['Telephone'].value,\r\n\t\t\tAddress: state['Address'].value,\r\n\t\t\tCity: state['City'].value,\r\n\t\t\tZip: state['Zip'].value,\r\n\t\t\tCountryId: state['CountryId'],\r\n\t\t\tCompanyName: state['CompanyName'].value,\r\n\t\t\tCompanyRegistration: state['CompanyRegistration'].value,\r\n\t\t\tCompanyVAT: state['CompanyVAT'].value,\r\n\t\t};\r\n\t\tlet DeliveryData;\r\n\t\tif (state['DeliveryAddress']) {\r\n\t\t\tDeliveryData = {\r\n\t\t\t\tAddressing: state['AddressingD'].value,\r\n\t\t\t\tFirstName: state['FirstNameD'].value,\r\n\t\t\t\tLastName: state['LastNameD'].value,\r\n\t\t\t\tTelephone: state['TelephoneD'].value,\r\n\t\t\t\tAddress: state['AddressD'].value,\r\n\t\t\t\tCity: state['CityD'].value,\r\n\t\t\t\tZip: state['ZipD'].value,\r\n\t\t\t\tCountryId: state['CountryIdD'],\r\n\t\t\t\tCompanyName: state['CompanyNameD'].value,\r\n\t\t\t\tCompanyRegistration: state['CompanyRegistrationD'].value,\r\n\t\t\t\tCompanyVAT: state['CompanyVATD'].value,\r\n\t\t\t};\r\n\t\t} else {\r\n\t\t\tDeliveryData = null;\r\n\t\t}\r\n\t\tlet ReceiptData;\r\n\t\tif (state['ReceiptAddress']) {\r\n\t\t\tReceiptData = {\r\n\t\t\t\tAddressing: state['AddressingR'].value,\r\n\t\t\t\tFirstName: state['FirstNameR'].value,\r\n\t\t\t\tLastName: state['LastNameR'].value,\r\n\t\t\t\tAddress: state['AddressR'].value,\r\n\t\t\t\tCity: state['CityR'].value,\r\n\t\t\t\tZip: state['ZipR'].value,\r\n\t\t\t\tCountryId: state['CountryIdR'],\r\n\t\t\t\tCompanyName: state['CompanyNameR'].value,\r\n\t\t\t\tCompanyRegistration: state['CompanyRegistrationR'].value,\r\n\t\t\t\tCompanyVAT: state['CompanyVATR'].value,\r\n\t\t\t};\r\n\t\t} else {\r\n\t\t\tReceiptData = null;\r\n\t\t}\r\n\t\tconst body = {\r\n\t\t\tBrandPartnerId: Helper.brandPartnerId(),\r\n\t\t\tContactData: ContactData,\r\n\t\t\tDeliveryAddress: state['DeliveryAddress'],\r\n\t\t\tReceiptAddress: state['ReceiptAddress'],\r\n\t\t\tDeliveryData: DeliveryData,\r\n\t\t\tReceiptData: ReceiptData,\r\n\t\t};\r\n\r\n\t\tHelper.postData(url, JSON.stringify(body)).then((saveData) => {\r\n\t\t\tif (saveData) {\r\n\t\t\t\tif (saveData.Message && saveData.Message.length > 0) {\r\n\t\t\t\t\t(this.props as any).setError(locale.save, saveData.Message);\r\n\t\t\t\t\tthis.setState({ loading: false });\r\n\t\t\t\t} else {\r\n\t\t\t\t\tthis.setState(() => this.getContactData());\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\trender() {\r\n\t\tconst {\r\n\t\t\tEmail,\r\n\t\t\tAddressing,\r\n\t\t\tAddressingD,\r\n\t\t\tAddressingR,\r\n\t\t\tFirstName,\r\n\t\t\tFirstNameD,\r\n\t\t\tFirstNameR,\r\n\t\t\tLastName,\r\n\t\t\tLastNameD,\r\n\t\t\tLastNameR,\r\n\t\t\tAddress,\r\n\t\t\tAddressD,\r\n\t\t\tAddressR,\r\n\t\t\tCity,\r\n\t\t\tCityD,\r\n\t\t\tCityR,\r\n\t\t\tZip,\r\n\t\t\tZipD,\r\n\t\t\tZipR,\r\n\t\t\tTelephone,\r\n\t\t\tTelephoneD,\r\n\t\t\tCompanyName,\r\n\t\t\tCompanyNameD,\r\n\t\t\tCompanyNameR,\r\n\t\t\tCompanyRegistration,\r\n\t\t\tCompanyRegistrationD,\r\n\t\t\tCompanyRegistrationR,\r\n\t\t\tCompanyVAT,\r\n\t\t\tCompanyVATD,\r\n\t\t\tCompanyVATR,\r\n\t\t\tEnabled,\r\n\t\t} = this.state;\r\n\t\tconst buttonDisabled =\r\n\t\t\t!Enabled ||\r\n\t\t\tFirstName.value === '' ||\r\n\t\t\tLastName.value === '' ||\r\n\t\t\tAddress.value === '' ||\r\n\t\t\tCity.value === '' ||\r\n\t\t\tZip.value === '' ||\r\n\t\t\tthis.state.CountryId === '' ||\r\n\t\t\tthis.state.CountryId === '00000000-0000-0000-0000-000000000000' ||\r\n\t\t\tTelephone.value === '' ||\r\n\t\t\tEmail.value === '' ||\r\n\t\t\tEmail.validate === 'has-danger' ||\r\n\t\t\t(this.state.DeliveryAddress &&\r\n\t\t\t\t(FirstNameD.value === '' ||\r\n\t\t\t\t\tLastNameD.value === '' ||\r\n\t\t\t\t\tAddressD.value === '' ||\r\n\t\t\t\t\tCityD.value === '' ||\r\n\t\t\t\t\tZipD.value === '' ||\r\n\t\t\t\t\tthis.state.CountryIdD === '' ||\r\n\t\t\t\t\tthis.state.CountryIdD === '00000000-0000-0000-0000-000000000000' ||\r\n\t\t\t\t\tTelephoneD.value === '')) ||\r\n\t\t\t(this.state.ReceiptAddress &&\r\n\t\t\t\t(FirstNameR.value === '' ||\r\n\t\t\t\t\tLastNameR.value === '' ||\r\n\t\t\t\t\tAddressR.value === '' ||\r\n\t\t\t\t\tCityR.value === '' ||\r\n\t\t\t\t\tZipR.value === '' ||\r\n\t\t\t\t\tthis.state.CountryIdR === '' ||\r\n\t\t\t\t\tthis.state.CountryIdR === '00000000-0000-0000-0000-000000000000'));\r\n\t\tconst disableEditDocument = this.props.document && this.props.document.disableEdit;\r\n\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{this.state.loading ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t this.setState({ CountryId: e.target.value })}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{this.state.Countries.map((Country) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.validateEmail(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
{locale.profileDeliveryTitle}
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

{locale.differentThenContactAddress}

\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
{locale.profileReceiptTitle}
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.handleChange(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

{locale.differentThenContactAddress}

\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(CustomerContact);\r\n","import React from 'react';\r\nimport { Row, Col, Form } from 'reactstrap';\r\nimport '../Configurator.css';\r\nimport './public.css';\r\nimport locale from '../../Locale';\r\nimport { bindActionCreators } from 'redux';\r\nimport { connect } from 'react-redux';\r\nimport { actionCreators } from '../../store/Configurator';\r\nimport { RouteComponentProps } from 'react-router-dom';\r\nimport Helper from '../../Helper';\r\nimport { BootstrapTable, TableHeaderColumn } from 'react-bootstrap-table';\r\nimport Loading from 'react-fullscreen-loading';\r\n\r\ninterface IProps extends RouteComponentProps {\r\n\tconfigurationId: any;\r\n}\r\n\r\ninterface IState {\r\n\tdocumentation: any[];\r\n\tloading: boolean;\r\n}\r\n\r\nclass ConfigurationDocuments extends React.Component {\r\n\tconstructor(props: IProps) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\tloading: false,\r\n\t\t\tdocumentation: [],\t\t\r\n\t\t};\r\n\t}\r\n\tgetDocumentation() {\t\r\n\t\tthis.setState({ loading: true });\r\n\t\tconst state: IState = this.state;\r\n\t\t\r\n\t\tconst url =\r\n\t\t\t'/configurator/' + this.props.match.params.configurationId+ '/documents';\r\n\r\n\t\tlet documentation: any[] = [];\r\n\t\tHelper.getData(url).then((data) => {\r\n\t\t\tif (data && data.length > 0) {\t\t\t\r\n\t\t\t\tdata.forEach((item: any) => {\r\n\t\t\t\t\tif (item.Url) {\r\n\t\t\t\t\t\tdocumentation.push({\r\n\t\t\t\t\t\t\tid: item.ConfigurationDocumentationId,\r\n\t\t\t\t\t\t\turl: item.Url,\r\n\t\t\t\t\t\t\tname: item.FileName,\r\n\t\t\t\t\t\t\tdateAdded: Helper.dateWithTimeConvert(item.DateModified),\r\n\t\t\t\t\t\t\tdateAddedDate: item.DateModified,\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\tstate.documentation = documentation;\r\n\t\t\tthis.setState(state);\r\n\t\t\tthis.setState({ loading: false });\r\n\t\t});\r\n\t}\r\n\tcomponentDidMount() {\r\n\t\tthis.getDocumentation();\r\n\t}\r\n\trender() {\r\n\t\tconst options = {\r\n\t\t\tpageSize: 50,\r\n\t\t\tnoDataText: locale.noResults,\r\n\t\t};\r\n\r\n\t\tconst imgFormatter = (cell: any, row: any) => {\r\n\t\t\tif (row.url) {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t);\r\n\t\t\t} else {\r\n\t\t\t\treturn '';\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tconst linkFormatter = (cell: any, row: any) => {\r\n\t\t\tif (row.url) {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t {\r\n\t\t\tif (order === 'asc') {\r\n\t\t\t\tif (new Date(a.dateAddedDate) < new Date(b.dateAddedDate)) return 1;\r\n\t\t\t\tif (new Date(a.dateAddedDate) > new Date(b.dateAddedDate)) return -1;\r\n\t\t\t} else if (order === 'desc') {\r\n\t\t\t\tif (new Date(a.dateAddedDate) > new Date(b.dateAddedDate)) return 1;\r\n\t\t\t\tif (new Date(a.dateAddedDate) < new Date(b.dateAddedDate)) return -1;\r\n\t\t\t}\r\n\t\t\treturn 0;\r\n\t\t};\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t{this.state.loading ? (\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{' '}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.name}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{locale.date}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default connect(\r\n\t(state: any) => state.configurator,\r\n\t(dispatch) => bindActionCreators(actionCreators, dispatch)\r\n)(ConfigurationDocuments);\r\n","import React from 'react';\r\nimport Layout from './components/Layout';\r\nimport ConfiguratorStep1 from './components/ConfiguratorStep1';\r\nimport ConfiguratorStep2 from './components/ConfiguratorStep2';\r\nimport ConfiguratorStep3 from './components/ConfiguratorStep3';\r\nimport CustomerView from './components/admin/CustomerView';\r\nimport CustomerDocument from './components/admin/CustomerDocument';\r\nimport CustomerHistory from './components/admin/CustomerHistory';\r\nimport CustomerRemarks from './components/admin/CustomerRemarks';\r\nimport CustomerCosts from './components/admin/CustomerCosts';\r\nimport CustomerCalculation from './components/admin/CustomerCalculationOverview';\r\nimport CustomerImages from './components/admin/CustomerImages';\r\nimport Inquiry from './components/Inquiry';\r\nimport Login from './components/Login';\r\nimport CookieInfo from './components/CookieInfo';\r\nimport { Route } from 'react-router-dom';\r\nimport CustomerConfigurations from './components/admin/CustomerConfigurations';\r\nimport ResetPassword from './components/ResetPassword';\r\nimport Profile from './components/Profile';\r\nimport CustomerDocumentPrint from './components/admin/CustomerDocumentPrint';\r\nimport CustomerTerms from './components/admin/CustomerTerms';\r\nimport InquirySales from './components/InquirySales';\r\nimport InquiryUser from './components/InquiryUser';\r\nimport CustomerContact from './components/admin/CustomerContact';\r\nimport ConfigurationDocuments from './components/public/ConfigurationDocuments'\r\n\r\ndeclare function require(moduleName: string): any;\r\nconst AnimatedSwitch = require('react-router-transition').AnimatedSwitch;\r\nconst basename = process.env.REACT_APP_ROOT_PATH;\r\n\r\nconst foo = () => (\r\n\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t }\r\n\t\t\t/>\r\n\t\t\t }\r\n\t\t\t/>\r\n\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t }\r\n\t\t\t/>\r\n\t\t\t }\r\n\t\t\t/>\r\n\t\t\t }\r\n\t\t\t/>\r\n\t\t\t\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t{/* */}\r\n\t\t\t\r\n\r\n\t\t\t{/* */}\r\n\t\t\t\r\n\t\t\t\r\n\r\n\t\t\t\r\n\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\r\n\t\r\n);\r\nexport default foo;\r\n","// This optional code is used to register a service worker.\r\n// register() is not called by default.\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 subsequent visits to a page, after all the\r\n// existing tabs open on the page have been closed, since previously cached\r\n// resources are updated in the background.\r\n\r\n// To learn more about the benefits of this model and instructions on how to\r\n// opt-in, read https://bit.ly/CRA-PWA\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(\r\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\r\n )\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.href);\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(\r\n 'This web app is being served cache-first by a service ' +\r\n 'worker. To learn more, visit https://bit.ly/CRA-PWA'\r\n );\r\n });\r\n } else {\r\n // Is not localhost. 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 if (installingWorker == null) {\r\n return;\r\n }\r\n installingWorker.onstatechange = () => {\r\n if (installingWorker.state === 'installed') {\r\n if (navigator.serviceWorker.controller) {\r\n // At this point, the updated precached content has been fetched,\r\n // but the previous service worker will still serve the older\r\n // content until all client tabs are closed.\r\n console.log(\r\n 'New content is available and will be used when all ' +\r\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.'\r\n );\r\n\r\n // Execute callback\r\n if (config && 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 && 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 const contentType = response.headers.get('content-type');\r\n if (\r\n response.status === 404 ||\r\n (contentType != null && contentType.indexOf('javascript') === -1)\r\n ) {\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(\r\n 'No internet connection found. App is running in offline mode.'\r\n );\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","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport 'bootstrap/dist/css/bootstrap.css';\r\nimport 'bootstrap-xxl/dist/css/bootstrap.css';\r\nimport 'font-awesome/css/font-awesome.min.css';\r\nimport './index.css';\r\nimport './styles/common.css';\r\nimport './styles/buttons.css';\r\nimport App from './App';\r\nimport * as serviceWorker from './serviceWorker';\r\nimport { Provider } from 'react-redux';\r\nimport { ConnectedRouter } from 'react-router-redux';\r\nimport { createBrowserHistory } from 'history';\r\nimport configureStore from './store/configureStore';\r\nimport 'react-app-polyfill/ie11';\r\nimport 'core-js/features/array/find';\r\nimport 'core-js/features/array/find-index';\r\nimport 'core-js/features/array/includes';\r\nimport 'core-js/features/number/is-nan';\r\nimport 'core-js/features/string/repeat';\r\nimport \"es6-promise/auto\";\r\n\r\n// Create browser history to use in the Redux store\r\nexport const history = createBrowserHistory();\r\nexport const store = configureStore(history);\r\n\r\nconst rootElement = document.getElementById('root');\r\n\r\ndocument.addEventListener(\"visibilitychange\", (event) => {\r\n localStorage.setItem('reduxState', JSON.stringify(store.getState()))\r\n});\r\n\r\n ReactDOM.render(\r\n \r\n \r\n \r\n \r\n ,\r\n rootElement);\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: https://bit.ly/CRA-PWA\r\nserviceWorker.unregister();\r\n","import { applyMiddleware, combineReducers, compose, createStore } from 'redux';\r\nimport thunk from 'redux-thunk';\r\nimport { routerReducer, routerMiddleware } from 'react-router-redux';\r\nimport * as Configurator from './Configurator';\r\n\r\nexport default function configureStore(history: any) {\r\n const reducers = {\r\n configurator: Configurator.reducer\r\n };\r\n\r\n const middleware = [\r\n thunk,\r\n routerMiddleware(history)\r\n ];\r\n\r\n // In development, use the browser's Redux dev tools extension if installed\r\n const enhancers = [];\r\n const isDevelopment = process.env.NODE_ENV === 'development';\r\n if (isDevelopment && typeof window !== 'undefined' && (window as any).devToolsExtension) {\r\n enhancers.push((window as any).devToolsExtension());\r\n }\r\n\r\n const rootReducer = combineReducers({\r\n ...reducers,\r\n routing: routerReducer\r\n });\r\n\r\n const persistedState = localStorage.getItem('reduxState') ? JSON.parse(localStorage.getItem('reduxState') || '') : {}\r\n\r\n return createStore(\r\n rootReducer,\r\n persistedState,\r\n compose(applyMiddleware(...middleware), ...enhancers)\r\n );\r\n}\r\n"],"sourceRoot":""}