{"version":3,"sources":["components/Layout/Layout.tsx","components/Proposal/StepForm/WizardNavigationFooter.tsx","components/Proposal/StepForm/ProposalFormValidation.tsx","components/Proposal/StepForm/StudyTeam.tsx","components/Proposal/StepForm/StudyDescription.tsx","components/NavMenu.tsx","components/Proposal/StepForm/StudyPower.tsx","components/Proposal/StepForm/StudyIntervensions.tsx","components/Proposal/StepForm/MaterialsAndMethodes.tsx","dataprovider/HttpService.ts","dataprovider/MaterialSearch.ts","components/Proposal/StepForm/FilterComponent/FilterBox.tsx","components/Proposal/StepForm/RequestedSupport.tsx","components/Proposal/StepForm/ProjectPlan.tsx","components/AttachmentComponent/AttachmentComponent.tsx","components/Proposal/StepForm/Attachments.tsx","components/pdfGenerator/pdfCreator.ts","components/Proposal/StepForm/Summary.tsx","components/Proposal/StepForm/SuccessBox.tsx","components/Proposal/Proposal.tsx","components/Welcome/Welcome.tsx","components/LoginComponent/Common.ts","dataprovider/DataProvider.ts","components/LoginComponent/MicrosoftComponent.tsx","components/LoginComponent/LoginHelper.ts","components/LoginComponent/CustomAuthComponent.tsx","components/LoginComponent/LoginComponent.tsx","components/LoginComponent/GoogleComponent.tsx","components/LoginComponent/ConfirmPage.tsx","components/LoginComponent/ResetPWPage.tsx","components/PrivateRoute.tsx","components/Proposal/ProposalStore.ts","components/LoginComponent/CookieList.tsx","App.js","registerServiceWorker.js","index.js","components/LoginComponent/ExternalConsent.js","images/str-group-white.svg","files/Terms_and_Condition_ of_ Submission.pdf"],"names":["logo","require","Layout","props","year","Date","getFullYear","Stack","className","horizontal","horizontalAlign","verticalAlign","onClick","window","location","href","origin","src","alt","this","children","id","style","height","fontSize","marginRight","target","React","displayName","name","pdf","_renderLabelWithLink","Link","underline","WizardNavigationButtons","observer","state","clinicalAgreementChecked","legalConfirmationChecked","tokens","childrenGap","wrap","ActionButton","iconProps","iconName","save","Label","step","totalSteps","previousStep","nextStep","Checkbox","label","onRenderLabel","onChange","e","newChecked","proposal","agreeClinicalResearchConfirmed","setState","complyLegalRequirementsConfirmed","disabled","submit","goToStep","ProposalFormValidation","errors","fieldErrors","length","currentStep","key","Object","keys","join","isReadonly","MessageBar","messageBarType","MessageBarType","error","styles","root","borderRadius","marginBottom","map","fieldError","idx","childErrors","fontWeight","display","childErrorField","childIdx","childError","rowIdx","StudyTeam","isDefaultApplicant","setDefaultApplicant","currentUser","console","log","userName","firstName","lastName","applicantName","applicantEmail","email","newProps","columnProps1","width","columnProps2","columnProps3","columnProps4","columnProps5","coInvestigators","push","subInvestigators","css","verticalFill","TextField","maxLength","placeholder","required","errorMessage","piName","value","readOnly","borderless","_event","newValue","contactDetailsPI","street","no","postalCode","city","country","phone","firstname","lastname","institute","IconButton","title","ariaLabel","item","index","splice","studyNurse","showWizardNavigation","StackItem","onSave","StudyDescription","onDropdownChange","event","option","typeOfStudy","text","typeOfStudyOther","studyDesign","groupA","studyDesignAList","groupB","studyDesignBList","groupC","studyDesignCList","showTypeOfStudyOther","showStudyDesign","onChoiceGroupAChange","ev","onChoiceGroupBChange","sampleSize","nPerGroup","onChoiceGroupCChange","showFieldOthers","fields","some","x","optionsForTypeOfStudy","typeOfStudyList","type","optionsForStudyDesignA","optionsForStudyDesignB","optionsForStudyDesignC","styleError","mergeStyles","fontFamily","color","margin","paddingTop","alignItems","studyTitle","multiline","rows","summary","backgroundRatione","studyHypothesis","Dropdown","options","dropdown","selectedKey","ChoiceGroup","defaultSelectedKey","fieldsList","field","fieldOthers","checked","isChecked","filter","navLinkGroups","links","url","onRenderLink","defaultRender","indexOf","icon","onRenderGroupHeader","group","NavMenu","Nav","errorTabs","groups","bind","onLinkClick","Number","toString","StudyPower","alert","nTotalStyle","anticipatedDropOutRateStyle","nTotal","anticipatedDropOutRate","powerAnalysis","StudyIntervensions","showControlArm","additionalStudyArms","studyIntTestArm","device","description","controlIntControlArm","MaterialsAndMethodes","isAnimalOrClinical","materialMethode","materialExperimentalSetup","undefined","populationIndication","treatments","experimentalProcedures","secondaryOutcomeParam","statisticalMethods","primaryOutcomeParam","baseline","endpoint","HttpService","body","headers","Promise","resolve","reject","a","baseHeaders","sessionStorage","authToken","JSON","parse","token","fetch","method","cache","stringify","response","ok","json","then","result","status","removeItem","err","catch","ierr","dir","message","detail","ex","MaterialSearch","keywords","isLongTextSearch","post","AZURE_MATERIAL_SEARCH_URL","results","errorArea","errorObj","logError","stack","msg","FilterBox","textBox","onFilterEnterPressed","filterTypingTimeoutRef","clearTimeout","triggerFiltering","onFilterChanged","trim","toLowerCase","filtered","setTimeout","delay","onFilterTriggered","clearFilter","skipEvent","onFilterCleared","onClearFilterClicked","focus","setSelectionStart","setSelectionEnd","setTextFieldRef","fieldRef","labelText","placeHolder","rootStyles","marginTop","rootClassName","labelStyles","labelClassName","iconStyle","backgroundColor","textFieldStyles","selectors","fontStyle","textField","_","componentRef","onKeyDown","keyCode","RequestedSupport","materialSelection","matSearchField","onFundsRequestedChange","isFundsRequested","fundsRequested","onStudyMaterialRequestedChange","isStudyMaterialRequested","materialSupportRequested","onChoiceGroupChange","funds","currency","setShowSearch","prevState","newShowSearch","showSearchButton","onKeyUp","searchMaterial","renderSearchResultsHeader","Sticky","stickyPosition","StickyPositionType","Header","isScrollSynced","onRenderColumnHeaderTooltip","tooltipHostProps","TooltipHost","selectMaterial","searchItemIndex","material","selectedMaterial","materialSupport","articelNo","MaterialNum","Description","quantity","isSearchDialogOpen","setAllSelected","onMaterialSearchChange","txtMatSearchValue","isSearching","isFulltextSearch","mats","matSearchResults","filteredSearchResults","resultFilter","ExceptionMessage","searchError","finally","clearSearch","current","lowerFilter","filteredResults","entry","onClearFilter","onRenderSearchResultRow","DetailsRow","cursor","showDisc","Selection","canSelectItem","onSelectionChanged","getSelection","columnProps0","columnProps6","columnProps7","columnPropsbtn","costItems","disc","Toggle","inlineLabel","onText","offText","paddingLeft","budget","proposalStore","calculateFunds","overheadCosts","percent","amount","total","marginLeft","hidden","autoComplete","dimention","Modal","isBlocking","isOpen","onDismiss","padding","position","top","right","autoFocus","DefaultButton","justifyContent","gap","PrimaryButton","Spinner","minHeight","maxHeight","ScrollablePane","scrollbarVisibility","ScrollbarVisibility","auto","DetailsList","columns","fieldName","minWidth","maxWidth","isResizable","items","selectionMode","SelectionMode","single","layoutMode","DetailsListLayoutMode","justified","selectionPreservedOnEmptyClick","selection","onRenderDetailsHeader","ProjectPlan","columnProps8","onFormatDate","date","getDate","getMonth","projectTimeline","timelines","experienceOfPI","studies","placeholderStyle","publicationAndPresentationPlan","milestone","startDate","DatePicker","formatDate","readOnlyPlaceholder","onSelectDate","endDate","comments","numberOfPulication","industryPartner","projectPlan","monitoring","dataManagement","analysis","AttachmentComponent","fileInputRef","triggerFileUpload","files","mode","categorizedFiles","categorizeValidInvalidFiles","correctFiles","badFilesDialogCallback","onFilesAdded","isAddingFile","isExchangingFile","badFiles","invalidExtensionFiles","invalidNameFiles","onFileReplaced","isBadFilesDialogOpen","onFileDrop","enableDropZone","readonly","preventDefault","stopPropagation","fileMode","draggingOver","dataTransfer","isExchange","attachment","onDraggingOver","onDragEnd","onDragExit","onDelete","File","isDeleteConfirmationOpen","deleteConfirmationAttachment","onDownload","open","apiEndpointSP","encodeURIComponent","uniqueId","onDeleteConfirmationDismiss","action","isDeletingFile","onFileDeleted","onAddFileClicked","click","onInputFileChanged","filterAllowedFiles","i","file","extensionFilters","extension","toLocaleLowerCase","replace","invalidFileNameCharacters","RegExp","isFileNameInvalid","test","match","attachments","deletePermissions","attachmentClickBehaviour","maxHeightFileList","isLoading","linkStyle","deleteButtonStyle","addButtonStyle","spinnerStyle","borderStyle","displayStyle","placeholderWidth","deletePlaceholder","makeAttachmentHyperlink","data-interception","serverRelativeUrl","userHasDeletePermissions","dropZoneTooltip","spinnerIcon","isExchangeMode","onDrop","onDragEnter","paddingBottom","border","overflowY","isDeleted","maxFileNameWidth","overflowX","textOverflow","whiteSpace","ref","multiple","accept","onDragOver","onDragLeave","left","zIndex","Dialog","dialogContentProps","DialogType","normal","subText","DialogFooter","ext","badFile","defaultProps","useFileIdToDownloadFile","Attachments","onISOAttachmentUploadAdded","isoCertificateAttachments","delayedAttachments","forEach","onISOAttachmentDeleted","onCVAttachmentUploadAdded","cvAttachments","onCVAttachmentDeleted","onOtherAttachmentUploadAdded","otherAttachments","onOtherAttachmentDeleted","firstColSize","pdfCreator","upload","p","pdfMake","pdfFonts","vfs","studyOverview","getStudyOverviewContent","studyIntervention","getStudyIntervention","getMaterialsMethods","supportRequest","getRequestedSupport","timeline","getProjectTimeline","getExperience","dd","pageMargins","header","image","alignment","footer","currentPage","pageCount","content","pageBreak","moment","created","format","bold","pageFooter","titleMargin","subheader","subsubheader","newPage","subsubsubheader","tableExample","importantRow","fillColor","pdfDocGenerator","getBase64","download","studyDetails","arm","param","support","colSpan","table","widths","headerRows","layout","requestedMaterials","m","timelineBody","t","experience","Summary","copy","createFile","onSubmit","SuccessBox","stepSizeClass","transitions","enterRight","enterLeft","exitRight","exitLeft","intro","ProposalForm","onStepChange","stats","activeStep","setInstance","stepWizardContext","onSaveProposal","isSubmit","showWaitingSpinner","userId","dataProvider","createProposal","newItem","proposalId","proposalID","uploadISOCertificate","uploadCV","uploadOthers","hideSpinnerAndShowSuccessMessage","addParam","history","pushState","getAttachments","docType","hasValidated","validateProposal","messageType","success","showOrderSuccessMessage","hideSpinnerAndShowErrorMessage","sessionExpired","errorAreaName","logErrorInConsole","extractErrorMessageFromErrorObject","validateField","obj","minValue","maxValue","childValidations","hasMinValue","hasMaxValue","hasMaxLength","requiredValid","childrenRequiredValid","childValidationErrors","fieldContainsData","hasOwnProperty","Array","isArray","childRow","childRowIdx","childRule","ruleIdx","childFieldRequired","childMaxValue","requiredIsValid","formatIsValid","errorFormat","errorRequired","Boolean","formatValid","matchResults","actualMinValue","actualMaxValue","tabNames","tabErrors","fieldValidationErrors","nGroupRequiredValidation","validationRules","includes","onValidate","hasErrors","tab","tabIdx","fieldIdx","fieldStillValid","fieldHierarchies","split","model","firstErrorTab","scrollTo","pdfFileAsBase64","isLoggedIn","validationErrorTabs","validationErrorFields","validationFirstErrorTab","getApplicationSettings","applicationSettings","URLSearchParams","search","get","getProposal","isMultiline","truncated","isHashEnabled","isLazyMount","instance","initialStep","nav","modalProps","size","SpinnerSize","large","ariaLive","String","WelcomePage","getTheme","_columns","_renderRow","_onDetailsLineClick","PageURL","CreateProposal","_renderItemColumn","column","fieldContent","selectedItem","onDeleteClicked","isDeleting","deleteProposal","getAllProposals","myItems","onDismissDeleteDialog","setLoggedInInformation","allowDisabledFocus","boxShadow","paddingRight","setKey","skipViewportMeasures","onRenderRow","onRenderItemColumn","none","textDecoration","Icon","isDarkOverlay","showCloseButton","labelPosition","Common","rtn","params_arr","queryString","endsWith","substr","newUrl","port","protocol","hostname","DataProvider","userAccountEndpointSP","modified","formData","FormData","append","fileNeedToDelete","substring","sourceURL","user","isRSMToken","reCaptchaToken","getCurrentServerUrl","activationGuid","pw","baseUrl","Id","base64File","loginRequest","scopes","handleLogin","callback","setAuthenticated","showError","setAuthStatus","setRedirect","setShowWaitingSpinner","loginPopup","idToken","idTokenClaims","given_name","family_name","accountType","AccountType","Microsoft","activateGuid","password","parseMicrosoftUser","account","spUser","isNewUser","rsmConsentTarget","logoutRedirect","onRedirectNavigate","MicrosoftComponent","useMsal","accounts","useState","authenticated","redirect","setUserName","useEffect","signedIn","to","Button","variant","logoutPopup","handleLogout","GeneralHelper","mandatoryValidation","emailValidation","confirmationPasswordInvalid","resetPWMail","activateUserMail","ICustomAuthComponent","refReCaptchaRegister","refReCaptchaLogin","_onRegisterBtnCLicked","time","inputsAreaValid","registerUser","setInformationMessage","_onLoginBtnClicked","loginUser","_onLogoutBtnClicked","Custom","registered","loggedIn","resendActivationCode","sendingConfirmation","updatedMessage","isProcessing","informationMessage","loginInternalUserAccount","setItem","bearerToken","onPanelStatusChange","autoDismissError","errormessage","reset","registerInternalUserAccount","parseError","onReCaptchaChange","register","firstNameErrorMessage","lastNameErrorMessage","emailErrorMessage","passwordErrorMessage","confirmPasswordErrorMessage","legalNoticeErrorMessage","privacyNoticeErrorMessage","reCaptchaError","invalid","confirmationPassword","checkPasswordStrength","legalNoticeChecked","privacyNoticeChecked","getValue","isValidated","resetValidation","pwdBadgeVariant","pwdBadgeLabel","autoDismiss","informationType","warning","onCustomLoginButton_Clicked","showCustomLoginPanel","onCustomLoginPanel_Dismiss","onLegalNoticeClicked","onPrivacyNoticeClicked","pwd","strongPassword","mediumPassword","badgeVariant","badgeLabel","userData","dismissIconProps","dismissButtonAriaLabel","onSelect","defaultValue","canRevealPassword","sitekey","Badge","htmlFor","GoogleLoginComponent","redirectConsent","setRedirectConsent","showGoogleError","setShowGoogleError","googleErrorMessage","setGoogleErrorMessage","useRef","forceLogout","googleLogout","locale","onSuccess","decoded","jwt_decode","credential","Google","onError","LoginComponent","refPersonIcon","ensureSPUser","userInformation","ensureExternalUserAccount","rsmUser","showAuthenticationError","provider","error_provider","isErrorOpen","loggedInWithGoogle","loggedInWithMicrosoft","loggedInWithCustomAccount","isCalloutOpen","isCustomPanelOpen","curUrl","hideLoginComponent","signedInStyles","flexDirection","imageProps","Callout","ConfirmPage","activationInProgress","accountActivated","code","getUserByActivateParam","ResetPWPage","_resetBtnClicked","resetPw","_getResetLink","confirmMode","activationCode","emailWasSent","getNewActivationCode","resetPWByActivateParam","resetSuccessful","info","keepMessage","userReadyForPWReset","urlParams","removeUrlParam","Component","ProposalStore","makeObservable","configure","enforceActions","totalcosts","reduce","sum","observable","CookieList","ConfirmationPage","Consent","msalInstance","PublicClientApplication","returnURI","auth","clientId","authority","redirectUri","cacheLocation","storeAuthStateInCookie","getMSALConfig","App","refLoginComponent","host","path","redirectHome","createRef","expirationUTC","exact","render","ExternalConsent","loginComponent","isLocalhost","registerValidSW","swUrl","navigator","serviceWorker","registration","onupdatefound","installingWorker","installing","onstatechange","controller","initializeIcons","document","getElementsByTagName","getAttribute","rootElement","getElementById","ReactDOM","basename","URL","process","addEventListener","ready","unregister","reload","checkValidServiceWorker","registerServiceWorker","__extends","extendStatics","d","b","setPrototypeOf","__proto__","prototype","call","TypeError","__","constructor","create","defineProperty","exports","react_router_1","office_ui_fabric_react_1","msal_react_1","google_1","_super","_this","onConfirmClicked","context","finalUser","redirectWelcome","onNoConsentClicked","_a","_b","that","componentDidMount","_c","_d","_e","_f","_g","_h","createElement","Redirect","contextType","MsalContext","module"],"mappings":"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","file":"static/js/main.e64f1142.chunk.js","sourcesContent":["import * as React from 'react';\nimport './Layout.scss';\n//import logo from '../../images/str-group-color.svg';\nimport { Link } from 'react-router-dom';\nimport { Stack } from 'office-ui-fabric-react';\n\nconst logo = require(\"../../images/str-group-white.svg\")\n\n\nexport class Layout extends React.Component {\n static displayName = Layout.name;\n private year = new Date().getFullYear();\n\n constructor(props: any) {\n super(props);\n }\n\n render() {\n return (\n \n \n
{ window.location.href = window.location.origin; }}>Research Screening
\n
\"Straumann
\n
\n
\n {/* */}\n {/*

Service Agreement

*/}\n
{this.props.children}
\n {/*
*/}\n\n
\n \n
© {this.year} Institut Straumann AG
\n
\n \n \n \n \n Legal notice\n \n |\n \n Privacy notice\n \n |\n \n Imprint\n \n\n
\n
\n
\n );\n }\n}\n","import * as React from 'react';\nimport { Stack, ActionButton, Checkbox, Link, Label } from 'office-ui-fabric-react';\nimport { observer } from 'mobx-react';\nimport { IProposal } from '../Models/IProposal';\nconst pdf = require(\"../../../files/Terms_and_Condition_ of_ Submission.pdf\");\n\n\nfunction _renderLabelWithLink() {\n return (\n \n I acknowledge to have read and agree to the \n Clinical Research Agreement\n \n \n \n );\n}\n\n\nexport interface WizardNavigationButtonsProps {\n proposal: IProposal;\n currentStep?: any;\n firstStep?: any;\n goToStep?: any;\n lastStep?: any;\n nextStep?: any;\n previousStep?: any;\n totalSteps?: any;\n step?: any;\n save?: any;\n submit?: any;\n isUserAuthenticated?: boolean;\n}\n\nexport interface WizardNavigationButtonsState {\n clinicalAgreementChecked: boolean;\n legalConfirmationChecked: boolean;\n}\n\n@observer\nexport class WizardNavigationButtons extends React.Component {\n\n constructor(props: any) {\n super(props);\n this.state = {\n clinicalAgreementChecked: false,\n legalConfirmationChecked:false\n }\n }\n\n public componentDidMount() {\n }\n\n public render() {\n return
\n \n \n Save Proposal\n \n \n \n\n {\n this.props.step > 1 || this.props.step < this.props.totalSteps ?\n
\n {\n this.props.step > 1 && {\n this.props.previousStep();\n //this.props.save().then(this.props.previousStep);\n }\n }>Go Back\n }\n {\n this.props.step < this.props.totalSteps && {\n this.props.nextStep();\n //this.props.save().then(this.props.nextStep);\n }}>Next\n }\n
\n : null\n }\n\n
\n\n
\n {\n this.props.step === this.props.totalSteps &&\n \n\n {\n this.props.proposal.agreeClinicalResearchConfirmed = newChecked;\n this.setState({ clinicalAgreementChecked: newChecked });\n }} />\n {\n this.props.proposal.complyLegalRequirementsConfirmed = newChecked;\n this.setState({ legalConfirmationChecked: newChecked });\n }} />\n Submit Proposal\n \n }\n
\n }\n}\n\n","import * as React from 'react';\r\nimport { Stack, ActionButton, MessageBar, MessageBarType } from 'office-ui-fabric-react';\r\n\r\nexport interface IProposalFormValidation {\r\n currentStep?: any;\r\n firstStep?: any;\r\n goToStep?: any;\r\n lastStep?: any;\r\n nextStep?: any;\r\n previousStep?: any;\r\n totalSteps?: any;\r\n step?: any;\r\n save?: any;\r\n submit?: any;\r\n isUserAuthenticated?: boolean;\r\n fieldErrors?: any[];\r\n isReadonly?: boolean;\r\n}\r\n\r\nexport default class ProposalFormValidation extends React.Component {\r\n constructor(props: any) {\r\n super(props);\r\n this.state = {\r\n }\r\n }\r\n\r\n public componentDidMount() {\r\n }\r\n\r\n public render() {\r\n let errors = this.props.fieldErrors && this.props.fieldErrors.length >= this.props.currentStep ? this.props.fieldErrors[this.props.currentStep - 1] : null; \r\n\r\n return (\r\n
\r\n {\r\n errors && Object.keys(errors).length && !this.props.isReadonly ?
\r\n \r\n \r\n \r\n Please fix the following field errors on this form:\r\n
    \r\n {\r\n Object.keys(errors).map((fieldError, idx) => {\r\n if (errors[fieldError].childErrors && Object.keys(errors[fieldError].childErrors).length!==0) {\r\n return
    \r\n
  • {errors[fieldError].display}: {errors[fieldError].error}
  • \r\n
      \r\n {\r\n Object.keys(errors[fieldError].childErrors).map((childErrorField, childIdx) => {\r\n let childError = errors[fieldError].childErrors[childErrorField];\r\n return
    • Row {childError.rowIdx + 1 } - {childError.display}: {childError.error}
    • ;\r\n })\r\n }\r\n
    \r\n
    ;\r\n } else {\r\n return
  • {errors[fieldError].display}: {errors[fieldError].error}
  • ;\r\n }\r\n })\r\n }\r\n
\r\n
\r\n
\r\n
\r\n
: null\r\n }\r\n
\r\n )\r\n }\r\n}","import * as React from 'react';\nimport { css, Stack, PrimaryButton, Text, getTheme, INavLinkGroup, Nav, IStackProps, INavLink, TextField, Label, IconButton, StackItem } from 'office-ui-fabric-react';\nimport '../Proposal.scss';\nimport { IFormProps } from '../Models/IFormProps';\nimport { observer } from 'mobx-react';\nimport { WizardNavigationButtons } from './WizardNavigationFooter';\nimport { IUserAccount } from '../../LoginComponent/LoginComponent';\nimport ProposalFormValidation from './ProposalFormValidation';\n\nexport interface IStudyTeamProps extends IFormProps {\n currentUser?: IUserAccount;\n\n fieldErrors?: any;\n goToStep?: any;\n}\n\nexport interface IStudyTeamState { \n freezeApplicant:boolean;\n}\n\n@observer\nexport class StudyTeam extends React.Component {\n\n private isDefaultApplicant:boolean = false;\n //private fieldErrors:any = null;\n\n constructor(props: IStudyTeamProps) {\n super(props);\n\n this.setDefaultApplicant(props.currentUser); \n //this.fieldErrors = props.fieldErrors && props.fieldErrors[0] ? props.fieldErrors[0] : {};\n }\n\n public componentDidMount() {\n }\n\n public componentWillReceiveProps(newProps: IStudyTeamProps) {\n if (this.props.currentUser != newProps.currentUser) {\n this.setDefaultApplicant(newProps.currentUser); \n }\n\n // if(this.props.fieldErrors != newProps.fieldErrors){\n // this.fieldErrors = this.props.fieldErrors && this.props.fieldErrors[0] ? this.props.fieldErrors[0] : {};\n // }\n }\n\n private setDefaultApplicant = (currentUser: IUserAccount) => {\n console.log(\"setDefaultApplicant: \", currentUser);\n let userName = currentUser ? `${currentUser.firstName} ${currentUser.lastName}` : null;\n this.props.proposal.applicantName = this.props.proposal.applicantName || userName;\n this.props.proposal.applicantEmail = this.props.proposal.applicantEmail || currentUser?.email;\n this.isDefaultApplicant = true;\n };\n\n public render() {\n const columnProps1: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"20%\" } },\n };\n\n const columnProps2: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"30%\" } },\n };\n\n const columnProps3: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"50%\" } },\n };\n\n const columnProps4: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"70%\" } },\n };\n\n const columnProps5: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"80%\" } },\n };\n\n if (!this.props.proposal.coInvestigators || this.props.proposal.coInvestigators.length == 0) {\n this.props.proposal.coInvestigators = [];\n this.props.proposal.coInvestigators.push({});\n }\n\n if (!this.props.proposal.subInvestigators || this.props.proposal.subInvestigators.length == 0) {\n this.props.proposal.subInvestigators = [];\n this.props.proposal.subInvestigators.push({});\n }\n\n //fieldErrors = this.props.fieldErrors && this.props.fieldErrors[0] ? this.props.fieldErrors[0] : {};\n \n //console.log(\"FieldErrors\", this.props.proposal?.fieldErrors);\n\n return (\n \n \n {\n this.props.isReadonly && \n }\n {\n !this.props.isReadonly &&

Study Team

\n }\n
\n \n \n \n \n
\n Primary Investigator (PI)\n \n \n \n {\n /**\n * \n {\n this.props.proposal.applicantName = newValue;\n }}>\n \n\n * \n \n * **/\n }\n \n\n \n \n {\n \n /**\n {\n this.props.proposal.applicantEmail = newValue;\n }}>\n\n**/\n }\n \n \n \n {\n this.props.proposal.piName = newValue;\n }}>\n \n \n {\n if (!this.props.proposal.contactDetailsPI)\n this.props.proposal.contactDetailsPI = {};\n this.props.proposal.contactDetailsPI.street = newValue;\n }}>\n \n \n {\n if (!this.props.proposal.contactDetailsPI)\n this.props.proposal.contactDetailsPI = {};\n this.props.proposal.contactDetailsPI.no = newValue;\n }}>\n \n \n \n \n {\n if (!this.props.proposal.contactDetailsPI)\n this.props.proposal.contactDetailsPI = {};\n this.props.proposal.contactDetailsPI.postalCode = newValue;\n }}>\n \n \n {\n if (!this.props.proposal.contactDetailsPI)\n this.props.proposal.contactDetailsPI = {};\n this.props.proposal.contactDetailsPI.city = newValue;\n }}>\n \n \n \n \n {\n if (!this.props.proposal.contactDetailsPI)\n this.props.proposal.contactDetailsPI = {};\n this.props.proposal.contactDetailsPI.country = newValue;\n }}>\n \n \n {\n if (!this.props.proposal.contactDetailsPI)\n this.props.proposal.contactDetailsPI = {};\n this.props.proposal.contactDetailsPI.state = newValue;\n }}>\n \n \n \n \n {\n if (!this.props.proposal.contactDetailsPI)\n this.props.proposal.contactDetailsPI = {};\n this.props.proposal.contactDetailsPI.email = newValue;\n }}>\n \n \n {\n if (!this.props.proposal.contactDetailsPI)\n this.props.proposal.contactDetailsPI = {};\n this.props.proposal.contactDetailsPI.phone = newValue;\n }}>\n \n \n \n
\n
\n Co Investigators\n \n \n \n {\n if (this.props.proposal.coInvestigators)\n this.props.proposal.coInvestigators[0].firstname = newValue;\n }}>\n \n \n {\n if (this.props.proposal.coInvestigators)\n this.props.proposal.coInvestigators[0].lastname = newValue;\n }}>\n \n \n {\n if (this.props.proposal.coInvestigators)\n this.props.proposal.coInvestigators[0].email = newValue;\n }}>\n \n \n {\n if (this.props.proposal.coInvestigators)\n this.props.proposal.coInvestigators[0].institute = newValue;\n }}>\n \n {\n !this.props.isReadonly &&\n {\n this.props.proposal.coInvestigators?.push({});\n }} />\n }\n \n {\n this.props.proposal.coInvestigators?.map((item, index) => {\n if (index != 0) {\n return \n \n {\n item.firstname = newValue;\n }}>\n \n \n {\n item.lastname = newValue;\n }}>\n \n \n {\n item.email = newValue;\n }}>\n \n \n {\n item.institute = newValue;\n }}>\n \n {\n !this.props.isReadonly &&\n {\n this.props.proposal.coInvestigators?.splice(index, 1);\n }} />\n }\n ;\n }\n })\n }\n \n
\n
\n Sub Investigators\n \n \n \n {\n if (this.props.proposal.subInvestigators)\n this.props.proposal.subInvestigators[0].firstname = newValue;\n }}>\n \n \n {\n if (this.props.proposal.subInvestigators)\n this.props.proposal.subInvestigators[0].lastname = newValue;\n }}>\n \n \n {\n if (this.props.proposal.subInvestigators)\n this.props.proposal.subInvestigators[0].email = newValue;\n }}>\n \n \n {\n if (this.props.proposal.subInvestigators)\n this.props.proposal.subInvestigators[0].institute = newValue;\n }}>\n \n {\n !this.props.isReadonly &&\n {\n this.props.proposal.subInvestigators?.push({});\n }} />\n }\n \n {\n this.props.proposal.subInvestigators?.map((item, index) => {\n if (index != 0) {\n return \n \n {\n item.firstname = newValue;\n }}>\n \n \n {\n item.lastname = newValue;\n }}>\n \n \n {\n item.email = newValue;\n }}>\n \n \n {\n item.institute = newValue;\n }}>\n \n {\n !this.props.isReadonly &&\n {\n this.props.proposal.subInvestigators?.splice(index, 1);\n }} />\n }\n ;\n }\n })\n }\n \n
\n
\n Study Nurse / Coordinator\n \n \n {\n if (!this.props.proposal.studyNurse)\n this.props.proposal.studyNurse = {};\n this.props.proposal.studyNurse.firstname = newValue;\n }}>\n \n \n {\n if (!this.props.proposal.studyNurse)\n this.props.proposal.studyNurse = {};\n this.props.proposal.studyNurse.lastname = newValue;\n }}>\n \n \n {\n if (!this.props.proposal.studyNurse)\n this.props.proposal.studyNurse = {};\n this.props.proposal.studyNurse.email = newValue;\n }}>\n \n \n {\n if (!this.props.proposal.studyNurse)\n this.props.proposal.studyNurse = {};\n this.props.proposal.studyNurse.institute = newValue;\n }}>\n \n \n
\n
\n\n {\n this.props.showWizardNavigation && \n \n \n }\n
\n );\n\n }\n}","import * as React from 'react';\nimport { css, Stack, PrimaryButton, Text, getTheme, INavLinkGroup, Nav, IStackProps, INavLink, TextField, Label, IconButton, IDropdownOption, Dropdown, IDropdownStyles, ChoiceGroup, IChoiceGroupOption, Checkbox, StackItem, mergeStyles } from 'office-ui-fabric-react';\nimport '../Proposal.scss';\nimport { IFormProps } from '../Models/IFormProps';\nimport { observer } from 'mobx-react';\nimport { WizardNavigationButtons } from './WizardNavigationFooter';\nimport { IStudyDesign } from '../Models/IProposal';\nimport ProposalFormValidation from './ProposalFormValidation';\n\nexport interface IStudyDescriptionProps extends IFormProps {\n typeOfStudyList: string[];\n studyDesignAList: string[];\n studyDesignBList: string[];\n studyDesignCList: string[];\n fieldsList: string[];\n}\n\nexport interface IStudyDescriptionState {\n showTypeOfStudyOther: boolean;\n showStudyDesign: boolean;\n showFieldOthers: boolean;\n}\n\n@observer\nexport class StudyDescription extends React.Component {\n\n constructor(props: any) {\n super(props);\n this.state = {\n showTypeOfStudyOther: false,\n showStudyDesign: false,\n showFieldOthers: false\n }\n }\n\n public componentDidMount() {\n this.setState({\n showTypeOfStudyOther: this.props.proposal.typeOfStudy == \"Other\",\n showStudyDesign: (this.props.proposal.typeOfStudy == \"Animal\" || this.props.proposal.typeOfStudy == \"Clinical\"),\n showFieldOthers: this.props.proposal.fields ? this.props.proposal.fields.some(x => x == \"Others\") : false\n });\n }\n\n private onDropdownChange = (event: any, option?: IDropdownOption, index?: number): void => {\n if (option) {\n this.props.proposal.typeOfStudy = option?.text;\n this.props.proposal.typeOfStudyOther = \"\";\n this.props.proposal.studyDesign = {};\n this.props.proposal.studyDesign.groupA = this.props.studyDesignAList[0];\n this.props.proposal.studyDesign.groupB = this.props.studyDesignBList[0];\n this.props.proposal.studyDesign.groupC = this.props.studyDesignCList[0];\n this.setState({\n showTypeOfStudyOther: this.props.proposal.typeOfStudy == \"Other\",\n showStudyDesign: (this.props.proposal.typeOfStudy == \"Animal\" || this.props.proposal.typeOfStudy == \"Clinical\"),\n });\n }\n }\n\n private onChoiceGroupAChange = (ev?: React.FormEvent, option?: IChoiceGroupOption): void => {\n if (option) {\n let studyDesign: IStudyDesign = { ...this.props.proposal.studyDesign };\n if (!studyDesign)\n studyDesign = {};\n studyDesign.groupA = option.key;\n this.props.proposal.studyDesign = studyDesign;\n }\n if (option?.key == \"Retrospective\") {\n this.props.proposal.studyDesign.groupB = \"\";\n this.props.proposal.studyDesign.groupC = \"\";\n }\n }\n\n private onChoiceGroupBChange = (ev?: React.FormEvent, option?: IChoiceGroupOption): void => {\n if (option) {\n let studyDesign: IStudyDesign = { ...this.props.proposal.studyDesign };\n if (!studyDesign)\n studyDesign = {};\n studyDesign.groupB = option.key;\n this.props.proposal.studyDesign = studyDesign;\n }\n if (option?.key == \"Single-arm\") {\n // no \n this.props.proposal.studyDesign.groupC = \"\";\n // no nTotal if Single arm\n if (this.props.proposal.sampleSize) {\n delete this.props.proposal.sampleSize.nPerGroup;\n }\n } \n }\n\n private onChoiceGroupCChange = (ev?: React.FormEvent, option?: IChoiceGroupOption): void => {\n if (option) {\n let studyDesign: IStudyDesign = { ...this.props.proposal.studyDesign };\n if (!studyDesign)\n studyDesign = {};\n studyDesign.groupC = option.key;\n this.props.proposal.studyDesign = studyDesign;\n }\n }\n\n public render() {\n const columnProps1: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"20%\" } },\n };\n\n const columnProps2: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"30%\" } },\n };\n\n const columnProps3: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"50%\" } },\n };\n\n const columnProps4: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"70%\" } },\n };\n\n const columnProps5: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"80%\" } },\n };\n\n const dropdownStyles: Partial = {\n dropdown: { width: 300 }, \n };\n\n const optionsForTypeOfStudy: IDropdownOption[] = [];\n this.props.typeOfStudyList.map((type) =>\n optionsForTypeOfStudy.push({ key: type, text: type })\n );\n\n const optionsForStudyDesignA: IChoiceGroupOption[] = [];\n this.props.studyDesignAList.map((type) =>\n optionsForStudyDesignA.push({ key: type, text: type })\n );\n const optionsForStudyDesignB: IChoiceGroupOption[] = [];\n this.props.studyDesignBList.map((type) =>\n optionsForStudyDesignB.push({ key: type, text: type })\n );\n const optionsForStudyDesignC: IChoiceGroupOption[] = [];\n this.props.studyDesignCList.map((type) =>\n optionsForStudyDesignC.push({ key: type, text: type })\n );\n\n const styleError:string = mergeStyles({\n fontFamily: 'Segoe UI, Segoe UI Web (West European), Segoe UI, -apple-system, BlinkMacSystemFont, Roboto, Helvetica Neue, sans-serif', \n fontSize: '12px',\n fontWeight: 400,\n color: 'rgb(164, 38, 44)',\n margin: '0px',\n paddingTop: '5px',\n display: 'flex',\n alignItems: 'center'\n }); \n\n return (\n \n \n {\n this.props.isReadonly && \n }\n {\n !this.props.isReadonly &&

Study Description

\n }\n
\n \n \n \n {\n this.props.proposal.studyTitle = newValue;\n }}>\n\n {\n this.props.proposal.summary = newValue;\n }}>\n\n {\n this.props.proposal.backgroundRatione = newValue;\n }}>\n\n {\n this.props.proposal.studyHypothesis = newValue;\n }}>\n\n \n {\n this.props.isReadonly &&\n \n }\n {\n !this.props.isReadonly &&\n \n }\n {\n this.state.showTypeOfStudyOther &&\n {\n this.props.proposal.typeOfStudyOther = newValue;\n }}>\n }\n \n\n {\n this.state.showStudyDesign &&\n
\n Study Design\n {\n this.props.isReadonly &&\n \n }\n {\n !this.props.isReadonly &&\n \n }\n
\n {\n this.props.isReadonly &&\n <>
\n }\n {\n !this.props.isReadonly && this.props.proposal.studyDesign?.groupA != \"Retrospective\" &&\n <>
\n }\n \n {\n this.props.isReadonly &&\n \n }\n {\n !this.props.isReadonly && this.props.proposal.studyDesign?.groupB != \"Single-arm\" && !this.props.isReadonly && this.props.proposal.studyDesign?.groupA != \"Retrospective\" &&\n <>\n }\n
\n }\n\n\n
\n Fields *\n {\n this.props.isReadonly &&\n \n {\n this.props.fieldsList.map((field, idx) => {\n if (field != \"All above\") {\n let checked = this.props.proposal.fields ? this.props.proposal.fields.some(x => x == field) : false;\n if (checked === true)\n return ;\n }\n })\n }\n {\n this.props.proposal.fields?.map((field, index) => {\n if (field === \"Others\") {\n return ;\n }\n })\n }\n \n }\n {\n !this.props.isReadonly &&\n \n {\n this.props.fieldsList.map((field, idx) => {\n if (field != \"All above\") {\n let checked = this.props.proposal.fields ? this.props.proposal.fields.some(x => x == field) : false;\n return , isChecked?: boolean) => {\n if (!this.props.proposal.fields)\n this.props.proposal.fields = [];\n\n if (!isChecked) {\n this.props.proposal.fields = this.props.proposal.fields.filter(x => x != field);\n }\n else {\n this.props.proposal.fields.push(field)\n }\n\n }} />;\n }\n })\n }\n \n , isChecked?: boolean) => {\n if (!this.props.proposal.fields)\n this.props.proposal.fields = [];\n\n if (!isChecked) {\n this.props.proposal.fieldOthers = \"\";\n this.props.proposal.fields = this.props.proposal.fields.filter(x => x != \"Others\");\n }\n else {\n this.props.proposal.fields.push(\"Others\")\n }\n this.setState({ showFieldOthers: isChecked ? isChecked : false });\n\n }} />\n {\n this.state.showFieldOthers &&\n {\n this.props.proposal.fieldOthers = newValue;\n }}>\n }\n \n \n }\n \n
\n {\n this.props.showWizardNavigation && \n \n \n }\n
\n );\n\n }\n}","import * as React from 'react';\nimport { Icon, INavLink, INavLinkGroup, IRenderFunction, Nav } from 'office-ui-fabric-react';\n\nconst navLinkGroups: INavLinkGroup[] = [\n {\n name: 'Menu',\n links: [\n { name: 'Study Team', url: '', key: '1' },\n { name: 'Study Description', url: '', key: '2' },\n { name: 'Study Power', url: '', key: '3' },\n { name: 'Study Interventions', url: '', key: '4' },\n { name: 'Materials and Methods', url: '', key: '5' },\n { name: 'Requested Support', url: '', key: '6' },\n { name: 'Project Plan', url: '', key: '7' },\n { name: 'Attachment', url: '', key: '8' },\n { name: 'Summary', url: '', key: '9' },\n ],\n },\n];\n\nconst onRenderLink = (errors: string[], props?: INavLink, defaultRender?: (props?: INavLink) => JSX.Element | null): JSX.Element | null =>{\n if(errors && errors.indexOf(props.name)!==-1){\n props.icon = \"Error\";\n } else {\n props.icon = null;\n }\n return {defaultRender(props)}; \n};\n\nconst NavMenu = (props: any) => {\n let errors = props?.errors; \n return (\n , item?: INavLink) => { props.goToStep(Number(item?.key)) }}\n selectedKey={props.currentStep.toString()}\n />\n );\n};\n\nfunction onRenderGroupHeader(group: INavLinkGroup | undefined): JSX.Element {\n return

{group?.name}

;\n}\n\n\nexport default NavMenu;","import * as React from 'react';\nimport { css, Stack, PrimaryButton, Text, getTheme, INavLinkGroup, Nav, IStackProps, INavLink, TextField, Label, IconButton, IDropdownOption, Dropdown, IDropdownStyles, StackItem } from 'office-ui-fabric-react';\nimport '../Proposal.scss';\nimport { IFormProps } from '../Models/IFormProps';\nimport { WizardNavigationButtons } from './WizardNavigationFooter';\nimport ProposalFormValidation from './ProposalFormValidation';\nimport { observer } from 'mobx-react';\n\n\nexport interface IStudyPowerProps extends IFormProps {\n}\n\nexport interface IStudyPowerState {\n}\n\n@observer\nexport class StudyPower extends React.Component {\n\n constructor(props: any) {\n super(props);\n this.state = {\n\n }\n }\n\n public componentDidMount() {\n }\n\n private onRenderGroupHeader(group: INavLinkGroup | undefined): JSX.Element {\n return

{group?.name}

;\n }\n\n private onLinkClick(ev?: React.MouseEvent, item?: INavLink) {\n alert(item?.name);\n }\n\n public render() {\n const columnProps1: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"20%\" } },\n };\n\n const columnProps2: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"30%\" } },\n };\n\n const columnProps3: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"50%\" } },\n };\n\n const columnProps4: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"70%\" } },\n };\n\n const columnProps5: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"80%\" } },\n };\n\n const columnProps6: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"40%\" } },\n };\n\n let nTotalStyle = this.props.proposal.studyDesign?.groupB != \"Single-arm\" ? columnProps2 : columnProps3;\n let anticipatedDropOutRateStyle = this.props.proposal.studyDesign?.groupB != \"Single-arm\" ? columnProps6 : columnProps3;\n\n return (\n \n \n {\n this.props.isReadonly && \n }\n {\n !this.props.isReadonly &&

Study Power

\n }\n
\n \n \n \n \n \n {\n if (!this.props.proposal.sampleSize)\n this.props.proposal.sampleSize = {};\n this.props.proposal.sampleSize.nTotal = Number(newValue);\n }}>\n \n {\n this.props.proposal.studyDesign?.groupB != \"Single-arm\" &&\n \n {\n if (!this.props.proposal.sampleSize)\n this.props.proposal.sampleSize = {};\n this.props.proposal.sampleSize.nPerGroup = Number(newValue);\n }}>\n \n }\n\n \n {\n if (!this.props.proposal.sampleSize)\n this.props.proposal.sampleSize = {};\n this.props.proposal.sampleSize.anticipatedDropOutRate = Number(newValue);\n }}>\n \n \n \n {\n if (!this.props.proposal.sampleSize) {\n this.props.proposal.sampleSize = {};\n console.log(\"Empty\");\n }\n this.props.proposal.sampleSize.powerAnalysis = newValue;\n }}>\n\n {\n this.props.showWizardNavigation && \n \n \n }\n
\n );\n\n }\n}","import * as React from 'react';\nimport { css, Stack, PrimaryButton, Text, getTheme, INavLinkGroup, Nav, IStackProps, INavLink, TextField, Label, IconButton, IDropdownOption, Dropdown, IDropdownStyles, StackItem } from 'office-ui-fabric-react';\nimport '../Proposal.scss';\nimport { IFormProps } from '../Models/IFormProps';\nimport { observer } from 'mobx-react';\nimport { WizardNavigationButtons } from './WizardNavigationFooter';\nimport ProposalFormValidation from './ProposalFormValidation';\n\nexport interface IStudyIntervensionsProps extends IFormProps {\n}\n\nexport interface IStudyIntervensionsState {\n showControlArm: boolean;\n}\n\n@observer\nexport class StudyIntervensions extends React.Component {\n\n constructor(props: any) {\n super(props);\n this.state = {\n showControlArm: false\n }\n }\n\n public componentDidMount() {\n this.setState({\n showControlArm: this.props.proposal.studyDesign?.groupB == \"Controlled\"\n });\n }\n\n private onRenderGroupHeader(group: INavLinkGroup | undefined): JSX.Element {\n return

{group?.name}

;\n }\n\n private onLinkClick(ev?: React.MouseEvent, item?: INavLink) {\n alert(item?.name);\n }\n\n public render() {\n const columnProps1: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"20%\" } },\n };\n\n const columnProps2: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"30%\" } },\n };\n\n const columnProps3: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"50%\" } },\n };\n\n const columnProps4: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"70%\" } },\n };\n\n const columnProps5: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"80%\" } },\n };\n\n const columnProps6: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"40%\" } },\n };\n\n if (!this.props.proposal.additionalStudyArms || this.props.proposal.additionalStudyArms.length == 0) {\n this.props.proposal.additionalStudyArms = [];\n this.props.proposal.additionalStudyArms.push({});\n }\n\n\n\n return (\n \n \n {\n this.props.isReadonly && \n }\n {\n !this.props.isReadonly &&

Study Intervensions

\n }\n
\n \n \n \n \n \n \n {\n if (!this.props.proposal.studyIntTestArm)\n this.props.proposal.studyIntTestArm = {};\n this.props.proposal.studyIntTestArm.device = newValue;\n }}>\n {\n if (!this.props.proposal.studyIntTestArm)\n this.props.proposal.studyIntTestArm = {};\n this.props.proposal.studyIntTestArm.name = newValue;\n }}>\n {\n if (!this.props.proposal.studyIntTestArm)\n this.props.proposal.studyIntTestArm = {};\n this.props.proposal.studyIntTestArm.description = newValue;\n }}>\n \n \n\n {\n this.state.showControlArm &&\n \n \n \n {\n if (!this.props.proposal.controlIntControlArm)\n this.props.proposal.controlIntControlArm = {};\n this.props.proposal.controlIntControlArm.device = newValue;\n }}>\n {\n if (!this.props.proposal.controlIntControlArm)\n this.props.proposal.controlIntControlArm = {};\n this.props.proposal.controlIntControlArm.name = newValue;\n }}>\n {\n if (!this.props.proposal.controlIntControlArm)\n this.props.proposal.controlIntControlArm = {};\n this.props.proposal.controlIntControlArm.description = newValue;\n }}>\n \n \n }\n\n
\n Additional Study arms\n \n \n \n {\n if (this.props.proposal.additionalStudyArms)\n this.props.proposal.additionalStudyArms[0].device = newValue;\n }}>\n {\n if (this.props.proposal.additionalStudyArms)\n this.props.proposal.additionalStudyArms[0].name = newValue;\n }}>\n {\n if (this.props.proposal.additionalStudyArms)\n this.props.proposal.additionalStudyArms[0].description = newValue;\n }}>\n \n {\n !this.props.isReadonly &&\n {\n this.props.proposal.additionalStudyArms?.push({});\n }} />\n }\n \n {\n this.props.proposal.additionalStudyArms?.map((item, index) => {\n if (index != 0) {\n return
\n
\n \n \n {\n item.device = newValue;\n }}>\n {\n item.name = newValue;\n }}>\n {\n item.description = newValue;\n }}>\n \n {\n !this.props.isReadonly &&\n {\n this.props.proposal.additionalStudyArms?.splice(index, 1);\n }} />\n }\n \n
;\n }\n })\n }\n
\n
\n\n\n\n {\n this.props.showWizardNavigation && \n \n \n }\n
\n );\n\n }\n}","import * as React from 'react';\nimport { css, Stack, PrimaryButton, Text, getTheme, INavLinkGroup, Nav, IStackProps, INavLink, TextField, Label, IconButton, IDropdownOption, Dropdown, IDropdownStyles, StackItem } from 'office-ui-fabric-react';\nimport '../Proposal.scss';\nimport { IFormProps } from '../Models/IFormProps';\nimport { observer } from 'mobx-react';\nimport { WizardNavigationButtons } from './WizardNavigationFooter';\nimport ProposalFormValidation from './ProposalFormValidation';\n\nexport interface IMaterialsAndMethodesProps extends IFormProps {\n}\n\nexport interface IMaterialsAndMethodesState {\n isAnimalOrClinical: boolean;\n}\n\n@observer\nexport class MaterialsAndMethodes extends React.Component {\n\n constructor(props: any) {\n super(props);\n this.state = {\n isAnimalOrClinical: false\n }\n }\n\n public componentDidMount() {\n \n\n this.setState({\n isAnimalOrClinical: (this.props.proposal.typeOfStudy == \"Animal\" || this.props.proposal.typeOfStudy == \"Clinical\")\n }, () => {\n if (this.props.proposal.materialMethode) {\n if (this.state.isAnimalOrClinical) {\n this.props.proposal.materialMethode.materialExperimentalSetup = undefined;\n }\n else {\n this.props.proposal.materialMethode.populationIndication = undefined;\n this.props.proposal.materialMethode.treatments = undefined;\n this.props.proposal.materialMethode.experimentalProcedures = undefined;\n }\n }\n });\n }\n\n public render() {\n const columnProps1: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"20%\" } },\n };\n\n const columnProps2: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"30%\" } },\n };\n\n const columnProps3: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"50%\" } },\n };\n\n const columnProps4: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"70%\" } },\n };\n\n const columnProps5: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"80%\" } },\n };\n\n const columnProps6: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"40%\" } },\n };\n\n if (!this.props.proposal.secondaryOutcomeParam || this.props.proposal.secondaryOutcomeParam.length == 0) {\n this.props.proposal.secondaryOutcomeParam = [];\n this.props.proposal.secondaryOutcomeParam.push({});\n }\n\n return (\n \n \n {\n this.props.isReadonly && \n }\n {\n !this.props.isReadonly &&

Materials and Methods

\n }\n
\n \n \n \n \n \n {\n this.state.isAnimalOrClinical &&\n <>\n {\n if (!this.props.proposal.materialMethode)\n this.props.proposal.materialMethode = {};\n this.props.proposal.materialMethode.populationIndication = newValue;\n }}>\n {\n if (!this.props.proposal.materialMethode)\n this.props.proposal.materialMethode = {};\n this.props.proposal.materialMethode.treatments = newValue;\n }}>\n {\n if (!this.props.proposal.materialMethode)\n this.props.proposal.materialMethode = {};\n this.props.proposal.materialMethode.experimentalProcedures = newValue;\n }}>\n \n }\n {\n !this.state.isAnimalOrClinical &&\n {\n if (!this.props.proposal.materialMethode)\n this.props.proposal.materialMethode = {};\n this.props.proposal.materialMethode.materialExperimentalSetup = newValue;\n }}>\n }\n\n \n\n \n \n {\n this.props.proposal.statisticalMethods = newValue;\n }}>\n \n \n \n \n {\n if (!this.props.proposal.primaryOutcomeParam)\n this.props.proposal.primaryOutcomeParam = {};\n this.props.proposal.primaryOutcomeParam.name = newValue;\n }}>\n {\n if (!this.props.proposal.primaryOutcomeParam)\n this.props.proposal.primaryOutcomeParam = {};\n this.props.proposal.primaryOutcomeParam.description = newValue;\n }}>\n {\n if (!this.props.proposal.primaryOutcomeParam)\n this.props.proposal.primaryOutcomeParam = {};\n this.props.proposal.primaryOutcomeParam.baseline = newValue;\n }}>\n {\n if (!this.props.proposal.primaryOutcomeParam)\n this.props.proposal.primaryOutcomeParam = {};\n this.props.proposal.primaryOutcomeParam.endpoint = newValue;\n }}>\n \n \n\n
\n Secondary outcome parameters\n \n \n \n {\n if (this.props.proposal.secondaryOutcomeParam)\n this.props.proposal.secondaryOutcomeParam[0].name = newValue;\n }}>\n {\n if (this.props.proposal.secondaryOutcomeParam)\n this.props.proposal.secondaryOutcomeParam[0].description = newValue;\n }}>\n {\n if (this.props.proposal.secondaryOutcomeParam)\n this.props.proposal.secondaryOutcomeParam[0].baseline = newValue;\n }}>\n {\n if (this.props.proposal.secondaryOutcomeParam)\n this.props.proposal.secondaryOutcomeParam[0].endpoint = newValue;\n }}>\n \n {\n !this.props.isReadonly &&\n {\n this.props.proposal.secondaryOutcomeParam?.push({});\n }} />\n }\n \n {\n this.props.proposal.secondaryOutcomeParam?.map((item, index) => {\n if (index != 0) {\n return
\n
\n \n \n {\n item.name = newValue;\n }}>\n {\n item.description = newValue;\n }}>\n {\n item.baseline = newValue;\n }}>\n {\n item.endpoint = newValue;\n }}>\n \n {\n !this.props.isReadonly &&\n {\n this.props.proposal.secondaryOutcomeParam?.splice(index, 1);\n }} />\n }\n \n
;\n }\n })\n }\n
\n
\n\n {\n this.props.showWizardNavigation && \n \n \n }\n
\n );\n\n }\n}","export default class HttpService {\n\n public static async get(url: string, body?: any, headers?: any): Promise {\n return new Promise(async (resolve, reject)=>{\n let response: Response;\n\n let baseHeaders = {\n 'Accept': 'application/json'\n };\n\n try{\n // add bearer if present\n if (window.sessionStorage.authToken) {\n let authToken = JSON.parse(window.sessionStorage.authToken);\n (baseHeaders)[\"Authorization\"] = `Bearer ${authToken.token}`;\n }\n\n if (headers) {\n baseHeaders = { ...baseHeaders, ...headers };\n }\n\n if (body)\n response = await fetch(url, {\n method: 'GET',\n cache: 'no-cache',\n headers: baseHeaders,\n body: JSON.stringify(body)\n });\n else\n response = await fetch(url, {\n method: 'GET',\n cache: 'no-cache',\n headers: baseHeaders,\n });\n\n if (response.ok)\n return response.json().then((result)=>{\n resolve(result);\n });\n else if (response.status == 401) {\n window.sessionStorage.removeItem(\"authToken\");\n window.sessionStorage.removeItem(\"rsmUser\");\n reject(\"Authentication Token Expired. Please sign in again.\");\n }\n else if(response.status == 403){\n reject(\"Unauthorized\");\n }\n else{\n try{\n return response.json().then((err)=>{\n reject(`Http Get Error: ${err?.title}`);\n }).catch((ierr)=>{\n console.dir(ierr);\n reject(ierr); \n });\n }catch(ex){\n reject(\"Unauthorized\");\n }\n }\n }catch(ex){\n reject((ex).message);\n }\n });\n }\n\n public static async post(url: string, body?: any, headers?: any): Promise {\n return new Promise(async (resolve, reject) => { \n let baseHeaders = {\n 'Accept': 'application/json'\n };\n if (headers) {\n baseHeaders = { ...baseHeaders, ...headers };\n }\n\n // only add an authorization header if it doesn't exist already\n if(!(baseHeaders)[\"Authorization\"] || (baseHeaders)[\"Authorization\"].length==0){\n // add bearer if present\n if (window.sessionStorage.authToken) {\n let authToken = JSON.parse(window.sessionStorage.authToken);\n (baseHeaders)[\"Authorization\"] = `Bearer ${authToken.token}`;\n }\n }\n\n let response: Response;\n try {\n if (body) {\n response = await fetch(url, {\n method: 'POST',\n cache: 'no-cache',\n headers: {\n 'Content-Type': 'application/json',\n ...baseHeaders,\n },\n body: JSON.stringify(body)\n });\n } else {\n response = await fetch(url, {\n method: 'POST',\n cache: 'no-cache',\n headers: baseHeaders\n });\n }\n\n if (response.ok)\n return response.json().then((result)=>{\n resolve(result);\n });\n else if (response.status == 401) {\n window.sessionStorage.removeItem(\"authToken\");\n window.sessionStorage.removeItem(\"rsmUser\");\n reject(\"Authentication Token Expired. Please sign in again.\");\n }\n else\n return response.json().then((err) => { \n let errorMessage = err;\n if(err?.detail){\n errorMessage = err?.detail;\n }\n reject(errorMessage);\n });\n } catch (err) {\n let ex = err as any;\n if (err && ex.message && ex.message.indexOf(\"Unauthorized\") !== -1) {\n window.sessionStorage.removeItem(\"authToken\");\n window.sessionStorage.removeItem(\"rsmUser\");\n reject(\"Authentication Token Expired. Please sign in again.\");\n } else{\n reject(ex.message);\n }\n }\n });\n }\n}","import HttpService from \"./HttpService\";\nimport { IMaterial } from \"../components/Proposal/Models/IMaterial\";\n\nexport interface IMaterialSearchResult {\n result: IMaterial[],\n error: any\n}\n\nexport class MaterialSearch {\n\n private static readonly AZURE_MATERIAL_SEARCH_URL = `https://stgtheobald.servicebus.windows.net/ecs/ws/custom/SearchMaterialWebService/SearchMaterial/`; \n\n public static searchMaterial(keywords: string, isLongTextSearch:boolean=false): Promise {\n return HttpService.post(`${MaterialSearch.AZURE_MATERIAL_SEARCH_URL}?keyword=${keywords}&longtext=${isLongTextSearch?'X':''}`, null, {\n 'Authorization': 'Apikey 79B4163144F74D11A7B0236480F0DB39'\n }).then((results: IMaterialSearchResult) => {\n //return results?.result.map((entry, idx)=>{ return { Index: idx, ...entry}; });\n return results?.result;\n });\n } \n\n public static logErrorInConsole(errorArea: string, errorObj: any) {\n this.logError(errorObj.message);\n console.log(`Error message ${errorArea}: `, errorObj.message);\n console.log(`Error Stack Trace ${errorArea}: `, errorObj.stack);\n }\n\n private static logError(msg: any) {\n if (console) {\n console.log(`%cERROR:`, \"color:red;font-weight:bold;font-size:16px\");\n console.log(msg);\n }\n } \n}\n\n","import * as React from 'react';\nimport * as _ from 'lodash';\nimport styles from './FilterBox.module.scss';\nimport { Label, TextField, IconButton, IStyleFunctionOrObject, ITextField } from 'office-ui-fabric-react';\nimport { ITextFieldStyles, ITextFieldStyleProps } from 'office-ui-fabric-react/lib/TextField';\nimport { concatStyleSets, mergeStyleSets, IStyleSet, mergeStyles, IStyle } from 'office-ui-fabric-react/lib/Styling';\n\nexport interface IFilterBoxProps {\n onFilterTriggered: (filter: string) => void;\n onFilterCleared: () => void;\n delay: number;\n mainStyle?: React.CSSProperties;\n labelStyle?: React.CSSProperties;\n iconStyle?: React.CSSProperties;\n labelText?: string;\n placeHolder?: string;\n\n filter: string;\n\n styles?: IFilterBoxStyles;\n}\n\nexport interface IFilterBoxStyles {\n root?: IStyle;\n label?: IStyle;\n textField?: Partial;\n}\n\nexport interface IFilterBoxState {\n filter: string;\n filtered: boolean;\n labelText?: string;\n placeHolder?: string;\n}\n\nexport class FilterBox extends React.Component{\n\n private static filterTypingTimeoutRef:any = null;\n private textBox:ITextField = null;\n\n constructor(props: IFilterBoxProps) {\n super(props);\n\n this.state = {\n filter: props.filter,\n filtered: !!props.filter,\n labelText: props.labelText ? props.labelText : null,\n placeHolder: props.placeHolder\n };\n }\n\n public componentWillReceiveProps(newProps: IFilterBoxProps) {\n if(this.props.filter != newProps.filter){\n this.setState({filter: newProps.filter, filtered: !!newProps.filter});\n }\n\n if (this.state.labelText != newProps.labelText) {\n this.setState({ labelText: newProps.labelText });\n }\n\n if (this.state.placeHolder != newProps.placeHolder) {\n this.setState({ placeHolder: newProps.placeHolder });\n }\n }\n\n private onFilterEnterPressed = (): void => {\n // if enter was pressed, trigger filter immediately\n if (FilterBox.filterTypingTimeoutRef) {\n window.clearTimeout(FilterBox.filterTypingTimeoutRef);\n FilterBox.filterTypingTimeoutRef = null;\n }\n this.triggerFiltering();\n }\n\n private onFilterChanged = (event: React.FormEvent, newValue?: string): void => {\n this.setState({\n filter: newValue && newValue.trim().length !== 0 ? newValue.toLowerCase() : null,\n filtered: !!newValue\n });\n\n if (FilterBox.filterTypingTimeoutRef) {\n window.clearTimeout(FilterBox.filterTypingTimeoutRef);\n FilterBox.filterTypingTimeoutRef = null;\n }\n\n FilterBox.filterTypingTimeoutRef = window.setTimeout(() => {\n FilterBox.filterTypingTimeoutRef = null;\n this.triggerFiltering();\n }, this.props.delay);\n }\n\n private triggerFiltering = (): void => {\n this.setState({\n filtered: !!this.state.filter\n });\n\n if (this.props.onFilterTriggered) {\n this.props.onFilterTriggered(this.state.filter);\n }\n }\n\n public clearFilter = (skipEvent: boolean = false): void => {\n this.setState({\n filter: null,\n filtered: false\n });\n\n if (!skipEvent && this.props.onFilterCleared) {\n this.props.onFilterCleared();\n }\n }\n\n private onClearFilterClicked = (): void => {\n this.clearFilter(false);\n }\n\n public focus = (): void =>{\n if(this.textBox){\n this.textBox.focus();\n this.textBox.setSelectionStart(0);\n this.textBox.setSelectionEnd(this.textBox.value.length);\n }\n }\n\n private setTextFieldRef = (fieldRef: ITextField):void =>{\n this.textBox = fieldRef;\n }\n\n public render(): React.ReactElement {\n let rootStyles:IStyle[] = [{ marginTop: '4px', display: 'inline-flex' }];\n if(this.props.styles?.root){\n rootStyles.push(this.props.styles?.root);\n }\n let rootClassName = mergeStyles(rootStyles);\n\n let labelStyles:IStyle[] = [{ marginRight: '10px' }];\n if(this.props.styles?.label){\n labelStyles.push(this.props.styles?.label);\n }\n //let label = this.props.styles && this.props.styles.label ? this.props.styles.label : { marginRight: '10px' };\n let labelClassName = mergeStyles(labelStyles);\n\n //let textFieldStyles = this.props.styles && this.props.styles.textField ? this.props.styles.textField : null;\n let iconStyle: React.CSSProperties = this.props.iconStyle || { backgroundColor: 'transparent', color: 'inherit' };\n\n let textFieldStyles:Partial = {field:{selectors:{\"::placeholder\":{color:'#ccc',fontStyle:'italic'}}}};\n if(this.props.styles && this.props.styles.textField){\n textFieldStyles = _.merge(textFieldStyles, this.props.styles.textField);\n }\n \n\n return (\n \n
\n {\n this.state.labelText ? : null\n } \n ) => { if (event.keyCode === 13) { this.onFilterEnterPressed(); } }}>\n \n
\n
\n );\n }\n\n}","import * as React from 'react';\nimport { css, Stack, PrimaryButton, Text, getTheme, INavLinkGroup, Nav, IStackProps, INavLink, TextField, Label, IconButton, IDropdownOption, Dropdown, IDropdownStyles, Toggle, ChoiceGroup, IChoiceGroupOption, StackItem, Dialog, Button, Modal, List, DetailsList, Selection, SelectionMode, DetailsListLayoutMode, Spinner, ISelection, IObjectWithKey, ISelectionOptions, IRenderFunction, IDetailsRowProps, DetailsRow, Checkbox, ScrollablePane, ScrollbarVisibility, IDetailsHeaderProps, IDetailsColumnRenderTooltipProps, TooltipHost, Sticky, StickyPositionType, DefaultButton, IRefObject, ITextField, mergeStyles } from 'office-ui-fabric-react';\nimport '../Proposal.scss';\nimport { IFormProps } from '../Models/IFormProps';\nimport { observer } from 'mobx-react';\nimport { WizardNavigationButtons } from './WizardNavigationFooter';\nimport { MaterialSearch } from '../../../dataprovider/MaterialSearch';\nimport { IMaterial } from '../Models/IMaterial';\nimport { IMaterialSupportItem } from '../Models/IProposal';\nimport { FilterBox } from './FilterComponent/FilterBox';\nimport ProposalFormValidation from './ProposalFormValidation';\n\nexport interface IRequestedSupportProps extends IFormProps {\n}\n\nexport interface IRequestedSupportState {\n isFundsRequested?: boolean;\n isStudyMaterialRequested?: boolean;\n showDisc: boolean;\n isSearchDialogOpen: boolean;\n showSearchButton: boolean[];\n\n txtMatSearchValue: string;\n matSearchResults: IMaterial[];\n isSearching: boolean;\n selectedMaterial: any[];\n searchItemIndex: number;\n resultFilter: string;\n filteredSearchResults: IMaterial[];\n isFulltextSearch: boolean;\n\n searchError: string;\n}\n\n@observer\nexport class RequestedSupport extends React.Component {\n private materialSelection: ISelection;\n private matSearchField: IRefObject;\n\n constructor(props: any) {\n super(props);\n this.state = {\n isFundsRequested: false,\n isStudyMaterialRequested: false,\n showDisc: false,\n isSearchDialogOpen: false,\n showSearchButton: [true],\n\n txtMatSearchValue: null,\n matSearchResults: null,\n isSearching: false,\n selectedMaterial: null,\n searchItemIndex: null,\n resultFilter: null,\n filteredSearchResults: null,\n isFulltextSearch: false,\n\n searchError: null\n }\n\n this.materialSelection = new Selection({\n canSelectItem: (item: IObjectWithKey, index?: number) => {\n return true;\n },\n onSelectionChanged: () => {\n console.log(\"Selection changed\");\n this.setState({ selectedMaterial: this.materialSelection.getSelection() });\n console.dir(this.materialSelection.getSelection());\n }\n });\n\n this.matSearchField = React.createRef();\n }\n\n public componentDidMount() {\n this.setState({\n isFundsRequested: this.props.proposal.fundsRequested ? this.props.proposal.fundsRequested : false,\n isStudyMaterialRequested: this.props.proposal.materialSupportRequested ? this.props.proposal.materialSupportRequested : false,\n showDisc: this.props.proposal.typeOfStudy === \"In-vitro\"\n });\n }\n\n private onFundsRequestedChange = (ev: React.MouseEvent, checked?: boolean) => {\n this.setState({ isFundsRequested: checked }, () => {\n this.props.proposal.fundsRequested = this.state.isFundsRequested;\n });\n }\n\n private onStudyMaterialRequestedChange = (ev: React.MouseEvent, checked?: boolean) => {\n this.setState({ isStudyMaterialRequested: checked }, () => {\n this.props.proposal.materialSupportRequested = this.state.isStudyMaterialRequested;\n });\n }\n\n private onChoiceGroupChange = (ev?: React.FormEvent, option?: IChoiceGroupOption): void => {\n if (option) {\n if (!this.props.proposal.funds)\n this.props.proposal.funds = {};\n this.props.proposal.funds.currency = option.key;\n }\n }\n\n private setShowSearch = (idx: number, value: boolean) => {\n this.setState((prevState, props) => {\n let newShowSearch = [...prevState.showSearchButton];\n newShowSearch[idx] = value;\n return {\n showSearchButton: newShowSearch\n };\n });\n };\n\n private onKeyUp = (event: React.KeyboardEvent) => {\n if (event.key === 'Enter') {\n this.searchMaterial();\n }\n }\n\n public render() {\n const columnProps0: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"6%\" } },\n };\n const columnProps1: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"20%\" } },\n };\n\n const columnProps2: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"30%\" } },\n };\n\n const columnProps3: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"50%\" } },\n };\n\n const columnProps4: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"70%\" } },\n };\n\n const columnProps5: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"80%\" } },\n };\n\n const columnProps6: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"10%\" } },\n };\n\n const columnProps7: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: \"60%\" } },\n };\n const columnPropsbtn: Partial = {\n tokens: { childrenGap: 10 },\n styles: { root: { width: '32px' } },\n };\n\n if (!this.props.proposal.funds) {\n this.props.proposal.funds = {};\n }\n if (!this.props.proposal.funds?.costItems || this.props.proposal.funds.costItems.length == 0) {\n this.props.proposal.funds.costItems = [];\n this.props.proposal.funds.costItems.push({});\n }\n\n if (!this.props.proposal.materialSupport || this.props.proposal.materialSupport.length == 0) {\n this.props.proposal.materialSupport = [];\n this.props.proposal.materialSupport.push({});\n }\n\n if (!this.props.proposal.disc || this.props.proposal.disc.length == 0) {\n this.props.proposal.disc = [];\n this.props.proposal.disc.push({});\n }\n\n const styleError: string = mergeStyles({\n fontFamily: 'Segoe UI, Segoe UI Web (West European), Segoe UI, -apple-system, BlinkMacSystemFont, Roboto, Helvetica Neue, sans-serif',\n fontSize: '12px',\n fontWeight: 400,\n color: 'rgb(164, 38, 44)',\n margin: '0px',\n paddingTop: '5px',\n display: 'flex',\n alignItems: 'center'\n });\n\n return (\n \n \n {\n this.props.isReadonly && \n }\n {\n !this.props.isReadonly &&

Requested Support

\n }\n
\n \n \n \n \n {\n this.props.isReadonly &&\n \n \n \n \n }\n {\n !this.props.isReadonly && \n }\n\n {\n this.state.isFundsRequested &&\n <>\n \n \n {\n this.props.isReadonly &&\n \n }\n \n {\n !this.props.isReadonly && \n }\n {\n !this.props.isReadonly && \n }\n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {\n if (this.props.proposal.funds?.costItems)\n this.props.proposal.funds.costItems[0].name = newValue;\n }}>\n \n \n {\n if (this.props.proposal.funds?.costItems)\n this.props.proposal.funds.costItems[0].budget = Number(newValue);\n this.props.proposalStore?.calculateFunds();\n }}>\n \n {\n !this.props.isReadonly &&\n {\n this.props.proposal.funds?.costItems?.push({});\n }} />\n }\n \n {\n this.props.proposal.funds.costItems?.map((item, index) => {\n if (index != 0) {\n return \n \n {\n item.name = newValue;\n }}>\n \n \n {\n item.budget = Number(newValue);\n this.props.proposalStore?.calculateFunds();\n }}>\n \n {\n !this.props.isReadonly &&\n {\n this.props.proposal.funds?.costItems?.splice(index, 1);\n this.props.proposalStore?.calculateFunds();\n }} />\n }\n ;\n }\n })\n }\n \n
\n \n\n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n {\n if (!this.props.proposal.funds)\n this.props.proposal.funds = {};\n\n if (!this.props.proposal.funds.overheadCosts)\n this.props.proposal.funds.overheadCosts = {};\n\n this.props.proposal.funds.overheadCosts.percent = Number(newValue);\n this.props.proposalStore?.calculateFunds();\n }}>\n \n \n\n \n \n \n \n \n \n \n \n \n \n }\n
\n\n \n {\n this.props.isReadonly &&\n \n \n \n \n }\n {\n !this.props.isReadonly && \n }\n\n {\n this.state.isStudyMaterialRequested &&\n <>\n
\n Requested material support\n \n \n {\n !this.props.isReadonly &&\n \n
\n { this.setState({ isSearchDialogOpen: true, searchItemIndex: 0, txtMatSearchValue: this.props.proposal.materialSupport[0].description || this.props.proposal.materialSupport[0].articelNo || this.state.txtMatSearchValue }); }}\n hidden={!this.state.showSearchButton[0]}\n />\n
\n
\n }\n \n {\n if (this.props.proposal.materialSupport) {\n this.props.proposal.materialSupport[0].description = newValue;\n this.setShowSearch(0, !(newValue && newValue.length !== 0 && this.props.proposal.materialSupport[0].articelNo));\n }\n }}>\n \n \n {\n if (this.props.proposal.materialSupport) {\n this.props.proposal.materialSupport[0].articelNo = newValue;\n this.setShowSearch(0, !(newValue && newValue.length !== 0 && this.props.proposal.materialSupport[0].description));\n }\n }}>\n \n \n {\n if (this.props.proposal.materialSupport) {\n this.props.proposal.materialSupport[0].quantity = newValue;\n }\n }}>\n \n {\n !this.props.isReadonly &&\n { }} disabled={true} styles={{ root: { backgroundColor: 'white !important'}}} />\n }\n {\n !this.props.isReadonly &&\n {\n this.props.proposal.materialSupport?.push({});\n this.setState((prevState) => { return { showSearchButton: [...prevState.showSearchButton, true] }; })\n }} />\n }\n
\n {\n this.props.proposal.materialSupport?.map((item, index) => {\n if (index != 0) {\n return \n {!this.props.isReadonly &&\n \n
\n { this.setState({ isSearchDialogOpen: true, searchItemIndex: index, txtMatSearchValue: this.props.proposal.materialSupport[index].description || this.props.proposal.materialSupport[index].articelNo || this.state.txtMatSearchValue }); }}\n hidden={!this.state.showSearchButton[index]}\n />\n
\n
\n }\n \n {\n item.description = newValue;\n this.setShowSearch(index, !(newValue && newValue.length !== 0 && this.props.proposal.materialSupport[index].articelNo));\n }}>\n \n \n {\n item.articelNo = newValue;\n this.setShowSearch(index, !(newValue && newValue.length !== 0 && this.props.proposal.materialSupport[index].description));\n }}>\n \n \n {\n item.quantity = newValue;\n }}>\n \n {\n !this.props.isReadonly &&\n {\n this.props.proposal.materialSupport?.splice(index, 1);\n this.state.showSearchButton?.splice(index, 1);\n }} />\n }\n {\n !this.props.isReadonly &&\n {\n this.props.proposal.materialSupport?.push({});\n this.setState((prevState) => { return { showSearchButton: [...prevState.showSearchButton, true] }; })\n }} />\n }\n
;\n }\n })\n }\n
\n
\n\n {\n this.state.showDisc &&
\n Discs for in vitro studies\n \n \n \n {\n if (this.props.proposal.disc)\n this.props.proposal.disc[0].type = newValue;\n }}>\n \n \n {\n if (this.props.proposal.disc)\n this.props.proposal.disc[0].dimention = newValue;\n }}>\n \n \n {\n if (this.props.proposal.disc)\n this.props.proposal.disc[0].quantity = newValue;\n }}>\n \n {\n !this.props.isReadonly &&\n {\n this.props.proposal.disc?.push({});\n }} />\n }\n \n {\n this.props.proposal.disc?.map((item, index) => {\n if (index != 0) {\n return \n \n {\n item.type = newValue;\n }}>\n \n \n {\n item.dimention = newValue;\n }}>\n \n \n {\n item.quantity = newValue;\n }}>\n \n {\n !this.props.isReadonly &&\n {\n this.props.proposal.disc?.splice(index, 1);\n }} />\n }\n ;\n }\n })\n }\n \n
\n }\n \n }\n
\n\n {\n this.props.showWizardNavigation && \n \n \n }\n { this.setState({ isSearchDialogOpen: false, selectedMaterial: null, searchItemIndex: null }); }}\n >\n
\n { this.setState({ isSearchDialogOpen: false }); }} />\n

Material Search

\n
\n
\n
\n
\n
\n { this.setState({ isFulltextSearch: checked ? true : false }); }} />\n
\n {this.state?.searchError && <>}\n {this.state.matSearchResults ?\n
\n {/* style={{ position: 'relative' }} */}\n Search Results ({this.state.filteredSearchResults.length}{this.state.resultFilter ? ' filtered' : ''})\n {this.state.matSearchResults.length !== 0 ?\n <>\n \n
\n \n \n \n
\n
\n \n
\n \n : No Materials found, please try another search term\n }\n\n
\n : null\n }\n\n
\n
\n \n
\n );\n\n }\n\n private renderSearchResultsHeader = (props?: IDetailsHeaderProps, defaultRender?: (props?: IDetailsHeaderProps) => JSX.Element | null): JSX.Element | null => {\n if (!props) {\n return null;\n }\n const onRenderColumnHeaderTooltip: IRenderFunction =\n tooltipHostProps => (\n \n );\n return (\n \n {defaultRender!({\n ...props,\n onRenderColumnHeaderTooltip,\n })}\n \n );\n };\n\n private selectMaterial = () => {\n if (this.state.searchItemIndex !== null && this.state.searchItemIndex !== undefined) {\n let material = this.state.selectedMaterial[0] as IMaterial;\n this.props.proposal.materialSupport[this.state.searchItemIndex] = {\n articelNo: material.MaterialNum,\n description: material.Description,\n quantity: this.props.proposal.materialSupport[this.state.searchItemIndex].quantity\n };\n }\n this.setState({ isSearchDialogOpen: false, searchItemIndex: null, selectedMaterial: null });\n this.materialSelection.setAllSelected(false);\n };\n\n private onMaterialSearchChange = (event: any, newValue?: string | undefined): void => {\n this.setState({\n txtMatSearchValue: newValue\n });\n };\n\n private searchMaterial = (): Promise => {\n const { txtMatSearchValue } = this.state;\n if (txtMatSearchValue && txtMatSearchValue.trim().length !== 0) {\n this.setState({ isSearching: true });\n\n return MaterialSearch.searchMaterial(txtMatSearchValue, this.state.isFulltextSearch).then((mats: IMaterial[]) => {\n this.setState({ matSearchResults: mats, filteredSearchResults: mats, resultFilter: null });\n return Promise.resolve();\n }).catch((err)=>{\n let errorMessage = err;\n if(err.ExceptionMessage){\n errorMessage = err.ExceptionMessage;\n }\n this.setState({searchError: errorMessage});\n })\n .finally(() => {\n this.setState({ isSearching: false });\n });\n }\n };\n\n private clearSearch = (): void => {\n this.setState({\n txtMatSearchValue: null,\n matSearchResults: null,\n resultFilter: null\n });\n\n // tslint issue here\n (this.matSearchField as any).current.focus();\n };\n\n private onFilterTriggered = (filter: string) => {\n const { matSearchResults } = this.state;\n if (filter) {\n let lowerFilter = filter.toLowerCase();\n let filteredResults = matSearchResults.filter((entry) => { return entry.MaterialNum.toLowerCase().indexOf(lowerFilter) !== -1 || entry.Description.toLowerCase().indexOf(lowerFilter) !== -1 });\n this.setState({ resultFilter: filter, filteredSearchResults: filteredResults });\n } else {\n this.setState({ resultFilter: filter, filteredSearchResults: matSearchResults });\n }\n };\n\n private onClearFilter = () => {\n const { matSearchResults } = this.state;\n this.setState({ resultFilter: null, filteredSearchResults: matSearchResults });\n };\n\n private onRenderSearchResultRow = (props?: IDetailsRowProps, defaultRender?: (props?: IDetailsRowProps) => JSX.Element | null) => {\n return ;\n };\n}","import * as React from 'react';\r\nimport { css, Stack, PrimaryButton, Text, getTheme, INavLinkGroup, Nav, IStackProps, INavLink, TextField, Label, IconButton, DatePicker, StackItem, mergeStyles, IStyle, IDropdownOption, Dropdown } from 'office-ui-fabric-react';\r\nimport '../Proposal.scss';\r\nimport { IFormProps } from '../Models/IFormProps';\r\nimport { observer } from 'mobx-react';\r\nimport { WizardNavigationButtons } from './WizardNavigationFooter';\r\nimport ProposalFormValidation from './ProposalFormValidation';\r\n\r\nrequire('../../globalcss.css');\r\n\r\nexport interface IProjectPlanProps extends IFormProps {\r\n typeOfStudyList: string[];\r\n}\r\n\r\nexport interface IProjectPlanState {\r\n}\r\n\r\n@observer\r\nexport class ProjectPlan extends React.Component {\r\n\r\n constructor(props: any) {\r\n super(props);\r\n this.state = {\r\n }\r\n }\r\n\r\n public componentDidMount() {\r\n }\r\n\r\n public render() {\r\n\r\n const optionsForTypeOfStudy: IDropdownOption[] = [{key:\"\",text:\"\"}];\r\n this.props.typeOfStudyList?.map((type) =>\r\n optionsForTypeOfStudy.push({ key: type, text: type })\r\n );\r\n\r\n const columnProps1: Partial = {\r\n tokens: { childrenGap: 10 },\r\n styles: { root: { width: \"20%\" } },\r\n };\r\n\r\n const columnProps2: Partial = {\r\n tokens: { childrenGap: 10 },\r\n styles: { root: { width: \"30%\" } },\r\n };\r\n\r\n const columnProps3: Partial = {\r\n tokens: { childrenGap: 10 },\r\n styles: { root: { width: \"50%\" } },\r\n };\r\n\r\n const columnProps4: Partial = {\r\n tokens: { childrenGap: 10 },\r\n styles: { root: { width: \"70%\" } },\r\n };\r\n\r\n const columnProps5: Partial = {\r\n tokens: { childrenGap: 10 },\r\n styles: { root: { width: \"80%\" } },\r\n };\r\n\r\n const columnProps6: Partial = {\r\n tokens: { childrenGap: 10 },\r\n styles: { root: { width: \"60%\" } },\r\n };\r\n\r\n const columnProps7: Partial = {\r\n tokens: { childrenGap: 10 },\r\n styles: { root: { width: \"10%\" } },\r\n };\r\n\r\n const columnProps8: Partial = {\r\n tokens: { childrenGap: 10 },\r\n styles: { root: { width: \"40%\" } },\r\n };\r\n\r\n const onFormatDate = (date?: Date): string => {\r\n return !date ? '' : (date.getDate()) + '.' + (date.getMonth()+1) + '.' + date.getFullYear();\r\n };\r\n\r\n if (!this.props.proposal.projectTimeline) {\r\n this.props.proposal.projectTimeline = {};\r\n }\r\n if (!this.props.proposal.projectTimeline?.timelines || this.props.proposal.projectTimeline?.timelines.length == 0) {\r\n this.props.proposal.projectTimeline.timelines = [];\r\n this.props.proposal.projectTimeline?.timelines.push({});\r\n }\r\n\r\n if (!this.props.proposal.experienceOfPI) {\r\n this.props.proposal.experienceOfPI = {};\r\n }\r\n\r\n if (!this.props.proposal.experienceOfPI?.studies || this.props.proposal.experienceOfPI?.studies.length == 0) {\r\n this.props.proposal.experienceOfPI.studies = [];\r\n this.props.proposal.experienceOfPI?.studies.push({});\r\n this.props.proposal.experienceOfPI?.studies.push({});\r\n this.props.proposal.experienceOfPI?.studies.push({});\r\n }\r\n\r\n const styleError: string = mergeStyles({\r\n fontFamily: 'Segoe UI, Segoe UI Web (West European), Segoe UI, -apple-system, BlinkMacSystemFont, Roboto, Helvetica Neue, sans-serif',\r\n fontSize: '12px',\r\n fontWeight: 400,\r\n color: 'rgb(164, 38, 44)',\r\n margin: '0px',\r\n paddingTop: '5px',\r\n display: 'flex',\r\n alignItems: 'center'\r\n });\r\n\r\n const placeholderStyle: IStyle = {\r\n fontStyle: 'italic !important',\r\n color: '#c7c7c7!important'\r\n };\r\n\r\n return (\r\n \r\n \r\n {\r\n this.props.isReadonly && \r\n }\r\n {\r\n !this.props.isReadonly &&

Project Plan

\r\n }\r\n
\r\n \r\n \r\n \r\n \r\n {\r\n this.props.proposal.publicationAndPresentationPlan = newValue;\r\n }}>\r\n
\r\n Project timetable\r\n \r\n \r\n \r\n \r\n {\r\n if (this.props.proposal.projectTimeline?.timelines)\r\n this.props.proposal.projectTimeline.timelines[0].no = newValue;\r\n }}>\r\n \r\n \r\n {\r\n if (this.props.proposal.projectTimeline?.timelines)\r\n this.props.proposal.projectTimeline.timelines[0].milestone = newValue;\r\n }}>\r\n \r\n \r\n {\r\n this.props.isReadonly && \r\n }\r\n {\r\n !this.props.isReadonly && \r\n {\r\n if (this.props.proposal.projectTimeline?.timelines && date)\r\n this.props.proposal.projectTimeline.timelines[0].startDate = date;\r\n }}\r\n />\r\n \r\n \r\n }\r\n \r\n \r\n {\r\n this.props.isReadonly && \r\n }\r\n {\r\n !this.props.isReadonly && \r\n {\r\n if (this.props.proposal.projectTimeline?.timelines && date)\r\n this.props.proposal.projectTimeline.timelines[0].endDate = date;\r\n }}\r\n />\r\n \r\n \r\n }\r\n \r\n {\r\n !this.props.isReadonly &&\r\n {\r\n this.props.proposal.projectTimeline?.timelines?.push({});\r\n }} />\r\n }\r\n \r\n {\r\n this.props.proposal.projectTimeline?.timelines?.map((item, index) => {\r\n if (index != 0) {\r\n return \r\n \r\n {\r\n item.no = newValue;\r\n }}>\r\n \r\n \r\n {\r\n item.milestone = newValue;\r\n }}>\r\n \r\n \r\n {\r\n this.props.isReadonly && \r\n }\r\n {\r\n !this.props.isReadonly && \r\n {\r\n if (date)\r\n item.startDate = date;\r\n }}\r\n />\r\n \r\n \r\n }\r\n \r\n \r\n {\r\n this.props.isReadonly && \r\n }\r\n {\r\n !this.props.isReadonly && {\r\n if (date)\r\n item.endDate = date;\r\n }}\r\n />\r\n \r\n \r\n }\r\n \r\n {\r\n !this.props.isReadonly &&\r\n {\r\n this.props.proposal.projectTimeline?.timelines?.splice(index, 1);\r\n }} />\r\n }\r\n ;\r\n }\r\n })\r\n }\r\n {\r\n if (this.props.proposal.projectTimeline)\r\n this.props.proposal.projectTimeline.comments = newValue;\r\n }}>\r\n \r\n \r\n
\r\n
\r\n Experience of PI\r\n \r\n \r\n \r\n {\r\n if (this.props.proposal.experienceOfPI)\r\n this.props.proposal.experienceOfPI.numberOfPulication = Number(newValue);\r\n }}>\r\n \r\n
\r\n Ongoing studies\r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n this.props.isReadonly ? : {\r\n this.props.proposal.experienceOfPI.studies[0].type = option ? option.text : \"\";\r\n }}\r\n selectedKey={this.props.proposal.experienceOfPI?.studies[0].type} />\r\n }\r\n\r\n\r\n \r\n \r\n {\r\n if (this.props.proposal.experienceOfPI?.studies)\r\n this.props.proposal.experienceOfPI.studies[0].title = newValue;\r\n }}>\r\n \r\n \r\n {\r\n if (this.props.proposal.experienceOfPI?.studies)\r\n this.props.proposal.experienceOfPI.studies[0].industryPartner = newValue;\r\n }}>\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {\r\n this.props.isReadonly ? : {\r\n this.props.proposal.experienceOfPI.studies[1].type = option ? option.text : \"\";\r\n }}\r\n selectedKey={this.props.proposal.experienceOfPI?.studies[1].type} />\r\n }\r\n\r\n \r\n \r\n {\r\n if (this.props.proposal.experienceOfPI?.studies)\r\n this.props.proposal.experienceOfPI.studies[1].title = newValue;\r\n }}>\r\n \r\n \r\n {\r\n if (this.props.proposal.experienceOfPI?.studies)\r\n this.props.proposal.experienceOfPI.studies[1].industryPartner = newValue;\r\n }}>\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {\r\n this.props.isReadonly ? : {\r\n this.props.proposal.experienceOfPI.studies[2].type = option ? option.text : \"\";\r\n }}\r\n selectedKey={this.props.proposal.experienceOfPI?.studies[2].type} />\r\n }\r\n \r\n \r\n \r\n {\r\n if (this.props.proposal.experienceOfPI?.studies)\r\n this.props.proposal.experienceOfPI.studies[2].title = newValue;\r\n }}>\r\n \r\n \r\n {\r\n if (this.props.proposal.experienceOfPI?.studies)\r\n this.props.proposal.experienceOfPI.studies[2].industryPartner = newValue;\r\n }}>\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n {\r\n if (!this.props.proposal.projectPlan)\r\n this.props.proposal.projectPlan = {};\r\n this.props.proposal.projectPlan.monitoring = newValue;\r\n }}>\r\n \r\n \r\n {\r\n if (!this.props.proposal.projectPlan)\r\n this.props.proposal.projectPlan = {};\r\n this.props.proposal.projectPlan.dataManagement = newValue;\r\n }}>\r\n \r\n \r\n {\r\n if (!this.props.proposal.projectPlan)\r\n this.props.proposal.projectPlan = {};\r\n this.props.proposal.projectPlan.analysis = newValue;\r\n }}>\r\n \r\n \r\n
\r\n\r\n {\r\n this.props.showWizardNavigation && \r\n \r\n \r\n }\r\n
\r\n );\r\n\r\n }\r\n}","import * as React from 'react';\nimport styles from './AttachmentComponent.module.scss';\nimport { IconButton, Link, Label, Spinner, ActionButton, Dialog, DialogType, DialogFooter, PrimaryButton, DefaultButton, css, mergeStyles, Stack } from 'office-ui-fabric-react';\nimport { IFileItem } from '../Proposal/Models/IFileItem';\nimport HttpService from '../../dataprovider/HttpService';\n\ndeclare type AttachmentClickBehaviour = \"EditInBrowser\" | \"Download\" | \"SimpleOpen\";\n\ndeclare type DeletePermissions = \"All\" | \"Own\" | \"None\";\n\nexport interface IAttachmentComponentProps {\n title?: string;\n\n apiEndpointSP: string;\n\n attachments?: Array;\n attachment?: IFileItem | File;\n\n readonly: boolean;\n deletePermissions: DeletePermissions;\n extensionFilters: string[];\n attachmentClickBehaviour: AttachmentClickBehaviour;\n enableDropZone: boolean;\n fileMode: \"SingleFile\" | \"MultiFile\";\n required?: boolean;\n\n maxHeightFileList?: number;\n\n isLoading?: boolean;\n\n borderStyle?: string;\n displayStyle?: \"block\" | \"inline-block\";\n\n maxFileNameWidth?: string;\n\n //Added for file compatibility, Purpose is to remove dependence of file name for file download and access\n useFileIdToDownloadFile?: string;\n // events\n onFilesAdded: (files: File[]) => Promise;\n onFileReplaced?: (file: File) => Promise;\n onFileDeleted: (file: IFileItem | File) => Promise;\n\n errorMessage?: string;\n}\n\nexport interface IAttachmentComponentState {\n title: string;\n attachments: Array;\n attachment: IFileItem | File;\n readonly: boolean;\n deletePermissions: DeletePermissions;\n attachmentClickBehaviour: AttachmentClickBehaviour;\n enableDropZone: boolean;\n fileMode: \"SingleFile\" | \"MultiFile\";\n required: boolean;\n\n maxHeightFileList: number;\n\n isLoading: boolean;\n isAddingFile: boolean;\n isExchangingFile: boolean;\n isDeletingFile: boolean;\n\n draggingOver: boolean;\n //dragCounter: number;\n isDeleteConfirmationOpen: boolean;\n deleteConfirmationAttachment: IFileItem | File;\n\n isBadFilesDialogOpen: boolean;\n // badFiles: File[];\n badFiles: {\n invalidExtensionFiles: File[];\n invalidNameFiles: File[];\n };\n badFilesDialogCallback: () => void;\n\n errorMessage?: string;\n}\n\nexport class AttachmentComponent extends React.Component {\n\n // tslint:disable-next-line:member-access\n static defaultProps = {\n useFileIdToDownloadFile: false\n };\n\n private fileInputRef: React.RefObject = null;\n //private dragCounter: number = 0;\n\n constructor(props: IAttachmentComponentProps) {\n super(props);\n\n this.state = {\n title: props.title ? props.title : null,\n attachments: props.attachments ? props.attachments : [],\n attachment: props.attachment ? props.attachment : null,\n readonly: props.readonly,\n deletePermissions: props.deletePermissions,\n attachmentClickBehaviour: props.attachmentClickBehaviour,\n enableDropZone: props.enableDropZone,\n fileMode: props.fileMode,\n required: !!props.required,\n\n maxHeightFileList: props.maxHeightFileList ? props.maxHeightFileList : 105,\n\n isLoading: props.isLoading ? props.isLoading : false,\n isAddingFile: false,\n isExchangingFile: false,\n isDeletingFile: false,\n\n draggingOver: false,\n //dragCounter: 0,\n isDeleteConfirmationOpen: false,\n deleteConfirmationAttachment: null,\n isBadFilesDialogOpen: false,\n badFiles: {\n invalidExtensionFiles: [],\n invalidNameFiles: []\n },\n badFilesDialogCallback: null,\n\n errorMessage: props.errorMessage\n };\n\n this.fileInputRef = React.createRef();\n }\n\n public componentWillReceiveProps(newProps: IAttachmentComponentProps) {\n if (this.state.title != newProps.title) {\n this.setState({ title: newProps.title });\n }\n\n if ((this.state.attachments != newProps.attachments && newProps.attachments) || (this.state.attachments && newProps.attachments && this.state.attachments.length != newProps.attachments.length)) {\n this.setState({ attachments: [...newProps.attachments] });\n }\n\n if (this.state.attachment != newProps.attachment) {\n this.setState({ attachment: newProps.attachment });\n }\n\n if (this.state.readonly != newProps.readonly) {\n this.setState({ readonly: newProps.readonly });\n }\n\n if (this.state.deletePermissions != newProps.deletePermissions) {\n this.setState({ deletePermissions: newProps.deletePermissions });\n }\n\n if (this.state.attachmentClickBehaviour != newProps.attachmentClickBehaviour) {\n this.setState({ attachmentClickBehaviour: newProps.attachmentClickBehaviour });\n }\n\n if (this.state.enableDropZone != newProps.enableDropZone) {\n this.setState({ enableDropZone: newProps.enableDropZone });\n }\n\n if (this.state.fileMode != newProps.fileMode) {\n this.setState({ fileMode: newProps.fileMode });\n }\n\n if (this.state.required != newProps.required) {\n this.setState({ required: newProps.required });\n }\n\n if (this.state.isLoading != newProps.isLoading) {\n this.setState({ isLoading: newProps.isLoading });\n }\n\n if (newProps.maxHeightFileList && this.state.maxHeightFileList != newProps.maxHeightFileList) {\n this.setState({ maxHeightFileList: newProps.maxHeightFileList });\n }\n\n if (this.state.errorMessage != newProps.errorMessage) {\n this.setState({ errorMessage: newProps.errorMessage });\r\n }\n }\n\n private triggerFileUpload = (files: FileList, mode: 'add' | 'exchange'): void => {\n if (files.length === 0) {\n return;\n }\n\n //let filteredFiles = this.filterAllowedFiles(files);\n //let rawFiles = Common.convertFileListToArray(files);\n //let badFiles = rawFiles.filter((file) => { return filteredFiles.indexOf(file) == -1; });\n\n let categorizedFiles = this.categorizeValidInvalidFiles(files);\n\n if (categorizedFiles.correctFiles.length != files.length) {\n // there are some invalid file types. Upload the valid ones, and report the invalid ones (via badFilesDialog)\n this.setState({\n badFilesDialogCallback: () => {\n if (categorizedFiles.correctFiles.length !== 0) {\n if (mode == \"add\") {\n this.props.onFilesAdded(categorizedFiles.correctFiles).then(() => {\n this.setState({\n isAddingFile: false,\n isExchangingFile: false,\n badFiles: {\n invalidExtensionFiles: [],\n invalidNameFiles: []\n }\n });\n });\n } else {\n this.props.onFileReplaced(categorizedFiles.correctFiles[0]).then(() => {\n this.setState({\n isAddingFile: false,\n isExchangingFile: false,\n badFiles: {\n invalidExtensionFiles: [],\n invalidNameFiles: []\n }\n });\n });\n }\n }\n },\n isBadFilesDialogOpen: true,\n badFiles: {\n invalidExtensionFiles: categorizedFiles.invalidExtensionFiles,\n invalidNameFiles: categorizedFiles.invalidNameFiles\n }\n // badFiles: {badFiles}\n });\n } else {\n if (mode == \"add\") {\n this.props.onFilesAdded(categorizedFiles.correctFiles).then(() => {\n this.setState({ isAddingFile: false, isExchangingFile: false });\n });\n } else {\n this.props.onFileReplaced(categorizedFiles.correctFiles[0]).then(() => {\n this.setState({ isAddingFile: false, isExchangingFile: false });\n });\n }\n }\n }\n\n private onFileDrop = (event: React.DragEvent): void => {\n if (!this.state.enableDropZone || this.state.readonly) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n\n if (this.state.fileMode == \"MultiFile\") {\n //console.log(\"DataTransfer:\", event.dataTransfer);\n //console.log(\"Files:\", event.dataTransfer.files);\n this.setState({ draggingOver: false });\n\n if (event.dataTransfer && event.dataTransfer.files && event.dataTransfer.files.length !== 0) {\n this.setState({ isAddingFile: true });\n\n this.triggerFileUpload(event.dataTransfer.files, 'add');\n }\n } else if (this.state.fileMode == \"SingleFile\") {\n this.setState({ draggingOver: false });\n\n if (event.dataTransfer && event.dataTransfer.files && event.dataTransfer.files.length !== 0) {\n\n let isExchange = this.state.attachment && this.props.onFileReplaced;\n if (isExchange) {\n this.setState({ isExchangingFile: true });\n } else {\n this.setState({ isAddingFile: true });\n }\n\n this.triggerFileUpload(event.dataTransfer.files, isExchange ? \"exchange\" : \"add\");\n }\n }\n }\n\n private onDraggingOver = (event: React.DragEvent): void => {\n if (!this.state.enableDropZone || this.state.readonly) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n\n //this.dragCounter++;\n //console.log(\"Entering... \" + this.dragCounter);\n\n this.setState({ draggingOver: true });\n }\n\n private onDragEnd = (event: React.DragEvent): void => {\n if (!this.state.enableDropZone || this.state.readonly) {\n return;\n }\n\n this.setState({ draggingOver: false });\n }\n\n private onDragExit = (event: React.DragEvent): void => {\n if (!this.state.enableDropZone || this.state.readonly) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n\n this.setState({ draggingOver: false });\n }\n\n private onDelete = (attachment: IFileItem | File): void => {\n if (this.state.readonly) {\n return;\n }\n\n if (attachment instanceof File) {\n console.log(`Deleting ${attachment.name}`, attachment);\n } else {\n console.log(`Deleting ${attachment.name}`, attachment);\n }\n this.setState({ isDeleteConfirmationOpen: true, deleteConfirmationAttachment: attachment });\n }\n\n private onDownload = (attachment: IFileItem): void => {\n window.open(`${window.location.origin}${this.props.apiEndpointSP}/Attachment/${encodeURIComponent(attachment.uniqueId)}`);\n }\n\n private onDeleteConfirmationDismiss = (action?: string): void => {\n if (action == \"Delete\") {\n this.setState({ isDeletingFile: true });\n if (this.state.deleteConfirmationAttachment instanceof File) {\n // pass file (that is not uploaded yet)\n this.props.onFileDeleted(this.state.deleteConfirmationAttachment).then(() => {\n this.setState({ isDeletingFile: false });\n });\n } else {\n // pass serverRelUrl of file on server\n this.props.onFileDeleted(this.state.deleteConfirmationAttachment).then(() => {\n this.setState({ isDeletingFile: false });\n });\n }\n }\n this.setState({ isDeleteConfirmationOpen: false }, () => { this.setState({ deleteConfirmationAttachment: null }); });\n }\n\n private onAddFileClicked = () => {\n if (this.state.readonly) {\n return;\n }\n\n this.fileInputRef.current.click();\n }\n\n private onInputFileChanged = (isExchange: boolean = false) => {\n if (isExchange) {\n this.setState({ isExchangingFile: true });\n } else {\n this.setState({ isAddingFile: true });\n }\n\n this.triggerFileUpload(this.fileInputRef.current.files, isExchange ? \"exchange\" : \"add\");\n }\n\n private filterAllowedFiles = (files: FileList): File[] => {\n let result: File[] = [];\n for (var i = 0; i < files.length; i++) {\n let file = files.item(i);\n\n if (this.props.extensionFilters && this.props.extensionFilters.length) {\n let extension = file.name.toLocaleLowerCase().replace(/.*(\\.\\S*?)/gm, \"$1\");\n let match = this.props.extensionFilters.some(filter => { return filter.toLocaleLowerCase().indexOf(extension) == 0; });\n if (match) {\n result.push(file);\n }\n }\n else {\n result.push(file);\n }\n }\n return result;\n }\n\n private categorizeValidInvalidFiles = (files: FileList): {\n correctFiles: File[];\n invalidExtensionFiles: File[];\n invalidNameFiles: File[];\n } => {\n let result: {\n correctFiles: File[];\n invalidExtensionFiles: File[];\n invalidNameFiles: File[];\n } = {\n correctFiles: [],\n invalidExtensionFiles: [],\n invalidNameFiles: []\n };\n\n let invalidFileNameCharacters = new RegExp(/[\\\\/:*?\\\"<>|]+/, \"g\");\n\n for (var i = 0; i < files.length; i++) {\n let file = files.item(i);\n let isFileNameInvalid = invalidFileNameCharacters.test(file.name);\n\n if (this.props.extensionFilters && this.props.extensionFilters.length) {\n let extension = file.name.toLocaleLowerCase().replace(/.*(\\.\\S*?)/gm, \"$1\");\n let match = this.props.extensionFilters.some(filter => { return filter.toLocaleLowerCase().indexOf(extension) == 0; });\n\n if (isFileNameInvalid)\n result.invalidNameFiles.push(file);\n\n if (match) {\n if (!isFileNameInvalid)\n result.correctFiles.push(file);\n }\n else {\n result.invalidExtensionFiles.push(file);\n }\n }\n else {\n if (isFileNameInvalid)\n result.invalidNameFiles.push(file);\n else\n result.correctFiles.push(file);\n }\n }\n\n return result;\n }\n\n public render(): React.ReactElement {\n\n let listItemStyle: React.CSSProperties = { height: '20px' };\n //let linkStyle: React.CSSProperties = { color: 'inherit', overflowX:'hidden', textOverflow:'ellipsis', wordBreak:'break-all' };\n let linkStyle: React.CSSProperties = { color: 'blue', cursor: 'pointer' };\n let deleteButtonStyle = { color: 'inherit', height: '20px' };\n let addButtonStyle = { color: 'inherit' };\n let spinnerStyle = { color: 'inherit' };\n\n /**\n * Default styles:\n * - Single File: no border, inline-block style\n * - Multi file: border, block display style\n */\n let borderStyle = this.props.borderStyle || this.state.fileMode == 'SingleFile' ? \"0px\" : '1px solid rgb(255, 255, 255, 0.4)';\n let displayStyle = this.props.displayStyle || this.state.fileMode == 'SingleFile' ? \"inline-block\" : \"block\";\n\n let placeholderWidth = this.state.deletePermissions == \"None\" || this.state.readonly ? \"0px\" : \"32px\";\n let deletePlaceholder = ;\n let makeAttachmentHyperlink = (attachment: IFileItem | File) => {\n if (attachment instanceof File) {\n return {attachment.name};\n }\n if (this.state.attachmentClickBehaviour == \"EditInBrowser\") {\n // office webapp links open office files directly in office web apps, other documents are opened with browser if possible\n return { window.open(`${attachment.serverRelativeUrl}?web=1`); }}>{attachment.name};\n } else if (this.state.attachmentClickBehaviour == \"Download\") {\n // otherwise...if file should download directly\n return {attachment.name};\n } else {\n // last option, just open 1:1 in browser\n return { window.open(`${attachment.serverRelativeUrl}`); }}>{attachment.name};\n }\n };\n\n let userHasDeletePermissions = (attachment: IFileItem | File) => {\n if (attachment instanceof File) {\n // these are pending uploads. I just added it, so I'm allowed to also remove it\n return true;\n }\n return !this.state.readonly && (this.state.deletePermissions == \"All\" || this.state.deletePermissions == \"Own\");\n };\n\n let getFileName = (attachment: IFileItem | File) => {\n if (attachment instanceof File) {\n return attachment.name;\n }\n return (attachment as IFileItem).name;\n };\n\n let dropZoneTooltip = !this.state.readonly ? \"Drag/Drop file to upload\" : \"\";\n\n let spinnerIcon: React.ReactElement = this.state.isLoading ?\n \n :\n this.state.isAddingFile ?\n \n :\n this.state.isDeletingFile ?\n \n :\n this.state.isExchangingFile ?\n \n :\n null;\n\n let isExchangeMode = this.state.fileMode == \"MultiFile\" ? false : this.state.attachment ? true : false;\n\n const styleError: string = mergeStyles({\n fontFamily: 'Segoe UI, Segoe UI Web (West European), Segoe UI, -apple-system, BlinkMacSystemFont, Roboto, Helvetica Neue, sans-serif',\n fontSize: '12px',\n fontWeight: 400,\n color: 'rgb(164, 38, 44)',\n margin: '0px',\n paddingTop: '5px',\n display: 'flex',\n alignItems: 'center'\n });\n\n return (\n
\n
\n {this.state.title ? {this.state.title} {this.state.required ? * : null} : null}\n {\n this.state.isLoading || this.state.isAddingFile || this.state.isDeletingFile || this.state.isExchangingFile ?\n spinnerIcon\n :\n <>\n {this.state.fileMode == \"MultiFile\" ?\n
\n {\n // show list of all attachments\n this.state.attachments ?\n this.state.attachments.map((attachment, i) => {\n if (attachment instanceof File) { }\n else if (attachment.isDeleted)\n return;\n return
\n {\n userHasDeletePermissions(attachment) ?\n \n : deletePlaceholder\n }\n {makeAttachmentHyperlink(attachment)}\n
;\n })\n : null\n }\n
\n :\n <>\n {\n // show single attachment\n this.state.attachment ?\n <>\n {userHasDeletePermissions(this.state.attachment) ?\n \n :\n deletePlaceholder}\n {makeAttachmentHyperlink(this.state.attachment)}\n \n :\n null\n }\n \n }\n {\n !this.state.readonly && (this.state.fileMode == 'MultiFile' || (displayStyle == 'inline-block' && !this.state.attachment) || displayStyle == 'block') ?\n
\n \n {isExchangeMode ? \"Replace File\" : \"Add File\"}\n {!this.props.readonly && }\n \n \n
: null\n }\n \n }\n
\n Drag and drop file(s) here to upload\n
\n
\n {\n this.state.deleteConfirmationAttachment ?\n this.onDeleteConfirmationDismiss}\n >\n \n this.onDeleteConfirmationDismiss(\"Delete\")} text=\"Delete\" />\n this.onDeleteConfirmationDismiss()} text=\"Cancel\" />\n \n : null\n }\n {\n this.state.isBadFilesDialogOpen ?\n {\n this.setState({ isBadFilesDialogOpen: false, isAddingFile: false, isExchangingFile: false }, () => {\n if (this.state.badFilesDialogCallback)\n this.state.badFilesDialogCallback();\n });\n }}\n >\n {\n this.state.badFiles.invalidExtensionFiles && this.state.badFiles.invalidExtensionFiles.length &&\n
Only files with following extensions are allowed:\n
    \n {this.props.extensionFilters.map(ext =>
  • {ext}
  • )}\n
\n The following files will not be uploaded:\n
    \n {this.state.badFiles.invalidExtensionFiles.map((badFile) => { return
  • {badFile.name}
  • ; })}\n
\n
\n }\n {\n this.state.badFiles.invalidNameFiles && this.state.badFiles.invalidNameFiles.length &&\n
Characters that aren't allowed in file name\n
    \n
  • {`\" * : < > ? / \\ |`}
  • \n
\n The following files will not be uploaded:\n
    \n {this.state.badFiles.invalidNameFiles.map((badFile) => { return
  • {badFile.name}
  • ; })}\n
\n
\n }\n \n this.setState({ isBadFilesDialogOpen: false, isAddingFile: false, isExchangingFile: false }, () => {\n if (this.state.badFilesDialogCallback)\n this.state.badFilesDialogCallback();\n })} text=\"OK\" />\n \n :\n null\n }\n
\n );\n }\n}","import * as React from 'react';\r\nimport { css, Stack, PrimaryButton, Text, getTheme, INavLinkGroup, Nav, IStackProps, INavLink, TextField, Label, IconButton, StackItem } from 'office-ui-fabric-react';\r\nimport '../Proposal.scss';\r\nimport { IFormProps } from '../Models/IFormProps';\r\nimport { AttachmentComponent } from '../../AttachmentComponent/AttachmentComponent';\r\nimport { observer } from 'mobx-react';\r\nimport { WizardNavigationButtons } from './WizardNavigationFooter';\r\nimport { IFileItem } from '../Models/IFileItem';\r\nimport ProposalFormValidation from './ProposalFormValidation';\r\n\r\nexport interface IAttachmentsProps extends IFormProps {\r\n}\r\n\r\nexport interface IAttachmentsState {\r\n}\r\n\r\n@observer\r\nexport class Attachments extends React.Component {\r\n\r\n constructor(props: any) {\r\n super(props);\r\n this.state = {\r\n }\r\n }\r\n\r\n public componentDidMount() {\r\n }\r\n\r\n private onISOAttachmentUploadAdded = (files: File[]): Promise => {\r\n if (this.props.proposalStore) {\r\n if (!this.props.proposalStore?.isoCertificateAttachments)\r\n this.props.proposalStore.isoCertificateAttachments = [];\r\n\r\n let delayedAttachments = [...this.props.proposalStore?.isoCertificateAttachments];\r\n files.forEach((file) => {\r\n delayedAttachments.push(file);\r\n });\r\n this.props.proposalStore.isoCertificateAttachments = delayedAttachments;\r\n }\r\n return Promise.resolve();\r\n }\r\n private onISOAttachmentDeleted = async (file: IFileItem | File): Promise => {\r\n if (this.props.proposalStore) {\r\n if (file instanceof File) {\r\n let delayedAttachments = [...this.props.proposalStore.isoCertificateAttachments];\r\n let idx = delayedAttachments.indexOf(file);\r\n if (idx !== -1) {\r\n delayedAttachments.splice(idx, 1);\r\n\r\n this.props.proposalStore.isoCertificateAttachments = delayedAttachments;\r\n }\r\n }\r\n else {\r\n file.isDeleted = true;\r\n }\r\n }\r\n\r\n return Promise.resolve();\r\n }\r\n\r\n private onCVAttachmentUploadAdded = (files: File[]): Promise => {\r\n if (this.props.proposalStore) {\r\n if (!this.props.proposalStore?.cvAttachments)\r\n this.props.proposalStore.cvAttachments = [];\r\n\r\n let delayedAttachments = [...this.props.proposalStore?.cvAttachments];\r\n files.forEach((file) => {\r\n delayedAttachments.push(file);\r\n });\r\n this.props.proposalStore.cvAttachments = delayedAttachments;\r\n }\r\n return Promise.resolve();\r\n }\r\n private onCVAttachmentDeleted = async (file: IFileItem | File): Promise => {\r\n if (this.props.proposalStore) {\r\n if (file instanceof File) {\r\n let delayedAttachments = [...this.props.proposalStore.cvAttachments];\r\n let idx = delayedAttachments.indexOf(file);\r\n if (idx !== -1) {\r\n delayedAttachments.splice(idx, 1);\r\n\r\n this.props.proposalStore.cvAttachments = delayedAttachments;\r\n }\r\n } else {\r\n file.isDeleted = true;\r\n }\r\n }\r\n\r\n return Promise.resolve();\r\n }\r\n\r\n private onOtherAttachmentUploadAdded = (files: File[]): Promise => {\r\n if (this.props.proposalStore) {\r\n if (!this.props.proposalStore?.otherAttachments)\r\n this.props.proposalStore.otherAttachments = [];\r\n\r\n let delayedAttachments = [...this.props.proposalStore?.otherAttachments];\r\n files.forEach((file) => {\r\n delayedAttachments.push(file);\r\n });\r\n this.props.proposalStore.otherAttachments = delayedAttachments;\r\n }\r\n return Promise.resolve();\r\n }\r\n private onOtherAttachmentDeleted = async (file: IFileItem | File): Promise => {\r\n if (this.props.proposalStore) {\r\n if (file instanceof File) {\r\n let delayedAttachments = [...this.props.proposalStore.otherAttachments];\r\n let idx = delayedAttachments.indexOf(file);\r\n if (idx !== -1) {\r\n delayedAttachments.splice(idx, 1);\r\n\r\n this.props.proposalStore.otherAttachments = delayedAttachments;\r\n }\r\n } else {\r\n file.isDeleted = true;\r\n }\r\n }\r\n\r\n return Promise.resolve();\r\n }\r\n\r\n public render() {\r\n const extensionFilters = [\".txt\", \".pdf\", \".xls\", \".xlsx\", \".doc\", \".docx\", \".ppt\", \"pptx\", \".rar\", \".zip\", \".png\", \".jpg\", \".jpeg\", \".bmp\", \".gif\"];\r\n return (\r\n \r\n \r\n {\r\n this.props.isReadonly && \r\n }\r\n {\r\n !this.props.isReadonly &&

Attachments

\r\n }\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n CV for applicants *\r\n \r\n
\r\n
\r\n ISO Certificate\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n Other attachments\r\n \r\n
\r\n
\r\n \r\n\r\n {\r\n this.props.showWizardNavigation && \r\n \r\n \r\n }\r\n
\r\n );\r\n\r\n }\r\n}","import { ICostItem, IProposal } from \"../Proposal/Models/IProposal\";\n// @ts-ignore\nimport * as pdfMake from \"pdfmake/build/pdfmake\";\n// @ts-ignore\nimport * as pdfFonts from 'pdfmake/build/vfs_fonts';\n//import * as pdfMake from \"./pdfmake\";\nimport moment from 'moment';\nimport DataProvider from '../../dataprovider/DataProvider';\n\nconst firstColSize = 150;\nconst largeColSize = 400;\nexport class pdfCreator {\n\n\tpublic static createFile(proposal: IProposal, upload:boolean):Promise {\n\t\tlet p = JSON.parse(JSON.stringify(proposal));\n\t\tpdfMake.vfs = pdfFonts.pdfMake.vfs;\n\n\t\tlet studyOverview = pdfCreator.getStudyOverviewContent(p);\n\t\tlet studyIntervention = pdfCreator.getStudyIntervention(p);\n\t\tlet material = pdfCreator.getMaterialsMethods(p);\n\t\tlet supportRequest = pdfCreator.getRequestedSupport(p);\n\t\tlet timeline = pdfCreator.getProjectTimeline(p);\n\t\tlet experienceOfPI = pdfCreator.getExperience(p);\n\n\n\t\tvar dd = {\n\t\t\t//[left, top, right, bottom]\n\t\t\tpageMargins: [40, 60, 40, 60],\n\t\t\theader: {\n\t\t\t\timage: 'data:image/jpeg;base64,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wqRqEUfRVAH+NSXtojxb41/8wf8A7CKf+y1pHr6GU+nqera34a0zxGgj1O2iuQowpdRvXPXY4w6/gR71F7bGjSe5xEXwY8LROJBas2052tNMV+hBfkexquZ9yOSPY9F07S7TSIRb2MMdtEOiRIqDPqQoGT6k5J7moL22L1AwoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoA8J+Jmgalpmq23jLREM8tmoS5hGSWjXcN20cspjdkkxkqArAYBI0i1blZlJNNSR3Ph74l6D4ijVobqOCUj5obhhFIp7j5yFfHqhYVLi0WpJ7GnqvjjQtFjMt3e26gDO1JFkc47KkZZifw/SlZ9ENtLc8e0C2v/AIleJovE1xE9vo+nH/RBINpkKklCo5BJc+ZIw+UYVASRVv3VbqZL3nzdFsfRdZmwUAFABQAUAFABQAUAFABQB4b8a/8AmD/9hFP/AGWtI9fQyn09T3KszUKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgDzjXPhR4d15zNLbeRKxyz258osT1JUAoSe525PrVqTRDgmUNN+C/hrTZfOMMlyRyFuJN6/98gKD9GyPajmYlBI9SiiS3RYolVEQBVVQFVQOAABgADsBUGhJQAUAFABQAUAFABQAUAFABQBynijwfZ+Lfs32x5o/sUwnj8lkXLjHD743yvHQbT7007bEtX36HV0igoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKACgAoAKAP/9k=',\n\t\t\t\twidth: 200,\n\t\t\t\talignment: 'right',\n\t\t\t\tmargin: [10, 10]\n\t\t\t},\n\t\t\tfooter: function (currentPage: any, pageCount: any) {\n\t\t\t\treturn [\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: currentPage.toString() + ' of ' + pageCount,\n\t\t\t\t\t\tstyle: \"pageFooter\"\n\t\t\t\t\t}]\n\t\t\t},\n\t\t\tcontent: [\n\t\t\t\t{\n\t\t\t\t\ttext: \"\",\n\t\t\t\t\tstyle: \"titleMargin\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: \"Investigator Initiated Study\",\n\t\t\t\t\tstyle: \"subheader\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: \"Proposal Summary \",\n\t\t\t\t\tstyle: \"header\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\timage: 'data:image/jpeg;base64,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',\n\t\t\t\t\twidth: 500,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: \"\",\n\t\t\t\t\tpageBreak: \"before\",\n\t\t\t\t\tstyle: \"newPage\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolumns: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\twidth: firstColSize,\n\t\t\t\t\t\t\ttext: \"Application Date\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: moment(p.created).format(\"DD.MM.YYYY\")\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: \"Applicant Details\",\n\t\t\t\t\tstyle: \"subheader\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolumns: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\twidth: firstColSize,\n\t\t\t\t\t\t\ttext: \"Applicant Name\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: p.applicantName\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolumns: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\twidth: firstColSize,\n\t\t\t\t\t\t\ttext: \"Applicant Email\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: p.applicantEmail || \"-\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: \"Study Team\",\n\t\t\t\t\tstyle: \"subheader\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolumns: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\twidth: firstColSize,\n\t\t\t\t\t\t\ttext: \"Primary Investigator (PI)\",\n\t\t\t\t\t\t\tbold:true\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: p.piName || \"-\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolumns: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\twidth: firstColSize,\n\t\t\t\t\t\t\ttext: \"Address\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: p.contactDetailsPI?.street? p.contactDetailsPI.street + \" \" + p.contactDetailsPI.no: \"-\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolumns: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\twidth: firstColSize,\n\t\t\t\t\t\t\ttext: \"Postal Code / City / State\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: p.contactDetailsPI ? (p.contactDetailsPI.postalCode ? p.contactDetailsPI.postalCode : \"-\") + \" \" + (p.contactDetailsPI.city ? p.contactDetailsPI.city : \"-\") + (p.contactDetailsPI.state ? \" ( \" + p.contactDetailsPI.state + \") \" : \"\"): \"-\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolumns: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\twidth: firstColSize,\n\t\t\t\t\t\t\ttext: \"Email \",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: p.contactDetailsPI?.email ? p.contactDetailsPI?.email : \"-\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolumns: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\twidth: firstColSize,\n\t\t\t\t\t\t\ttext: \"Phone \",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: p.contactDetailsPI?.phone ? p.contactDetailsPI?.phone : \"-\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolumns: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\twidth: firstColSize,\n\t\t\t\t\t\t\ttext: \"Co Investigators\",\n\t\t\t\t\t\t\tmargin: [0, 20, 0, 0]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: p.coInvestigators?.length > 0 ? p.coInvestigators.map((i:any) => {\n\t\t\t\t\t\t\t\treturn i.firstname ? i.firstname + \" \" + i.lastname + \" \" + i.email + \" (\" + i.institute + \")\" : \"-\"\n\t\t\t\t\t\t\t}).join(\", \") : \"-\",\n\t\t\t\t\t\t\tmargin: [0, 20, 0, 0]\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolumns: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\twidth: firstColSize,\n\t\t\t\t\t\t\ttext: \"Sub Investigators\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: p.subInvestigators?.length > 0 ? p.subInvestigators.map((i:any) => {\n\t\t\t\t\t\t\t\treturn i.firstname ? i.firstname + \" \" + i.lastname + \" \" + i.email + \" (\" + i.institute + \")\" : \"-\"\n\t\t\t\t\t\t\t}).join(\", \") : \"-\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolumns: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\twidth: firstColSize,\n\t\t\t\t\t\t\ttext: \"Study Nurse / Coordinator\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: p.studyNurse ? p.studyNurse.firstname + \" \" + p.studyNurse.lastname + \" \" + p.studyNurse.email + \"(\" + p.studyNurse.institute + \")\" : \"-\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t...studyOverview,\n\t\t\t\t...studyIntervention,\n\t\t\t\t...material,\n\t\t\t\t...supportRequest,\n\t\t\t\t...timeline,\n\t\t\t\t...experienceOfPI\n\n\t\t\t],\n\t\t\tstyles: {\n\t\t\t\tpageFooter: {\n\t\t\t\t\tmargin: [30, 0],\n\t\t\t\t\talignment: \"right\"\n\t\t\t\t},\n\t\t\t\ttitleMargin: {\n\t\t\t\t\tmargin: [0, 190, 0, 80]\n\t\t\t\t},\n\t\t\t\theader: {\n\t\t\t\t\tfontSize: 20,\n\t\t\t\t\tbold: true,\n\t\t\t\t\tmargin: [0, 20]\n\t\t\t\t},\n\t\t\t\tsubheader: {\n\t\t\t\t\tfontSize: 18,\n\t\t\t\t\tbold: true,\n\t\t\t\t\tmargin: [0, 10]\n\n\t\t\t\t},\n\t\t\t\tsubsubheader: {\n\t\t\t\t\tfontSize: 15,\n\t\t\t\t\tbold: true,\n\t\t\t\t\tmargin: [0, 10]\n\n\t\t\t\t},\n\t\t\t\tnewPage: {\n\t\t\t\t\tmargin: [0, 10]\n\t\t\t\t},\n\t\t\t\tsubsubsubheader:{\n\t\t\t\t\tbold: true,\n\t\t\t\t\tmargin: [0, 10, 0, 0]\n\t\t\t\t},\n\t\t\t\ttableExample: {\n\t\t\t\t\tmargin: [0, 5, 0, 15]\n\t\t\t\t},\n\t\t\t\timportantRow: {\n\t\t\t\t\tbold: true,\n\t\t\t\t\tfontSize: 15,\n\t\t\t\t\tfillColor: '#C3D5E7',\n }\n\t\t\t}\n\n\t\t}\n\n\n\t\tconsole.log(dd);\n\n\t\t//pdfMake.createPdf(dd).open();\n\n\n\t\t//pdfMake.createPdf(dd).download();\n\t\tconst pdfDocGenerator = pdfMake.createPdf(dd);\n\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tif (upload) {\n\t\t\t\tpdfDocGenerator.getBase64((result: any) => {\n\t\t\t\t\tconsole.log(\"basel64\");\n\n\t\t\t\t\tconsole.log(result);\n\t\t\t\t\tresolve( result);\n\t\t\t\t\t/*dataProvider.documentUpload(proposal.id.toString(), result, proposal.applicantEmail.replace('@', '_') || \"NoName\").then(result => {\n\t\t\t\t\t\tconsole.log(result);\n\t\t\t\t\t\tresolve(result);\n\t\t\t\t\t}).catch(err => {\n\t\t\t\t\t\talert(err)\n\t\t\t\t\t\treject(err);\n\t\t\t\t\t});*/\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tlet pdf = pdfMake.createPdf(dd);\n\t\t\t\t\tpdf.download(moment(new Date()).format(\"YYYYMMDD_hhmm\") + \"_ProposalDownload.pdf\");\n\t\t\t\t//pdf.end();\n\t\t\t\tresolve(null);\n\t\t\t}\n })\n\n\n\t}\n\n\tpublic static getStudyOverviewContent(p:IProposal) {\n\t\tlet studyOverview : any[]= [\n\t\t\t{\n\t\t\t\ttext: \"\",\n\t\t\t\tpageBreak: \"before\",\n\t\t\t\tstyle: \"newPage\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Study Overview\",\n\t\t\t\tstyle: \"subheader\"\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ttext: \"Study Title\",\n\t\t\t\tstyle: 'subsubheader'\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: p.studyTitle\n\t\t\t},\n\n\n\t\t\t{\n\t\t\t\ttext: \"Summary\",\n\t\t\t\tstyle: 'subsubheader'\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: p.summary\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Background and rationale\",\n\t\t\t\tstyle: 'subsubheader'\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: p.backgroundRatione\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Study hypothesis\",\n\t\t\t\tstyle: 'subsubheader'\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: p.studyHypothesis\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Type of study\",\n\t\t\t\tstyle: 'subsubheader'\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: p.typeOfStudy != \"Other\" ? p.typeOfStudy : p.typeOfStudy + \": \" + p.typeOfStudyOther\n\t\t\t}\n\t\t]\n\t\tif (p.studyDesign) {\n\t\t\tstudyOverview.push(\n\t\t\t\t{\n\t\t\t\t\ttext: \"Study design\",\n\t\t\t\t\tstyle: 'subsubheader'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: p.studyDesign.groupA + \", \" + p.studyDesign.groupB + \", \" + p.studyDesign.groupC\n\t\t\t\t}\n\t\t\t)\n\t\t}\n\t\tstudyOverview.push(\n\t\t\t{\n\t\t\ttext: \"Fields\",\n\t\t\tstyle: 'subsubheader'\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: p.fields ? (p.fields.join(\",\") + p.fieldOthers ? p.fieldOthers: \"\"): \"-\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Study Power\",\n\t\t\t\tstyle: 'subheader'\n\t\t\t},\n\t\t\t{\n\t\t\t\tcolumns: [\n\t\t\t\t\t{\n\t\t\t\t\t\t//width: firstColSize,\n\t\t\t\t\t\ttext: \"N total: \" + (p.sampleSize?.nTotal ? p.sampleSize.nTotal : \"-\"),\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: \"N per group: \" + (p.sampleSize?.nPerGroup?p.sampleSize?.nPerGroup:\"-\"\n)\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: \"Anticipated drop-out rate %: \" + (p.sampleSize?.anticipatedDropOutRate ? p.sampleSize.anticipatedDropOutRate: \"-\")\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Adequate power analysis and justification\",\n\t\t\t\tstyle: 'subsubheader'\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: p.sampleSize?.powerAnalysis ? p.sampleSize.powerAnalysis: \"-\"\n\t\t\t},\n\t\t)\n\t\treturn studyOverview;\n\t}\n\tpublic static getStudyIntervention(p:IProposal) {\n\t\tlet studyDetails:any[] = [\n\t\t\t{\n\t\t\t\ttext: \"\",\n\t\t\t\tpageBreak: \"before\",\n\t\t\t\tstyle: \"newPage\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Study Intervensions\",\n\t\t\t\tstyle: \"subheader\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Study Intervention - Test Arm\",\n\t\t\t\tstyle: \"subsubheader\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Study Device\",\n\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: p.studyIntTestArm?.device ? p.studyIntTestArm.device:\"-\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Test Treatment name\",\n\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: p.studyIntTestArm?.name? p.studyIntTestArm.name:\"-\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Test Treatment description\",\n\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: p.studyIntTestArm?.description ? p.studyIntTestArm.description:\"-\",\n\t\t\t}\n\t\t]\n\t\tif (p.controlIntControlArm) {\n\t\t\tstudyDetails.push(\n\t\t\t\t{\n\t\t\t\t\ttext: \"Control Intervention - Control Arm\",\n\t\t\t\t\tstyle: \"subsubheader\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: \"Study Device\",\n\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: p.controlIntControlArm.device,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: \"Test Treatment name\",\n\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: p.controlIntControlArm.name,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: \"Test Treatment description\",\n\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: p.controlIntControlArm.description,\n\t\t\t\t})\n }\n\n\t\tif (p.additionalStudyArms?.length > 0) {\n\t\t\tstudyDetails.push({\n\t\t\t\ttext: \"Additional Study arms\",\n\t\t\t\tstyle: \"subsubheader\"\n\t\t\t})\n\t\t\tp.additionalStudyArms.forEach((arm,index) => {\n\t\t\t\tstudyDetails.push(\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: index + 1 + \" - Study Device\",\n\t\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: arm.device,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: \"Test Treatment name\",\n\t\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: arm.name,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: \"Test Treatment description\",\n\t\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: arm.description,\n\t\t\t\t\t})\n })\n }\n\n\t\tif (p.primaryOutcomeParam) {\n\t\t\tstudyDetails.push(\n\t\t\t\t{\n\t\t\t\t\ttext: \"Primary outcome parameter\",\n\t\t\t\t\tstyle: \"subsubheader\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: \"Name\",\n\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: p.primaryOutcomeParam.name,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: \"Description\",\n\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: p.primaryOutcomeParam.description,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: \"Baseline\",\n\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: p.primaryOutcomeParam.baseline,\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: \"Endpoint\",\n\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttext: p.primaryOutcomeParam.endpoint,\n\t\t\t\t}\n\t\t\t)\n\t\t}\n\n\t\tif (p.secondaryOutcomeParam?.length > 0) {\n\t\t\tstudyDetails.push(\n\t\t\t\t{\n\t\t\t\t\ttext: \"Secondary outcome parameter(s)\",\n\t\t\t\t\tstyle: \"subsubheader\"\n\t\t\t\t})\n\t\t\tp.secondaryOutcomeParam.forEach((param, index) => {\n\t\t\t\tstudyDetails.push(\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: index + 1 + \" - Name\",\n\t\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: param.name,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: \"Description\",\n\t\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: param.description,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: \"Baseline\",\n\t\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: param.baseline,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: \"Endpoint\",\n\t\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: param.endpoint,\n\t\t\t\t\t})\n })\n\t\t}\n\t\treturn studyDetails;\n\t}\n\tpublic static getMaterialsMethods(p: IProposal) {\n\t\tlet materialMethode = [\n\t\t\t{\n\t\t\t\ttext: \"\",\n\t\t\t\tpageBreak: \"before\",\n\t\t\t\tstyle: \"newPage\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Materials and Methods\",\n\t\t\t\tstyle: \"subheader\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Materials and Methods\",\n\t\t\t\tstyle: \"subsubheader\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Population and indication\",\n\t\t\t\tstyle:\"subsubsubheader\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: p.materialMethode?.populationIndication ? p.materialMethode.populationIndication:\"-\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Treatments\",\n\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: p.materialMethode?.treatments ? p.materialMethode.treatments:\"-\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Experimental procedures and follow-ups\",\n\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: p.materialMethode?.experimentalProcedures ? p.materialMethode.experimentalProcedures:\"-\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Statistical methods\",\n\t\t\t\tstyle: \"subsubheader\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: p.statisticalMethods ? p.statisticalMethods:\"-\",\n\t\t\t},\n\n\t\t]\n\t\treturn materialMethode;\n\t}\n\n\n\tpublic static getRequestedSupport(p:IProposal) {\n\t\tlet support: any[] = [\n\t\t\t{\n\t\t\t\ttext: \"\",\n\t\t\t\tpageBreak: \"before\",\n\t\t\t\tstyle: \"newPage\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Study Budget\",\n\t\t\t\tstyle: \"subheader\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Funds requested: \" + (p.fundsRequested ? \"Yes\" : \"No\"),\n\t\t\t\tstyle:\"subsubsubheader\"\n\t\t\t}\n\t\t];\n\t\tif (p.fundsRequested) {\n\t\t\tlet body:any[] = [\n\t\t\t\t[{ text: 'Cost type / item', colSpan: 2}, {}, { text: 'Requested funds' }],\n\t\t\t]\n\n\t\t\tlet total = 0;\n\t\t\tp.funds.costItems.forEach((item: ICostItem) => {\n\t\t\t\ttotal += item.budget;\n\t\t\t\tbody.push([{ text: item.name, colSpan: 2 }, {}, { text: item.budget.toString() }])\n\t\t\t})\n\t\t\tbody.push([{ text: \"Total\", colSpan: 2, }, {}, { text: total.toString(), bold: true }])\n\t\t\tbody.push([{ text: \"Overhead costs\", colSpan: 3, style: \"subsubsubheader\"}, {}, { }])\n\t\t\tbody.push([\n\t\t\t\t{ text: \"% of required overhead / administrative costs\" },\n\t\t\t\t{ text: p.funds?.overheadCosts ? p.funds.overheadCosts.percent + \" %\":\"-\" },\n\t\t\t\t{ text: p.funds?.overheadCosts ? p.funds.overheadCosts.amount: \"-\" }\n\t\t\t])\n\t\t\tbody.push([{\n\t\t\t\ttext: \"Total requested funds\", colSpan: 2, style: \"importantRow\"\n\t\t\t}, {}, { text: p.funds?.overheadCosts? p.funds.overheadCosts.total:\"-\", style:\"importantRow\" }])\n\n\t\t\tsupport.push(\n\t\t\t\t{\n\t\t\t\t\ttext: \"Currency: \" + p.funds.currency,\n\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tstyle: 'tableExample',\n\t\t\t\t\ttable: {\n\t\t\t\t\t\twidths: [300,100, 100],\n\t\t\t\t\t\theaderRows: 1,\n\t\t\t\t\t\tbody: body\n\t\t\t\t\t},\n\t\t\t\t\tlayout: 'lightHorizontalLines'\n\t\t\t\t}\n\t\t\t);\n\n\t\t}\n\n\t\tsupport.push(\n\t\t\t{\n\t\t\t\ttext: \"Study Material\",\n\t\t\t\tstyle: \"subheader\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext:\"Study Material requested: \" + (p.materialSupportRequested ? \"Yes\" : \"No\")\n\t\t\t})\n\t\tif (p.materialSupportRequested) {\n\t\t\tlet requestedMaterials: any[] = [\n\t\t\t\t[\"Article description\", \"Article number\", \"Quantity\"]\n\t\t\t]\n\t\t\tp.materialSupport.forEach(m => {\n\t\t\t\trequestedMaterials.push([m.description,m.articelNo, m.quantity])\n })\n\t\t\tsupport.push(\n\t\t\t\t{\n\t\t\t\t\ttext: \"Currency: \" + p.funds.currency,\n\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tstyle: 'tableExample',\n\t\t\t\t\ttable: {\n\t\t\t\t\t\twidths: [300, 100, 100],\n\t\t\t\t\t\theaderRows: 1,\n\t\t\t\t\t\tbody: requestedMaterials\n\t\t\t\t\t},\n\t\t\t\t\tlayout: 'lightHorizontalLines'\n\t\t\t\t}\n\t\t\t);\n\t\t\t\n }\n\t\treturn support;\n\t}\n\tpublic static getProjectTimeline(p: IProposal) {\n\t\tlet timeline: any[] = [\n\t\t{\n\t\t\ttext: \"\",\n\t\t\tpageBreak: \"before\",\n\t\t\tstyle: \"newPage\"\n\t\t},\n\t\t{\n\t\t\ttext: \"Project plan\",\n\t\t\tstyle: \"subheader\"\n\t\t},\n\t\t\t{\n\t\t\ttext: \"Publication and Presentation plan\",\n\t\t\tstyle: \"subsubheader\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: p.publicationAndPresentationPlan ? p.publicationAndPresentationPlan:\"-\"\n\t\t\t},{\n\t\t\t\ttext: \"Project timetable\",\n\t\t\t\tstyle: \"subsubheader\"\n\t\t\t},\n\t\t]\n\t\tlet timelineBody: any[] = [\n\t\t\t[\"No. of milestone\", \"Milestone\", \"Start date\", \"End date\"]\n\t\t]\n\t\tif (p.projectTimeline?.timelines) {\n\t\t\tp.projectTimeline.timelines.forEach(t => {\n\t\t\t\tif (t.no) {\n\t\t\t\t\ttimelineBody.push([t.no, t.milestone, moment(t.startDate).format(\"MM/YYYY\"), moment(t.endDate).format(\"MM/YYYY\")])\n }\n\t\t\t\t\n\t\t\t})\n\t\t\ttimeline.push({\n\t\t\t\tstyle: 'tableExample',\n\t\t\t\ttable: {\n\t\t\t\t\twidths: [100, 260, 60, 60],\n\t\t\t\t\theaderRows: 1,\n\t\t\t\t\tbody: timelineBody\n\t\t\t\t},\n\t\t\t\tlayout: 'lightHorizontalLines'\n\t\t\t})\n\t\t\ttimeline.push({\n\t\t\t\ttext: \"Comment\",\n\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t},\n\t\t\t{\n\t\t\t\ttext: p.projectTimeline.comments\n\t\t\t})\n }\n\n\t\treturn timeline;\n\t}\n\n\n\tpublic static getExperience(p: IProposal) {\n\n\t\tlet experience: any[] = [{\n\t\t\ttext: \"Experience of primary investigator\",\n\t\t\tstyle: \"subheader\"\n\t\t},\n\t\t\t{\n\t\t\t\ttext: \"Number of published articles in international peer-reviewed journals (as PI): \" + (p.experienceOfPI?.numberOfPulication ? p.experienceOfPI:\"-\"),\n\t\t\t\tstyle:\"subsubsubheader\"\n\t\t\t}\n\t\t]\n\t\tif (p.experienceOfPI) {\n\t\t\tlet body: any[] = [\n\t\t\t\t[\"No. \", \"Type\", \"Title\", \"Industry partner\"]\n\t\t\t]\n\t\t\tp.experienceOfPI.studies.forEach((e, index) => {\n\t\t\t\tbody.push([index + 1, e.type ? e.type : \"\", e.title ? e.title : \"\", e.industryPartner ? e.industryPartner : \"\"])\n\t\t\t})\n\t\t\texperience.push({\n\t\t\t\tstyle: 'tableExample',\n\t\t\t\ttable: {\n\t\t\t\t\twidths: [75, 100, 200, 100],\n\t\t\t\t\theaderRows: 1,\n\t\t\t\t\tbody: body\n\t\t\t\t},\n\t\t\t\tlayout: 'lightHorizontalLines'\n\t\t\t})\n }\n\n\t\tif (p.projectPlan) {\n\t\t\texperience.push({\n\t\t\t\tcolumns: [\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: \"Monitoring\",\n\t\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: \"Data management\",\n\t\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: \"Analysis\",\n\t\t\t\t\t\tstyle: \"subsubsubheader\"\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolumns: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: p.projectPlan.monitoring,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: p.projectPlan.dataManagement,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: p.projectPlan.analysis,\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t})\n\n }\n\n\t\treturn experience;\n\t}\n\n}","import * as React from 'react';\nimport { css, Stack, PrimaryButton, Text, getTheme, INavLinkGroup, Nav, IStackProps, INavLink, TextField, Label, IconButton, StackItem, ActionButton } from 'office-ui-fabric-react';\nimport '../Proposal.scss';\nimport { IFormProps } from '../Models/IFormProps';\nimport { observer } from 'mobx-react';\nimport { WizardNavigationButtons } from './WizardNavigationFooter';\nimport { StudyTeam } from './StudyTeam';\nimport { StudyDescription } from './StudyDescription';\nimport { StudyPower } from './StudyPower';\nimport { StudyIntervensions } from './StudyIntervensions';\nimport { MaterialsAndMethodes } from './MaterialsAndMethodes';\nimport { RequestedSupport } from './RequestedSupport';\nimport { ProjectPlan } from './ProjectPlan';\nimport { Attachments } from './Attachments';\nimport { pdfCreator } from '../../pdfGenerator/pdfCreator';\nimport { IProposal } from '../Models/IProposal';\n\nexport interface ISummaryProps extends IFormProps {\n onSubmit: (par:any) => any | void | Promise;\n}\n\nexport interface ISummaryState {\n}\n\n@observer\nexport class Summary extends React.Component {\n\n constructor(props: any) {\n super(props);\n this.state = {\n }\n }\n\n public componentDidMount() {\n }\n\n public render() {\n\n return (\n \n \n

Summary

\n
\n\n\n\n {this.props.proposalStore &&\n \n \n
\n \n
\n \n
\n \n
\n \n
\n \n
\n \n
\n \n
\n }\n
\n {\n console.log(\"click\");\n //alert(\"click\");\n let copy = JSON.parse(JSON.stringify(this.props.proposalStore.proposal));\n this.props.onSave().then(() => {\n pdfCreator.createFile(copy, false);\n //window.location.reload();\n\n });\n }}>Download pdf\n
\n {\n this.props.showWizardNavigation && \n \n \n \n \n }\n
\n );\n\n }\n}","import * as React from 'react';\nimport { css, Stack, } from 'office-ui-fabric-react';\nimport { Link } from 'react-router-dom';\nimport { PageURL } from '../../../App';\n\nexport interface ISuccessBoxProps {\n location: Location;\n history: History;\n stepSizeClass: string;\n message: string;\n}\n\nconst SuccessBox = (props: ISuccessBoxProps) => {\n return (\n \n \n
\n

{props.message}

\n
\n
\n\n
\n );\n}\n\nexport default SuccessBox;","import * as React from 'react';\nimport { css, Stack, PrimaryButton, Text, getTheme, INavLinkGroup, Nav, IStackProps, INavLink, MessageBarType, Dialog, DialogType, Spinner, SpinnerSize, MessageBar, Link } from 'office-ui-fabric-react';\nimport StepWizard, { StepWizardChildProps, StepWizardProps } from 'react-step-wizard';\nimport './Proposal.scss';\nimport { StudyTeam } from './StepForm/StudyTeam';\nimport { StudyDescription } from './StepForm/StudyDescription';\nimport NavMenu from '../NavMenu';\nimport { StudyPower } from './StepForm/StudyPower';\nimport { StudyIntervensions } from './StepForm/StudyIntervensions';\nimport { MaterialsAndMethodes } from './StepForm/MaterialsAndMethodes';\nimport { RequestedSupport } from './StepForm/RequestedSupport';\nimport { ProjectPlan } from './StepForm/ProjectPlan';\nimport { IDataProvider } from '../../dataprovider/IDataProvider';\nimport { IProposal } from './Models/IProposal';\nimport { Attachments } from './StepForm/Attachments';\nimport { observer } from 'mobx-react';\nimport ProposalStore from './ProposalStore';\nimport { IApplicationSettings } from './Models/IApplicationSettings';\nimport { Summary } from './StepForm/Summary';\nimport SuccessBox from './StepForm/SuccessBox';\nimport { pdfCreator } from '../pdfGenerator/pdfCreator';\nimport { IUserAccount } from '../LoginComponent/LoginComponent';\nimport { IFileItem } from './Models/IFileItem';\n\nexport interface IProposalFormProps {\n dataProvider: IDataProvider;\n proposalStore: ProposalStore;\n location: Location;\n history: History;\n isLoggedIn: boolean;\n currentUser?: IUserAccount;\n\n sessionExpired: () => void;\n}\n\nexport interface IProposalFormState {\n showWaitingSpinner: boolean;\n message?: string | JSX.Element | null;\n messageType?: MessageBarType;\n showOrderSuccessMessage?: boolean;\n stepWizardContext?: StepWizardProps | null;\n currentStep?: number;\n isLoggedIn: boolean;\n currentUser: IUserAccount;\n\n validationFirstErrorTab: number;\n validationErrorTabs: string[];\n validationErrorFields: any[];\n\n hasValidated: boolean;\n}\n\nexport interface IValidationRule {\n name: string;\n display: string;\n error?: string;\n errorRequired?: string;\n errorFormat?: string;\n required: boolean | ((childRow?:any) => boolean);\n format?: RegExp;\n maxLength?: number;\n minValue?: number | Date | ((childRow?: any) => number) | ((childRow?: any) => Date);\n maxValue?: number | Date | ((childRow?: any) => number) | ((childRow?: any) => Date);\n childValidations?: IValidationRule[];\n onValidate?: (childRow?: any) => [boolean, boolean];\n}\n\nconst transitions = {\n enterRight: `animated enterRight`,\n enterLeft: `animated enterLeft`,\n exitRight: `.animated exitRight`,\n exitLeft: `animated exitLeft`,\n intro: `animated intro`,\n};\n\n@observer\nexport class ProposalForm extends React.Component {\n\n constructor(props: IProposalFormProps) {\n super(props);\n console.log(\"User in ProposalForm: \" + props.currentUser);\n this.state = {\n //message: \"d\",\n //showOrderSuccessMessage:true,\n showWaitingSpinner: false,\n stepWizardContext: null,\n currentStep: 1,\n isLoggedIn: props.isLoggedIn,\n currentUser: props.currentUser,\n\n validationErrorTabs: [],\n validationErrorFields: [],\n validationFirstErrorTab: null,\n hasValidated: false\n }\n\n }\n\n public componentWillReceiveProps(newProps: any) {\n if (this.state.isLoggedIn != newProps.isLoggedIn) {\n this.setState({ isLoggedIn: newProps.isLoggedIn });\n }\n\n if (this.state.currentUser != newProps.currentUser) {\n this.setState({ currentUser: newProps.currentUser });\n }\n }\n\n public componentDidMount() {\n try {\n this.props.dataProvider.getApplicationSettings().then((applicationSettings: IApplicationSettings) => {\n //console.log(applicationSettings);\n this.props.proposalStore.typeOfStudyList = applicationSettings.typeOfStudyList;\n this.props.proposalStore.studyDesignAList = applicationSettings.studyDesignAList;\n this.props.proposalStore.studyDesignBList = applicationSettings.studyDesignBList;\n this.props.proposalStore.studyDesignCList = applicationSettings.studyDesignCList;\n this.props.proposalStore.fieldsList = applicationSettings.fieldsList;\n });\n\n let query = new URLSearchParams((this.props as any).location.search);\n const proposalId = query.get(\"id\")\n if (proposalId) {\n this.props.dataProvider.getProposal(proposalId).then((proposal: IProposal) => {\n console.log(proposal);\n this.props.proposalStore.proposal = proposal;\n if (proposal.applicantEmail != this.state.currentUser.email) {\n this.hideSpinnerAndShowSuccessMessage(\"You have no access to this proposal.\");\n } else if (proposal.status === \"Submitted\") {\n this.hideSpinnerAndShowSuccessMessage(\"This proposal was submitted.\");\n }\n\n this.props.dataProvider.getAttachments(proposalId).then((attachments: IFileItem[]) => {\n this.props.proposalStore.isoCertificateAttachments = [...attachments.filter(x => x.docType === \"GCP certificate\")];\n\n this.props.proposalStore.cvAttachments = [...attachments.filter(x => x.docType === \"CV\")];\n\n this.props.proposalStore.otherAttachments = [...attachments.filter(x => x.docType === \"Others\")];\n });\n }).catch((error) => {\n if(error==\"Unauthorized\"){\n this.hideSpinnerAndShowErrorMessage(\"You are unauthorized to access this proposal. You can only access your own proposals.\", \"_onClickSavePricingAppAdmin\");\n }else{\n this.hideSpinnerAndShowErrorMessage(error, \"_onClickSavePricingAppAdmin\");\n }\n });\n }\n\n } catch (error) {\n this.hideSpinnerAndShowErrorMessage(error, \"_onClickSavePricingAppAdmin\");\n }\n }\n\n private onStepChange = (stats: any) => {\n this.setState({\n currentStep: stats.activeStep\n });\n };\n\n private setInstance = (stepWizardContext: StepWizardProps) => this.setState({\n stepWizardContext,\n });\n\n private onSaveProposal = (isSubmit?: boolean) => {\n return new Promise((resolve,reject) => {\n if (this.props.proposalStore.proposal) {\n this.setState({\n showWaitingSpinner: true\n })\n\n const proposal = { ...this.props.proposalStore.proposal };\n if (isSubmit === true)\n proposal.status = \"Submitted\";\n\n proposal.userId = this.props.currentUser.userId;\n proposal.coInvestigators = proposal.coInvestigators?.filter(x => x.institute || x.firstname || x.lastname || x.email);\n proposal.subInvestigators = proposal.subInvestigators?.filter(x => x.institute || x.firstname || x.lastname || x.email);\n proposal.additionalStudyArms = proposal.additionalStudyArms?.filter(x => x.device || x.name || x.description);\n proposal.secondaryOutcomeParam = proposal.secondaryOutcomeParam?.filter(x => x.name || x.description || x.baseline || x.endpoint);\n if (proposal.funds?.costItems) {\n if (proposal.funds?.costItems?.filter(x => x.name || x.budget).length > 0) {\n proposal.funds.costItems = proposal.funds?.costItems?.filter(x => x.name || x.budget);\n }\n }\n\n if (proposal.materialSupport?.filter(x => x.description || x.articelNo || x.quantity).length > 0) {\n proposal.materialSupport = proposal.materialSupport?.filter(x => x.description || x.articelNo || x.quantity);\n }\n\n if (proposal.disc?.filter(x => x.type || x.dimention || x.quantity).length > 0) {\n proposal.disc = proposal.disc?.filter(x => x.type || x.dimention || x.quantity);\n }\n\n if (proposal.projectTimeline?.timelines) {\n if (proposal.projectTimeline?.timelines?.filter(x => x.no || x.milestone || x.startDate || x.endDate).length > 0) {\n proposal.projectTimeline.timelines = proposal.projectTimeline?.timelines?.filter(x => x.no || x.milestone || x.startDate || x.endDate);\n }\n\n }\n\n this.props.dataProvider.createProposal(proposal).then(async (result: any) => {\n console.log(result);\n let newItem = !proposal.id;\n proposal.id = result.id;\n proposal.proposalId = result.proposalID;\n\n await this.props.dataProvider.uploadISOCertificate(proposal, [...this.props.proposalStore.isoCertificateAttachments]);\n await this.props.dataProvider.uploadCV(proposal, [...this.props.proposalStore.cvAttachments]);\n await this.props.dataProvider.uploadOthers(proposal, [...this.props.proposalStore.otherAttachments]);\n\n if (isSubmit === true)\n {\n resolve(null);\n //Your proposal was submitted successfully. A confirmation email will be sent to you shortly. If you do not receive this email, please click here to contact us.\n this.hideSpinnerAndShowSuccessMessage(\"Your proposal was submitted successfully. A confirmation email will be sent to you shortly. If you do not receive this email, please contact us.\");\n }\n else {\n if (newItem) {\n var url = this.props.dataProvider.addParam(`id=${result.id}`, window.location.href);\n window.history.pushState(null, \"\", url);\n }\n\n this.props.proposalStore.proposal = proposal;\n\n this.props.dataProvider.getAttachments(result.id).then((attachments: IFileItem[]) => {\n this.props.proposalStore.isoCertificateAttachments = [...attachments.filter(x => x.docType === \"GCP certificate\")];\n\n this.props.proposalStore.cvAttachments = [...attachments.filter(x => x.docType === \"CV\")];\n\n this.props.proposalStore.otherAttachments = [...attachments.filter(x => x.docType === \"Others\")];\n\n if (this.state.hasValidated) {\n this.validateProposal();\n }\n\n resolve(null);\n });\n\n this.setState({\n message: \"Proposal saved successfully.\",\n messageType: MessageBarType.success,\n showWaitingSpinner: false,\n showOrderSuccessMessage: false,\n });\n\n\n }\n }).catch(error => {\n this.hideSpinnerAndShowErrorMessage(error, \"_onClickSavePricingAppAdmin\");\n if (error.indexOf(\"Authentication Token Expired\") === 0) {\n if (this.props.sessionExpired) {\n this.props.sessionExpired();\n }\n }\n reject(error);\n });\n }\n })\n\n }\n\n private hideSpinnerAndShowSuccessMessage = (message: string) => {\n this.setState({\n message: message,\n messageType: MessageBarType.success,\n showWaitingSpinner: false,\n showOrderSuccessMessage: true,\n });\n }\n\n private hideSpinnerAndShowErrorMessage = (error: any, errorAreaName: string) => {\n\n this.props.dataProvider.logErrorInConsole?.(errorAreaName, error);\n\n this.setState({\n message: this.props.dataProvider.extractErrorMessageFromErrorObject?.(error),\n messageType: MessageBarType.error,\n showWaitingSpinner: false,\n showOrderSuccessMessage: false,\n });\n }\n\n private validateField = (obj: any, fieldName: string, required: boolean, format?: RegExp, maxLength?: number, minValue?: number | Date | (() => number) | (() => Date), maxValue?: number | Date | (() => number) | (() => Date), childValidations?: IValidationRule[]): [boolean, boolean, any] => {\n let hasMinValue = minValue !== null && minValue !== undefined;\n let hasMaxValue = maxValue !== null && maxValue !== undefined;\n let hasMaxLength = maxLength !== null && maxLength !== undefined;\n if (format && (hasMinValue || hasMaxValue)){\n alert(\"Bad validation rule defined. Format and min/maxValue can't both be used. Use min/maxValue only for numbers and format only for strings.\");\n }\n var requiredValid = true;\n var childrenRequiredValid = true;\n var childValidationErrors: any = null;\n \n let fieldContainsData = false;\n if (obj.hasOwnProperty(fieldName)) {\n if (Array.isArray(obj[fieldName])) {\n fieldContainsData = obj[fieldName].length !== 0;\n\n // if there are child-validation rules, consider them also\n if (childValidations && childValidations.length) {\n childValidationErrors = {};\n obj[fieldName].forEach((childRow: any, childRowIdx: number) => {\n childValidations.forEach((childRule, ruleIdx) => {\n console.log(`Validating ChildRow ${childRowIdx}`);\n let childFieldRequired = typeof childRule.required === 'function' ? childRule.required(childRow) : childRule.required;\n let childMaxValue = typeof childRule.maxValue === 'function' ? childRule.maxValue(childRow) : childRule.maxValue;\n let [requiredIsValid, formatIsValid]: [boolean, boolean, any] = this.validateField(childRow, childRule.name, childFieldRequired, childRule.format, childRule.maxLength, childRule.minValue, childMaxValue);\n childrenRequiredValid = childrenRequiredValid && requiredIsValid;\n fieldContainsData = requiredIsValid && formatIsValid && fieldContainsData;\n\n if (!requiredIsValid) {\n childValidationErrors[`${fieldName}_${childRule.name}_${childRowIdx}`] = { ...childRule, error: childRule.errorRequired, rowIdx: childRowIdx };\n } else if (!formatIsValid) {\n childValidationErrors[`${fieldName}_${childRule.name}_${childRowIdx}`] = { ...childRule, error: childRule.errorFormat, rowIdx: childRowIdx };\n }\n });\n });\n }\n } else if (typeof obj[fieldName] === 'number') {\n fieldContainsData = obj[fieldName] !== null && obj[fieldName] !== undefined;\n } else if (typeof obj[fieldName] === 'object' && obj[fieldName] && obj[fieldName].getDate) {\n // handle date validation\n\n // if field value was correctly identified as Date, it has a value\n fieldContainsData = true;\n } else{\n fieldContainsData = Boolean(obj[fieldName]?.trim().length);\n }\n }\n \n requiredValid = (required && fieldContainsData && childrenRequiredValid) || (!required && childrenRequiredValid);\n \n\n var formatValid = true;\n if (format && fieldContainsData) {\n let matchResults = obj[fieldName].match(format);\n formatValid = Boolean(matchResults) && Boolean(matchResults.length);\n } else if ((hasMinValue || hasMaxValue) && fieldContainsData) {\n if (hasMinValue) {\n let actualMinValue = typeof minValue === 'function' ? minValue() : minValue;\n formatValid = formatValid && (obj[fieldName] >= actualMinValue);\n }\n if (hasMaxValue) {\n let actualMaxValue = typeof maxValue === 'function' ? maxValue() : maxValue;\n formatValid = formatValid && (obj[fieldName] <= actualMaxValue);\n }\n } else if ((hasMaxLength && fieldContainsData)) {\n formatValid = formatValid && (obj[fieldName].length <= maxLength);\n }\n return [requiredValid, formatValid, childValidationErrors];\n };\n\n private validateProposal = (): boolean => {\n let errorTabs: string[] = [];\n let tabNames = ['Study Team', 'Study Description', 'Study Power', 'Study Interventions', 'Materials and Methods', 'Requested Support', 'Project Plan', 'Attachment', 'Summary'];\n let tabErrors = [false, false, false, false, false, false, false, false];\n\n this.setState({ hasValidated: true });\n\n // initialize field error array freshly\n let fieldValidationErrors: any[] = [];\n for (var i = 0; i < tabNames.length; i++) {\n fieldValidationErrors.push({});\n }\n\n let nGroupRequiredValidation = () => {\n return !Boolean(this.props.proposalStore.proposal.studyDesign?.groupB == \"Single-arm\");\n };\n \n let validationRules: IValidationRule[][] = [\n [ // Tab0 StudyTeam\n { name: \"piName\", display: 'Primary Investigator Name', errorRequired: \"Field is required\", required: true, maxLength: 255, errorFormat: \"max 255 characters\" },\n { name: \"contactDetailsPI.email\", display: 'Primary Investigator Email', required: true, format: /(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)\\])/g, errorRequired: \"Field is required\", errorFormat: \"Email Address is invalid\" },\n { name: \"contactDetailsPI.phone\", display: 'Primary Investigator Phone', errorRequired: \"Field is required\", required: true },\n { name: \"contactDetailsPI.street\", display: 'Primary Investigator Street', errorRequired: \"Field is required\", required: true },\n { name: \"contactDetailsPI.no\", display: 'Primary Investigator Street no', errorRequired: \"Field is required\", required: true },\n { name: \"contactDetailsPI.postalCode\", display: 'Primary Investigator Postal Code', errorRequired: \"Field is required\", required: true },\n { name: \"contactDetailsPI.city\", display: 'Primary Investigator City', errorRequired: \"Field is required\", required: true },\n { name: \"contactDetailsPI.country\", display: 'Primary Investigator Country', errorRequired: \"Field is required\", required: true }\n\n ],\n [ // Tab1 StudyDescription\n { name: \"studyTitle\", display: 'Study Title', errorRequired: \"Field is required\", required: true, maxLength: 255, errorFormat: \"max 255 characters\" },\n { name: \"summary\", display: 'Summary', errorRequired: \"Field is required\", required: false, maxLength: 1000, errorFormat: \"max 1000 characters\" },\n { name: \"backgroundRatione\", display: 'Background and rationale', errorRequired: \"Field is required\", required: true, maxLength: 2000, errorFormat: \"max 2000 characters\" },\n { name: \"studyHypothesis\", display: 'Primary study hypothesis', errorRequired: \"Field is required\", required: true },\n { name: \"typeOfStudy\", display: 'Type of study', errorRequired: \"Field is required\", required: true, },\n { name: \"typeOfStudyOther\", display: 'Type of study - Other', errorRequired: \"Field is required if Type of Study is 'Other'\", required: () => { return this.props.proposalStore.proposal.typeOfStudy === 'Other'; } },\n { name: \"fields\", display: 'Fields', errorRequired: \"At least 1 field must be selected\", required: true },\n { name: \"fieldOthers\", display: 'Fields - Others', errorRequired: \"Field is required if 'Other' was chosen\", required: () => { return (this.props.proposalStore?.proposal?.fields as string[])?.includes('Others'); } }\n ],\n [ // Tab2 StudyPower\n { name: \"sampleSize.nTotal\", display: 'N total', errorRequired: \"Field is required\", errorFormat: \"'N total' must be larger than 0\", required: true, minValue: 1 },\n {\n name: \"sampleSize.nPerGroup\", display: 'N per group', errorRequired: \"Field is required\", required: nGroupRequiredValidation, errorFormat: \"'N per group' must be larger than 0 and smaller than or equal to 'N total'\", minValue: () => {\n let isRequired = nGroupRequiredValidation();\n return isRequired ? 1 : 0;\n }, maxValue: () => { return this.props.proposalStore.proposal?.sampleSize?.nTotal; }\n },\n { name: \"sampleSize.anticipatedDropOutRate\", display: 'Anticipated drop-out rate', errorRequired: \"Field is required\", required: true, errorFormat: \"Valid percentage values must be between 0 and 100\", minValue: 0, maxValue: 100 },\n { name: \"sampleSize.powerAnalysis\", display: 'Adequate power analysis and justification', errorRequired: \"Field is required\", required: true },\n ],\n [ // Tab3 StudyIntervensions\n { // studyIntTestArm.device\n name: \"studyIntTestArm.device\", display: 'Study Intervention - Test Arm - Study Device', required: () => {\n return true;//Boolean(this.props.proposalStore?.proposal?.studyIntTestArm?.name) || Boolean(this.props.proposalStore?.proposal?.studyIntTestArm?.description);\n }, errorRequired: \"Field is required if any of the other 'Test Arm' fields are filled out\"\n },\n {\n name: \"studyIntTestArm.name\", display: 'Study Intervention - Test Arm - Test Treatment Name', required: () => {\n return true;// Boolean(this.props.proposalStore?.proposal?.studyIntTestArm?.device) || Boolean(this.props.proposalStore?.proposal?.studyIntTestArm?.description);\n }, errorRequired: \"Field is required if any of the other 'Test Arm' fields are filled out\"\n },\n {\n name: \"studyIntTestArm.description\", display: 'Study Intervention - Test Arm - Test Treatment Description', required: () => {\n return true; // Boolean(this.props.proposalStore?.proposal?.studyIntTestArm?.name) || Boolean(this.props.proposalStore?.proposal?.studyIntTestArm?.device);\n }, errorRequired: \"Field is required if any of the other 'Test Arm' fields are filled out\"\n },\n { // controlIntControlArm.device\n name: \"controlIntControlArm.device\", display: 'Control Intervention - Control Arm - Study Device', required: () => {\n return Boolean(this.props.proposalStore?.proposal?.controlIntControlArm?.name) || Boolean(this.props.proposalStore?.proposal?.controlIntControlArm?.description);\n }, errorRequired: \"Field is required if any of the other 'Control Arm' fields are filled out\"\n },\n {\n name: \"controlIntControlArm.name\", display: 'Control Intervention - Control Arm - Test Treatment Name', required: () => {\n return Boolean(this.props.proposalStore?.proposal?.controlIntControlArm?.device) || Boolean(this.props.proposalStore?.proposal?.controlIntControlArm?.description);\n }, errorRequired: \"Field is required if any of the other 'Control Arm' fields are filled out\"\n },\n {\n name: \"controlIntControlArm.description\", display: 'Control Intervention - Control Arm - Test Treatment Description', required: () => {\n return Boolean(this.props.proposalStore?.proposal?.controlIntControlArm?.name) || Boolean(this.props.proposalStore?.proposal?.controlIntControlArm?.device);\n }, errorRequired: \"Field is required if any of the other 'Control Arm' fields are filled out\"\n },\n {\n name: \"additionalStudyArms\", display: 'Additional Study arms', required: false, childValidations: [\n {\n name: \"device\", display: 'Study Device', required: (childRow?:any) => {\n return Boolean(childRow.name) || Boolean(childRow.description);\n }, errorRequired: \"Field is required if any of the other field in this 'Additional Study arm' block is filled out\"\n },\n {\n name: \"name\", display: 'Test Treatment name', required: (childRow?: any) => {\n return Boolean(childRow.device) || Boolean(childRow.description);\n }, errorRequired: \"Field is required if any of the other field in this 'Additional Study arm' block is filled out\"\n },\n {\n name: \"description\", display: 'Test Treatment description', required: (childRow?: any) => {\n return Boolean(childRow.device) || Boolean(childRow.name);\n }, errorRequired: \"Field is required if any of the other field in this 'Additional Study arm' block is filled out\"\n }\n ]\n }\n ],\n [ // Tab4 MaterialsAndMethodes\n { name: \"materialMethode.populationIndication\", display: 'Material and Methods - population and indication', errorRequired: \"Field is required\", required: () => { return (this.props.proposalStore?.proposal?.typeOfStudy == \"Animal\" || this.props.proposalStore?.proposal?.typeOfStudy == \"Clinical\");}},\n { name: \"materialMethode.treatments\", display: 'Material and Methods - treatments', errorRequired: \"Field is required\", required: () => { return (this.props.proposalStore?.proposal?.typeOfStudy == \"Animal\" || this.props.proposalStore?.proposal?.typeOfStudy == \"Clinical\");}},\n { name: \"materialMethode.experimentalProcedures\", display: 'Material and Methods - experimental procedures', errorRequired: \"Field is required\", required: () => { return (this.props.proposalStore?.proposal?.typeOfStudy == \"Animal\" || this.props.proposalStore?.proposal?.typeOfStudy == \"Clinical\");}},\n { name: \"materialMethode.materialExperimentalSetup\", display: 'Material and Methods - material and experimental setup', errorRequired: \"Field is required\", required: () => { return !(this.props.proposalStore?.proposal?.typeOfStudy == \"Animal\" || this.props.proposalStore?.proposal?.typeOfStudy == \"Clinical\");}},\n { name: \"statisticalMethods\", display: 'Statistical methods', errorRequired: \"Field is required\", required: true },\n { name: \"primaryOutcomeParam.name\", display: 'Primary outcome parameter - Name', errorRequired: \"Field is required\", required: true },\n { name: \"primaryOutcomeParam.description\", display: 'Primary outcome parameter - Description', errorRequired: \"Field is required\", required: true },\n { name: \"primaryOutcomeParam.baseline\", display: 'Primary outcome parameter - Baseline', errorRequired: \"Field is required\", required: true },\n { name: \"primaryOutcomeParam.endpoint\", display: 'Primary outcome parameter - Endpoint', errorRequired: \"Field is required\", required: true },\n {\n name: \"secondaryOutcomeParam\", display: 'Secondary outcome parameters', required: false, childValidations: [\n {\n name: \"name\", display: 'Name', required: (childRow?: any) => {\n return Boolean(childRow.description) || Boolean(childRow.baseline) || Boolean(childRow.endpoint);\n }, errorRequired: \"Field is required if any of the other field in this 'Secondary outcome parameters' block is filled out\"\n },\n {\n name: \"description\", display: 'Description', required: (childRow?: any) => {\n return Boolean(childRow.name) || Boolean(childRow.baseline) || Boolean(childRow.endpoint);\n }, errorRequired: \"Field is required if any of the other field in this 'Secondary outcome parameters' block is filled out\"\n },\n {\n name: \"baseline\", display: 'Baseline', required: (childRow?: any) => {\n return Boolean(childRow.description) || Boolean(childRow.name) || Boolean(childRow.endpoint);\n }, errorRequired: \"Field is required if any of the other field in this 'Secondary outcome parameters' block is filled out\"\n },\n {\n name: \"endpoint\", display: 'Endpoint', required: (childRow?: any) => {\n return Boolean(childRow.description) || Boolean(childRow.baseline) || Boolean(childRow.name);\n }, errorRequired: \"Field is required if any of the other field in this 'Secondary outcome parameters' block is filled out\"\n }\n ]\n }\n\n ],\n [ // Tab5 Requested Support\n { name: \"funds.currency\", display: 'Funds - Currency', errorRequired: \"Choose a currency\", required: () => { return this.props.proposalStore?.proposal?.fundsRequested; }},\n { name: \"funds.overheadCosts.percent\", display: 'Funds - Percent', errorRequired: \"Choose a currency\", required: false, maxValue: 100, minValue: 0, errorFormat: 'Quantity must be between 0 and 100' },\n /*{\n name: \"funds.overheadCosts\", display: 'Funds - Percent', required: false, childValidations: [\n { name: \"percent\", display: 'Funds - Percent', errorRequired: \"Choose a currency\", required: false, maxValue: 100, minValue: 0, errorFormat: 'Quantity must be between 0 and 100' },\n ]\n },*/\n {\n name: \"funds.costItems\", display: 'Funds - Cost type / item', errorRequired: \"If funds are requested, at least 1 cost type/item is required\", required: () => { return this.props.proposalStore?.proposal?.fundsRequested; }, childValidations:[\n { name: \"name\", display: 'Name', errorRequired: \"Field is required\", required: () => { return this.props.proposalStore?.proposal?.fundsRequested; } },\n { name: \"budget\", display: 'Requested funds', errorRequired: \"Field is required\", required: () => { return this.props.proposalStore?.proposal?.fundsRequested; }, minValue: 0, errorFormat: \"Requested funds must be positive values\" }\n ]\n },\n {\n name: \"materialSupport\", display: 'Study Material', errorRequired: \"If Study Material is requested, add at least 1 Material or delselect 'Study Material requested'\", required: () => { return this.props.proposalStore?.proposal?.materialSupportRequested; }, childValidations: [\n { name: \"description\", display: 'Article description', errorRequired: \"Field is required\", required: () => { return this.props.proposalStore?.proposal?.materialSupportRequested; } },\n { name: \"quantity\", display: 'Quantity', errorRequired: \"Field is required\", required: () => { return this.props.proposalStore?.proposal?.materialSupportRequested; }, minValue: 0, errorFormat:'Quantity must be a positive amount' }\n ]\n }\n ],\n [ // Tab6 Project Plan \n {\n name: \"projectTimeline.timelines\", display: 'Project timetable', required: true, childValidations: [\n { name: \"no\", display: 'No of milestone', required: (childRow?: any) => { return Boolean(childRow.milestone?.trim()) || Boolean(childRow.startDate) || Boolean(childRow.endDate); }, errorRequired: 'Field is required' },\n { name: \"milestone\", display: 'No of milestone', required: (childRow?: any) => { return Boolean(childRow.no?.trim()) || Boolean(childRow.startDate) || Boolean(childRow.endDate); }, errorRequired: 'Field is required' },\n {\n name: \"startDate\", display: 'Start date', required: (childRow?: any) => { return Boolean(childRow.milestone?.trim()) || Boolean(childRow.no) || Boolean(childRow.endDate); },\n errorRequired: 'Field is required',\n maxValue: (childRow?: any) => { return childRow.endDate; },\n errorFormat: 'Start date must be before End Date'\n },\n { name: \"endDate\", display: 'End date', required: (childRow?: any) => { return Boolean(childRow.milestone?.trim()) || Boolean(childRow.startDate) || Boolean(childRow.no); }, errorRequired: 'Field is required' }\n ]\n }\n ],\n [ // Tab7 Attachment\n {\n name: \"isoCertificateAttachments\", display: 'ISO Certificate', required: () => { return this.props.proposalStore?.proposal?.typeOfStudy == \"Clinical\" }, errorRequired: \"For clinical studies, the ISO Certificate must be uploaded\", onValidate: () => {\n let isRequiredValid: boolean = this.props?.proposalStore?.isoCertificateAttachments && Boolean(this.props?.proposalStore?.isoCertificateAttachments.length);\n return [isRequiredValid, true];\n }\n },\n {\n name: \"cvAttachments\", display: 'CV', required: true, errorRequired: \"CV upload is required\", onValidate: () => {\n let isRequiredValid: boolean = this.props?.proposalStore?.cvAttachments && Boolean(this.props?.proposalStore?.cvAttachments.length);\n return [isRequiredValid, true];\n }\n }\n ]\n\n ];\n\n let hasErrors = false;\n let proposal: any = this.props.proposalStore?.proposal;\n if (proposal) {\n validationRules.forEach((tab, tabIdx) => {\n tab.forEach((field, fieldIdx) => {\n\n let [requiredIsValid, formatIsValid, childValidationErrors]: [boolean, boolean, any] = [false, false, undefined];\n let required: boolean = typeof field.required === 'function' ? field.required() : field.required;\n var fieldStillValid: boolean = true;\n\n if (field.onValidate) {\n [requiredIsValid, formatIsValid] = field.onValidate();\n fieldStillValid = (required ? requiredIsValid : true) && formatIsValid;\n } else {\n let fieldHierarchies = field.name.split(\".\");\n var model: any = null;\n for (var i = 0; i < fieldHierarchies.length; i++) {\n\n if (i === 0) {\n model = proposal;\n } else {\n model = model[fieldHierarchies[i - 1]];\n }\n if (!model) {\n // stop iterating, no more data under this level\n fieldStillValid = false;\n\n // if field is NOT Required => mark it as valid even if the model hierarchy is missing\n\n if (!required) {\n fieldStillValid = true;\n }\n break;\n }\n\n // if we arrive at bottom of hierarchy, validate field\n if (i === fieldHierarchies.length - 1) {\n [requiredIsValid, formatIsValid, childValidationErrors] = this.validateField(model, fieldHierarchies[i], required, field.format, field.maxLength, field.minValue, field.maxValue, field.childValidations);\n fieldStillValid = requiredIsValid && formatIsValid;\n }\n }\n } \n\n if (!fieldStillValid) {\n // add tabError\n tabErrors[tabIdx] = true;\n\n // add field error\n if (!requiredIsValid) {\n fieldValidationErrors[tabIdx][field.name] = { ...field, error: field.errorRequired }; \n } else {\n fieldValidationErrors[tabIdx][field.name] = { ...field, error: field.errorFormat };\n }\n\n if (childValidationErrors) {\n fieldValidationErrors[tabIdx][field.name].childErrors = childValidationErrors;\n }\n\n hasErrors = true;\n }\n });\n });\n }\n\n let firstErrorTab: number = null;\n tabErrors.forEach((error, idx) => {\n if (error) {\n if (!firstErrorTab) {\n firstErrorTab = idx + 1; // StepWizard tabs are 1-based\n }\n errorTabs.push(tabNames[idx]);\n }\n });\n\n this.props.proposalStore.proposal.errorTabs = hasErrors ? errorTabs : [];\n this.props.proposalStore.proposal.fieldErrors = hasErrors ? [...fieldValidationErrors] : null;\n this.props.proposalStore.proposal.firstErrorTab = firstErrorTab;\n\n return hasErrors;\n };\n\n private onSubmit = (goToStep: (step: any) => {}) => () => {\n // TODO \n if (!this.validateProposal()) {\n pdfCreator.createFile({ ...this.props.proposalStore.proposal }, true).then((file) => {\n this.props.proposalStore.proposal.pdfFileAsBase64 = file;\n this.onSaveProposal(true);\n })\n\n } else {\n // jump to first step with errors\n //const { validationFirstErrorTab } = this.state;\n this.setState({ currentStep: this.props.proposalStore.proposal.firstErrorTab });\n goToStep(this.props.proposalStore.proposal.firstErrorTab);\n window.setTimeout(function () { window.scrollTo(0, 0); }, 100);\n }\n };\n\n public render() {\n const { location, history } = this.props;\n\n //let navControl = ;\n\n return (\n \n {\n !this.state.showOrderSuccessMessage &&\n <>\n {\n this.state.message ?\n {\n this.setState({\n message: null\n });\n }}\n messageBarType={this.state.messageType}\n isMultiline={true}\n truncated={true}\n >\n {this.state.message}\n \n : null\n }\n \n }\n >\n this.onSaveProposal()} >\n this.onSaveProposal()}>\n this.onSaveProposal()}>\n this.onSaveProposal()}>\n this.onSaveProposal()}>\n this.onSaveProposal()}>\n this.onSaveProposal()}>\n this.onSaveProposal()}>\n this.onSaveProposal()}\n onSubmit={this.onSubmit}>\n\n \n \n \n }\n \n );\n\n }\n}","import * as React from 'react';\nimport { css, Stack, PrimaryButton, Text, getTheme, Link, DetailsList, DetailsListLayoutMode, IColumn, SelectionMode, IDetailsRowProps, DetailsRow, Spinner, IconButton, Dialog, DialogFooter, DefaultButton, ConstrainMode, Icon } from 'office-ui-fabric-react';\nimport { PageURL } from '../../App';\nimport './Welcome.scss';\nimport { IUserAccount, LoginComponent } from '../LoginComponent/LoginComponent';\nimport { Redirect } from 'react-router';\nimport DataProvider from '../../dataprovider/DataProvider';\nimport { IProposal } from '../Proposal/Models/IProposal';\nimport moment from 'moment';\n\nconst theme = getTheme();\n\nexport interface IWelcomePageProps {\n location: Location;\n history: any;\n stepSizeClass: string;\n isLoggedIn: boolean;\n dataProvider: DataProvider;\n currentUser?: IUserAccount;\n}\n\nexport interface IWelcomePageState {\n isLoggedIn: boolean;\n myItems?: any[];\n isLoading: boolean;\n isDeleteConfirmationOpen: boolean;\n selectedItem: any;\n isDeleting: boolean;\n}\n\nexport class WelcomePage extends React.Component {\n\n private _columns: IColumn[] = [\n { key: 'studyTitle', name: 'Study Title', fieldName: 'studyTitle', minWidth: 270, maxWidth: 300, isResizable: true },\n { key: 'propId', name: 'Proposal ID', fieldName: 'proposalID', minWidth: 100, maxWidth: 130, isResizable: true },\n { key: 'summary', name: 'Summary', fieldName: 'summary', minWidth: 270, maxWidth: 300, isResizable: true },\n { key: 'created', name: 'Created', fieldName: 'created', minWidth: 100, maxWidth: 100, isResizable: false },\n { key: 'actions', name: '', fieldName: null, minWidth: 40, maxWidth: 40, isResizable: false },\n ]\n\n constructor(props: IWelcomePageProps) {\n super(props);\n\n this.state = {\n isLoggedIn: props.isLoggedIn,\n myItems: [],\n isLoading: false,\n isDeleteConfirmationOpen: false,\n selectedItem: null,\n isDeleting: false\n };\n this.setLoggedInInformation();\n\n }\n public componentDidMount() {\n console.log(\"Welcomepage componentDidMount\");\n \n }\n\n public componentWillReceiveProps(newProps: IWelcomePageProps) {\n console.log(\"WelcomePage componentWillReceiveProps\");\n if (this.state.isLoggedIn != newProps.isLoggedIn) {\n this.setState({ isLoggedIn: newProps.isLoggedIn }, () => {\n this.setLoggedInInformation();\n });\n }\n }\n\n private setLoggedInInformation() {\n console.log(\"setLoggedInInof: \" + this.state.isLoggedIn);\n if (this.state.isLoggedIn && this.props.currentUser) {\n this.setState({ isLoading: true });\n this.props.dataProvider.getAllProposals(this.props.currentUser.userId).then(items => {\n console.log(items);\n this.setState({ myItems: items });\n }).catch((err) => {\n console.log(\"Error trying to load proposals: \" + err);\n this.setState({ myItems: [] });\n }).finally(() => {\n this.setState({ isLoading: false });\n });\n } else {\n this.setState({ myItems: [] });\n\n }\r\n }\n private _renderRow = (props: IDetailsRowProps): JSX.Element => {\n if (props) {\n return
this._onDetailsLineClick(props.item)}>
;\n }\n }\n\n\n private _onDetailsLineClick = (item: any) => {\n this.props.history.push(PageURL.CreateProposal + \"?id=\"+item.id);\n //alert(\"clicked: \" + JSON.stringify(item));\n }\n\n private _renderItemColumn = (item: any[], index: number, column: IColumn) => {\n const fieldContent = (item as any)[column.fieldName as string] as string;\n\n switch (column.key) {\n case 'created':\n return Boolean(fieldContent) ? moment(new Date(fieldContent)).format(\"DD.MM.YYYY\") : null;\n case 'actions':\n return {\n event.preventDefault();\r\n event.stopPropagation();\r\n this.setState({\r\n selectedItem: item,\r\n isDeleteConfirmationOpen: true\r\n });\r\n }\n } />\n default:\n return fieldContent;\n }\n }\n\n private onDeleteClicked = () => {\n this.setState({ isDeleting: true });\n this.props.dataProvider.deleteProposal(this.state.selectedItem.id).then(() => {\n this.props.dataProvider.getAllProposals(this.props.currentUser.userId).then(items => {\n console.log(items);\n this.setState({ myItems: items, isLoading: false, isDeleting: false, isDeleteConfirmationOpen: false });\n });\n });\n };\n\n private onDismissDeleteDialog = () => {\n this.setState({\n selectedItem: null,\r\n isDeleteConfirmationOpen: false\n });\n };\n\n public render(): React.ReactElement {\n\n\n return (\n \n \n

Investigator-initiated Studies

\n
\n \n

Overview

\n

Thank you for your interest in working with Straumann to support medical research. Following our commitment to \"More Than Creating Smiles: Restoring Confidence\", we want to be your partner of choice in esthetic dentistry.

\n

Close collaboration with dental professionals is a hallmark of Straumann's success. To continue this tradition and facilitate the process of turning concepts into solutions, Straumann invites medical researchers to submit study proposals, which are received, reviewed and given feedback by a dedicated Research Screening Committee. The following are the types of research projects the committee reviews: .

\n
    \n
  • Pre Clinical Studies\n Pre-clinical studies involve testing our products by mechanical, cellular or digital assays (in vitro studies) or by histological or surface-driven analysis (animal studies).
  • \n
  • Clinical Studies\n An Investigator-Initiated Study (IIS) aims to test clinical hypothesis within the intended use of our products and solutions.
  • \n
\n

Focus topics

\n
    \n
  1. Reduced invasiveness and improved efficiency treatment protocols including Straumann implants, prosthetics and biomaterials
  2. \r\n
  3. Prevention and management of biologic and technical complications and treatment protocols
  4. \r\n
  5. Digital technologies
  6. \r\n
  7. Analysis of retrospective databases, registries and data collections
  8. \n
\n \n {\n !this.state.isLoggedIn ?\n
Please sign in to be able to create a request
\n :\n <>\n \n
\n {\n //sessionStorage.setItem(\"Country\", country);\n // alert(\"clicked\")\n this.props.history.push(PageURL.CreateProposal);\n }}\n allowDisabledFocus\n />\n
\n
\n\n \n
\n {\n this.state.myItems?.length > 0 ?\n <>\n
\n My Draft Proposals\n {/*

My draft proposals

*/}\n \n
\n : <>{this.state.isLoading ? : null }\n }\n
\n
\n \n\n }\n
\n {/*
Contact us: Research Screening
*/}\n Contact us\n \n \n \n \n \n \n \n \n {this.state.isDeleting && }\n \n \n \n \n
\n\n
\n );\n }\n}","export class Common{\r\n public static removeUrlParam(key:string):void {\r\n let url = window.location.href;\r\n var rtn = url.split(\"?\")[0],\r\n param,\r\n params_arr = [],\r\n queryString = (url.indexOf(\"?\") !== -1) ? url.split(\"?\")[1] : \"\";\r\n if (queryString !== \"\") {\r\n params_arr = queryString.split(\"&\");\r\n for (var i = params_arr.length - 1; i >= 0; i -= 1) {\r\n param = params_arr[i].split(\"=\")[0];\r\n if (param === key) {\r\n params_arr.splice(i, 1);\r\n }\r\n }\r\n rtn = rtn + \"?\" + params_arr.join(\"&\");\r\n }\r\n\r\n if(rtn.endsWith(\"?\")){\r\n rtn = rtn.substr(0, rtn.length-1);\r\n }\r\n\r\n window.history.pushState(null, null, rtn); //remove request id in url\r\n }\r\n\r\n public static changeUrlWithoutReload(newUrl: string):void{\r\n window.history.pushState(null, null, newUrl);\r\n }\r\n\r\n public static getCurrentServerUrl(){\r\n let port = window.location.port && window.location.port!=\"0\" && window.location.port!=\"80\" && window.location.port!=\"443\" ? `:${window.location.port}` : \"\";\r\n return `${window.location.protocol}//${window.location.hostname}${port}`.toLowerCase();\r\n }\r\n}","import { IDataProvider } from \"./IDataProvider\";\nimport HttpService from \"./HttpService\";\nimport { IProposal } from \"../components/Proposal/Models/IProposal\";\nimport { IApplicationSettings } from \"../components/Proposal/Models/IApplicationSettings\";\nimport { IAuthenticatedUser, IUserAccount } from \"../components/LoginComponent/LoginComponent\";\nimport { Common } from \"../components/LoginComponent/Common\";\nimport { IFileItem } from \"../components/Proposal/Models/IFileItem\";\n\nexport default class DataProvider implements IDataProvider {\n\n public apiEndpointSP = `/api/SPInterface`;\n public userAccountEndpointSP = `/api/UserAccountSPInterface`;\n\n public async getApplicationSettings(): Promise {\n const applicationSettings: IApplicationSettings = await HttpService.get(`${this.apiEndpointSP}/ApplicationSettings`);\n //console.log(applicationSettings);\n return applicationSettings;\n }\n\n public async getProposal(proposalId: string): Promise { \n return HttpService.get(`${this.apiEndpointSP}/Proposal/${encodeURIComponent(proposalId)}`).then((proposal) => {\n\n proposal.projectTimeline?.timelines?.map((x:any) => {\n x.startDate = x.startDate ? new Date(x.startDate.toString()) : undefined;\n x.endDate = x.endDate ? new Date(x.endDate.toString()) : undefined;\n });\n proposal.created = proposal.created ? new Date(proposal.created.toString()) : undefined;\n proposal.modified = proposal.modified ? new Date(proposal.modified.toString()) : undefined;\n\n return proposal;\n });\n }\n\n public async getAttachments(proposalId: string): Promise {\n const attachments: IFileItem[] = await HttpService.get(`${this.apiEndpointSP}/Proposal/Attachments/${encodeURIComponent(proposalId)}`);\n\n return attachments;\n }\n\n public async createProposal(proposal: IProposal): Promise {\n\n const response = await HttpService.post(`${this.apiEndpointSP}/CreateProposal`, proposal);\n return response;\n }\n\n public async deleteProposal(id: number): Promise {\n return HttpService.post(`${this.apiEndpointSP}/DeleteProposal`, id).then(() => {\n return true;\n }).catch(() => { return false; });\n }\n\n public getAllProposals(userId: string): Promise {\n try {\n console.log(\"getAllProposals: \" + userId);\n return HttpService.post(`${this.apiEndpointSP}/Proposals`, userId);\n } catch (ex) {\n return Promise.reject((ex).message);\n }\n }\n\n public async uploadISOCertificate(proposal: IProposal, files: Array): Promise {\n var formData = new FormData();\n formData.append(`id`, proposal.id.toString());\n formData.append(`proposalId`, proposal.proposalId);\n\n let fileNeedToDelete: string[] = [];\n files.forEach((file, index) => {\n if (file instanceof File)\n formData.append(`file${index}`, file);\n else if (file.isDeleted)\n fileNeedToDelete.push(file.uniqueId);\n });\n formData.append(`filesToDelete`, JSON.stringify(fileNeedToDelete));\n\n let authToken = window.sessionStorage.authToken ? JSON.parse(window.sessionStorage.authToken) : null;\n let response = await fetch(`${this.apiEndpointSP}/UploadISOCertificate`, {\n method: 'POST',\n body: formData,\n headers: {\n 'Authorization': authToken ? `Bearer ${authToken.token}` : \"\"\n }\n });\n\n if (response.ok)\n return response.json();\n else if (response.status == 401) {\n throw \"Upload ISO Certificate Error: Unauthorized. Please sign out and sign back in and re-try.\";\n }\n else\n throw await response.json();\n }\n\n public async uploadCV(proposal: IProposal, files: Array): Promise {\n\n var formData = new FormData();\n formData.append(`id`, proposal.id.toString());\n formData.append(`proposalId`, proposal.proposalId);\n\n let fileNeedToDelete: string[] = [];\n files.map((file, index) => {\n if (file instanceof File)\n formData.append(`file${index}`, file);\n else if (file.isDeleted)\n fileNeedToDelete.push(file.uniqueId);\n });\n formData.append(`filesToDelete`, JSON.stringify(fileNeedToDelete));\n\n let authToken = window.sessionStorage.authToken ? JSON.parse(window.sessionStorage.authToken) : null;\n let response = await fetch(`${this.apiEndpointSP}/UploadCV`, {\n method: 'POST',\n body: formData,\n headers: {\n 'Authorization': authToken ? `Bearer ${authToken.token}` : \"\"\n }\n });\n\n if (response.ok)\n return response.json();\n else if (response.status == 401) {\n throw \"Upload CV Error: Unauthorized. Please sign out and sign back in and re-try.\";\n }\n else\n throw await response.json();\n }\n\n public async uploadOthers(proposal: IProposal, files: Array): Promise {\n var formData = new FormData();\n formData.append(`id`, proposal.id.toString());\n formData.append(`proposalId`, proposal.proposalId);\n let fileNeedToDelete: string[] = [];\n files.map((file, index) => {\n if (file instanceof File)\n formData.append(`file${index}`, file);\n else if (file.isDeleted)\n fileNeedToDelete.push(file.uniqueId);\n });\n formData.append(`filesToDelete`, JSON.stringify(fileNeedToDelete));\n\n let authToken = window.sessionStorage.authToken ? JSON.parse(window.sessionStorage.authToken) : null;\n let response = await fetch(`${this.apiEndpointSP}/UploadOthers`, {\n method: 'POST',\n body: formData,\n headers: {\n 'Authorization': authToken ? `Bearer ${authToken.token}` : \"\"\n }\n });\n\n if (response.ok)\n return response.json();\n else if (response.status == 401) {\n throw \"Upload Other Documents: Unauthorized. Please sign out and sign back in and re-try.\";\n }\n else\n throw await response.json();\n }\n\n public logErrorInConsole(errorArea: string, errorObj: any) {\n this.logError(errorObj.message);\n console.log(`Error message ${errorArea}: `, errorObj.message);\n console.log(`Error Stack Trace ${errorArea}: `, errorObj.stack);\n }\n\n private logError(msg: any) {\n if (console) {\n console.log(`%cERROR:`, \"color:red;font-weight:bold;font-size:16px\");\n console.log(msg);\n }\n }\n\n public extractErrorMessageFromErrorObject(error: any): string {\n\n let errorMessage = error.message ? error.message as string :( error.title ? error.title as string : error.toString() );\n console.dir(error);\n if (errorMessage && errorMessage.indexOf(\"::>\") >= 0) {\n try {\n let errorObj = JSON.parse(errorMessage.substring(errorMessage.indexOf(\"::>\") + 3).trim());\n\n if (errorObj[\"odata.error\"] && errorObj[\"odata.error\"].message && errorObj[\"odata.error\"].message.value)\n errorMessage = errorObj[\"odata.error\"].message.value;\n\n } catch (error) {\n errorMessage = errorMessage.substring(errorMessage.indexOf(\"::>\") + 3).trim();\n }\n\n }\n\n return errorMessage;\n }\n\n public addParam(param: string, sourceURL: string): string {\n var rtn = sourceURL.split(\"?\")[0],\n params_arr = [],\n queryString = (sourceURL.indexOf(\"?\") !== -1) ? sourceURL.split(\"?\")[1] : \"\";\n\n if (queryString !== \"\") {\n params_arr = queryString.split(\"&\");\n params_arr.push(param);\n if (params_arr.length > 0)\n rtn = rtn + \"?\" + params_arr.join(\"&\");\n }\n else {\n rtn = rtn + \"?\" + param;\n }\n return rtn;\n }\n\n public ensureExternalUserAccount(user: IUserAccount, token: string, isRSMToken: boolean): Promise {\n return HttpService.post(`${this.userAccountEndpointSP}/EnsureExternalUserAccounts`, { \"Account\": user, \"Token\": token, \"IsRSMToken\": isRSMToken });\n }\n public registerInternalUserAccount(user: IUserAccount, reCaptchaToken: string): Promise {\n return HttpService.post(`${this.userAccountEndpointSP}/RegisterUserAccount`, { \"Account\": user, \"BaseUrl\": Common.getCurrentServerUrl(), \"reCaptchaToken\": reCaptchaToken });\n }\n public loginInternalUserAccount(user: IUserAccount, reCaptchaToken: string): Promise {\n return HttpService.post(`${this.userAccountEndpointSP}/CustomUserLogin`, { \"Account\": user, \"reCaptchaToken\": reCaptchaToken});\n }\n public getUserByActivateParam(activationGuid: string, a: boolean): Promise {\n return HttpService.post(`${this.userAccountEndpointSP}/GetUserByActivateParam`, { \"activateParameter\": activationGuid, \"activate\": a });\n }\n public resetPWByActivateParam(activationGuid: string, pw: string): Promise {\n return HttpService.post(`${this.userAccountEndpointSP}/ResetPWByActivateParam`, { \"activateParameter\": activationGuid, \"password\": pw });\n }\n public getNewActivationCode(email: string, baseUrl: string): Promise {\n return HttpService.post(`${this.userAccountEndpointSP}/GetActivationCode`, { \"email\": email, \"baseUrl\": baseUrl });\n }\n public resendActivationCode(email: string, baseUrl: string): Promise {\n return HttpService.post(`${this.userAccountEndpointSP}/ResendActivationCode`, { \"email\": email, \"baseUrl\": baseUrl });\n }\n public documentUpload(Id: string, base64File: string, applicantName:string): Promise {\n return HttpService.post(`${this.apiEndpointSP}/UploadFileByBase64`, { \"id\": Id, \"base64File\": base64File, \"applicantName\": applicantName });\n }\n}","import React, { useState, useEffect } from \"react\";\nimport { useMsal } from \"@azure/msal-react\";\n//import { useIsAuthenticated } from \"@azure/msal-react\";\nimport Button from \"react-bootstrap/Button\";\nimport { AuthenticatedTemplate, UnauthenticatedTemplate } from \"@azure/msal-react\";\nimport { AccountType, IAuthenticatedUser, IUserAccount } from './LoginComponent';\nimport { Redirect } from 'react-router';\nimport { Dialog, DialogType, Spinner, SpinnerSize } from \"office-ui-fabric-react\";\n\n// Add scopes here for ID token to be used at Microsoft identity platform endpoints.\nexport const loginRequest = {\n scopes: [\"User.Read\"],\n //prompt: 'select_account',\n};\n\nfunction parseMicrosoftUser(idToken:any):IUserAccount {\n return {\n firstName: idToken.idTokenClaims?.given_name,\n lastName: idToken.idTokenClaims?.family_name,\n email: idToken.idTokenClaims?.email,\n accountType: AccountType.Microsoft,\n userId: null,\n activateGuid: null,\n id: null,\n password: null\n } as IUserAccount;\n}\n\nfunction handleLogin(instance: any, callback: (userInformation: IUserAccount, token: string) => Promise, setAuthenticated: (a: boolean) => void, showError: (e: string) => void, setAuthStatus: (loggedIn: boolean, user: IAuthenticatedUser) => Promise, setRedirect: (a: boolean) => void, setShowWaitingSpinner:(a:boolean)=>void) {\n return instance.loginPopup(loginRequest).then((result:any) => {\n\n console.log(\"MICROSOFT ACCOUNT\", result);\n\n let user = parseMicrosoftUser(result?.account);\n\n setShowWaitingSpinner(true);\n\n callback(user, result.idToken).then((spUser: IAuthenticatedUser) => {\n if (spUser.isNewUser) {\n window.sessionStorage.rsmConsentTarget = JSON.stringify(spUser);\n\n setShowWaitingSpinner(false);\n\n // redirect user to consent page first\n setRedirect(true);\n\n // for now, don't sign user in yet\n window.sessionStorage.removeItem(\"authToken\");\n window.sessionStorage.removeItem(\"rsmUser\");\n } else {\n setShowWaitingSpinner(false);\n setAuthStatus(true, spUser);\n setAuthenticated(true);\n }\n }).catch((err) => { \n setShowWaitingSpinner(false);\n \n console.log(\"EnsureUser: \"+err);\n instance.logoutRedirect({\n onRedirectNavigate: (url:string) => {\n // Return false if you would like to stop navigation after local logout\n return false;\n }\n });\n setAuthStatus(false, null);\n setAuthenticated(false);\n\n window.sessionStorage.removeItem(\"authToken\");\n window.sessionStorage.removeItem(\"rsmUser\");\n\n showError(\"Microsoft\");\n });\n\n\n }).catch((err:string) => {\n console.error(err);\n });\n}\n\nfunction handleLogout(instance: any, setAuthenticated: (a: boolean) => void, setAuthStatus: (loggedIn: boolean, user: IAuthenticatedUser) => Promise) {\n instance.logoutPopup().then((result:any) => {\n setAuthenticated(false);\n setAuthStatus(false, null);\n }).catch((err:string) => {\n console.error(err);\n });\n}\n\nexport interface IMicrosoftComponentProps {\n currentUser: IAuthenticatedUser;\n signedIn: boolean;\n callback: (userInformation: IUserAccount, token: string, isRSMToken: boolean) => Promise;\n showError: (error:string)=>void;\n setAuthStatus: (loggedIn:boolean, user:IAuthenticatedUser) => Promise;\n}\n\n\nexport const MicrosoftComponent = (props:IMicrosoftComponentProps) => {\n const { instance, accounts } = useMsal();\n\n //console.log(\"MS Accounts\", accounts);\n\n const [authenticated, setAuthenticated] = useState(false);\n const [redirect, setRedirect] = useState(false);\n const [showWaitingSpinner, setShowWaitingSpinner] = useState(false);\n\n const [userName, setUserName] = useState(props.currentUser ? `${props.currentUser.firstName} ${props.currentUser.lastName}` : \"\");\n\n useEffect(() => {\n if (props.signedIn) {\n setAuthenticated(true);\n } else {\n setAuthenticated(false);\n }\n\n if (props.currentUser) {\n setUserName(props.currentUser ? `${props.currentUser.firstName} ${props.currentUser.lastName}` : \"\");\n }\n\n //if (accounts.length > 0) {\n // console.log(\"MSAL Accounts\", accounts);\n\n // let user = parseUser(accounts[0]);\n // if (!props.currentUser || props.currentUser.email !== user.email) {\n // props.setAuthStatus(true, user);\n // }\n //} else {\n // if (props.currentUser) {\n // props.setAuthStatus(false, null);\n // }\n //}\n }); \n\n return (\n <>\n {redirect && }\n {authenticated ?\n <>
Signed in as:
{`${userName}`}
\n :\n \n }\n