{"version":3,"sources":["webpack://@powercampus/self-service/webpack/runtime/chunk loaded","webpack://@powercampus/self-service/./ClientApp/Components/Generic/SectionCard.tsx","webpack://@powercampus/self-service/./ClientApp/Components/Registration/Courses/PermissionRequestDetail.tsx","webpack://@powercampus/self-service/./ClientApp/Types/Students/ISectionStatus.ts","webpack://@powercampus/self-service/./ClientApp/Components/Generic/SectionDetailModal.tsx","webpack://@powercampus/self-service/./ClientApp/Components/Registration/Courses/AdvancedSearchModal.tsx","webpack://@powercampus/self-service/./ClientApp/Components/Search/Course/ShareSearchCourseLinkModal.tsx","webpack://@powercampus/self-service/./ClientApp/Requests/Generic/Section.ts","webpack://@powercampus/self-service/./ClientApp/Requests/Registration/Courses.ts","webpack://@powercampus/self-service/./ClientApp/Requests/Search/Section.ts","webpack://@powercampus/self-service/./ClientApp/Components/Search/Section/SectionView.tsx","webpack://@powercampus/self-service/./node_modules/moment/locale|sync|/^/.*$","webpack://@powercampus/self-service/webpack/bootstrap","webpack://@powercampus/self-service/webpack/runtime/compat get default export","webpack://@powercampus/self-service/webpack/runtime/define property getters","webpack://@powercampus/self-service/webpack/runtime/global","webpack://@powercampus/self-service/webpack/runtime/hasOwnProperty shorthand","webpack://@powercampus/self-service/webpack/runtime/make namespace object","webpack://@powercampus/self-service/webpack/runtime/node module decorator","webpack://@powercampus/self-service/webpack/runtime/runtimeId","webpack://@powercampus/self-service/webpack/runtime/jsonp chunk loading","webpack://@powercampus/self-service/webpack/startup"],"names":["deferred","withStyles","theme","createStyles","avatar","breakpoints","down","marginLeft","avatarContainer","up","display","justifyContent","btnCentered","textAlign","btnPermissionRequest","marginTop","Tokens","buttonsContainer","flexDirection","centered","alignItems","groupAvatarContainer","iconStatusMessage","verticalAlign","instructorName","wordBreak","listTyle","listStyleType","margin","padding","meeting","multipleIinstructorName","only","resultCardContainer","spacingHTMLMessage","statusLabelMargin","marginBottom","statusMessage","withWidth","props","schedules","instructors","allowChanges","canAddToCart","canAddToWaitlist","canChangeCreditType","canDrop","canRemoveFromCart","canRemoveFromWaitlist","classes","currencySymbol","disableDrop","id","numberCulture","resources","ruleGroupBlockId","section","sectionStatus","showYearTermSession","width","withCard","onAddToCart","onAddToWaitlist","onBeforeAddToCart","onBeforeAddToWaitlist","onDrop","onOpenCreditTypeModal","onOpenPermissionRequestModal","onOpenViewCommentsModal","onRemoveFromCart","onRemoveFromWaitlist","onSelectSection","onViewSectionDetails","onViewSectionDetailsByBlock","sectionTitle","Format","formatTitleSection","eventId","eventName","sectionAsStudentSchedule","length","Text","formatStartEndTime","startTime","endTime","dayDesc","size","formatOrganization","orgName","bldgName","formatBuilding","floorId","formatFloor","roomId","formatRoom","lblMultipleMeetingTimes","lblNoSchedule","className","Tooltip","title","fullName","aria-label","Avatar","backgroundNumber","colorFirstLetter","root","marginTopBottom","marginTopBottom2","firstLetter","align","max","spacing","map","instructor","iInstructor","key","marginLeftRight","lblMultipleInstructors","background","variant","lblNoInstructor","removeButton","permissionRequestButton","viewCommentsButton","addButton","Button","data-id","color","onClick","event","btnAdd","btnWait","lblToWaitlist","undefined","hasBlockRelated","btnRemove","IconButton","Icon","name","btnDrop","data-name","disabled","isPermissionRequired","Boolean","advisorApprovalInfo","permissionRequestInfo","TextProps","data-permissionrequest","textVariantStyling","btnViewComments","indicatorSeatsLeft","percentageSeatsLeft","seatsLeft","Math","floor","maximumSeats","type","sectionData","Grid","container","item","xs","sm","lg","labelText","StatusLabel","text","labelType","message","statusIcon","year","termDesc","formatYearTermSession","sessionDesc","formatSubtypeSection","eventSubType","Paragraph","formatTypeChangeCreditType","eventType","creditTypeDescription","defaultCreditTypeDesc","events","formatTypeCreditType","formatDuration","startDate","endDate","areFeesApplicable","lblFees","importantMessage","dangerouslySetInnerHTML","__html","hideActions","justify","UpDownLabel","sizeTextDown","sizeTextUp","textDown","lblCredits","textUp","credits","withMarginTextUp","indicatorUp","lblSeats","toLocaleString","seatsWaiting","formatSeatsWaiting","sectionFeesByID","sectionFee","i","formatFees","amount","chargeDescription","feeGroupDescription","lblDoesNotApply","Card","checkDisabled","wrap","md","direction","Checkbox","checked","isSelected","inputProps","noMargin","onChange","lblAddToWaitlist","large","spin","anchorIcon","backgroundColor","chatContainer","overflowX","overflowY","chatContainerScroll","maxHeight","chatTitle","boxShadow","height","chipCommonComments","borderWidth","chipEditableComments","chipImportantComments","chipStatusComments","commentsForStudent","commentsInChip","paddingBottom","paddingTop","whiteSpace","commentsInChipEditable","firstIcon","overrideCommentsContainer","secondIcon","textOverChip","chatTitleAdorned","generalStatus","isFaculty","isStudent","resourcesPermissionRequestStatus","withChatTitle","withScroll","onCancelEdit","onChangeCommentsForEdit","onEdit","onEnableEdit","getStatusText","status","lblApproved","lblDenied","lblPending","getStatusType","lblStatusTitle","classnames","permissionRequest","ipr","onChangeCommentsForEditWithId","target","value","onClickCancelEdit","onClickEdit","onClickEnableEdit","studentComments","studentCommentsBackup","requestDate","editable","Chip","label","TextField","error","helperText","lblCommentRequired","lblComments","multiline","rows","Link","anchor","btnAccept","btnCancel","btnEdit","facultyInfo","isMyInfo","statusPermisionRequest","permissionDate","permissionComments","component","lblTypeComments","overrideId","overrideInfo","lblNoComments","overrideDate","overrideComments","Divider","SectionStatus","commentsContainer","courseContainer","deniedDivider","inCartDivider","instructorAvatars","instructorsContainer","marginRight","paddingLeft","paddingRight","pendingDivider","registeredDivider","schedulesContainer","separatorExpansionPanel","Note1","Note2","Note3","Note4","Note5","classDivider","creditTypeDesc","isStudentView","open","PermissionRequestDetailProps","onClose","cultures","LayoutStore","note1","lblNote1","note2","lblNote2","note3","lblNote3","note4","lblNote4","note5","lblNote5","inCart","pending","registered","denied","footerModal","advisorApproval","headerModal","noMarginBottom","noMarginTop","IconProps","headerPermissionRequest","lblPermissionRequest","pr","contentPermissionRequest","permissionRequestDetail","ExpansionPanel","header","lblAdvisorApproval","decisionDate","reason","schedule","isWidthUp","indexOf","substring","detailAlignment","bodyModal","isConEd","lblCeuLong","placement","lblCeu","ceu","lblTotalSeats","formatSession","academicYear","academicTermDesc","formatTypeChangeCreditTypes","generalEd","lblDeliveryMethod","lblInstructors","lblSchedules","description","lblCourseDescription","lblRegistrationType","lblContinuingEducation","lblTraditional","lblPrerequisits","prerequisiteConditionList","prerequisite","lblCorequisites","corequisistes","corequisite","formatCorequisite","subTypeDescription","sectionFees","lblCreditTypes","creditTypes","creditType","Modal","disableHeaderTypography","footer","maxWidth","sectionNoConEd","advancedSearchSelected","data","dateTimeCulture","firstDayOfWeek","isLoadingSectionSearch","noDefaultPeriod","shortDatePattern","onClear","onDateTimeChange","onDropdownChange","onSearch","onTextFieldChange","emptyOption","lblDropDownEmptyText","Dropdown","lblPeriod","options","periods","period","lblSession","sessions","session","gutterBottom","lblAdvancedSearch","lblAdvancedSearchSubTitle","btnClear","loading","btnSearch","lblKeyword","keywords","lblCourse","lblTimeLocation","DatePicker","appendToBody","culture","displayFormat","startDateKey","lblStartsFrom","onChangeValue","endDateKey","lblEndsBy","hours","lblMeeting","meetings","lblCampus","campus","campusId","lblCourseDetails","lblStatus","lblSubtype","subTypes","lblCreditType","lblInstructor","instructorId","lblProgram","programs","program","lblClassLevel","classLevels","classLevel","lblDepartment","departments","department","lblPopulation","populations","population","lblCollege","colleges","college","lblNonTraditionalPrograms","nontraditionalPrograms","nonTradProgram","lblCurriculum","curriculums","curriculum","lblGeneralEducation","generalEducationList","lblCourseType","eventTypes","urlToShare","onCloseModal","disableBackdropClick","btnOk","lblTitle","lblUrlToShare","getSection","withIsCartable","resolver","resolveError","personId","Request","this","getSectionAnonymous","getSectionInstructors","sectionId","signal","getAdvancedSearchOptions","getBlock","blockRegistrationRuleGroupId","blockRegRuleGroupBlockId","yearTerm","getRule","getBlocks","getPeriods","postAddToCart","postAddBlock","block","postAddToWaitlist","postAdvancedSearchOptions","advancedOptions","postDropBlock","postRemoveBlock","postDropRegistration","postEditCreditType","postEditPermissionRequest","comments","postRemoveCartSections","sections","postRemoveFromCart","postRemoveFromWaitlist","postSavePermissionRequest","postScheduleList","split","term","postSections","keyWords","postStudentRegistration","getSearchOptions","sectionSearchParameters","startIndex","styles","inline","SectionView","state","page","rowsPerPage","LayoutActions","Requests","resolveGetSections","logError","e","LogData","setContent","setState","advancedSearchModalOpen","onOpenAdvancedSearchModal","optionsSelected","registrationtype","academicTerm","onClearSelectedOptions","overallCount","onNewSearch","onCloseAdvancedSearchModal","date","_isValid","toLowerCase","substr","onAdvancedSearchDateTimeChange","optionSelected","ids","onAdvancedSearchDropdownChange","newUrl","setQueryString","window","location","assign","onAdvancedSearch","isEmptySearch","idSelected","onAdvancedSearchTextFieldChange","maxValue","rowsPerPageOptions","forEach","option","push","getRowsPerPageOptions","_event","pageNumber","preservePage","preserveRowsPerPage","onChangePage","Number","onChangeRowsPerPage","currentTarget","dataset","RequestsSection","resolveGetSection","sectionDetail","sectionModalOpen","onCloseSectionModal","openShareSearchCourseModal","onCloseShareSearchModal","urlLink","field","origin","Constants","encodeURIComponent","onShareSearch","onClearCourseCode","onClearKeywords","pageUrl","document","lblPageTitle","RequestsCourses","resolveGetAdvancedSearchOptions","resolveLayoutReady","json","result","JSON","parse","advancedSearchOptions","advancedSearchModal","lblOpen","lblClosed","lblWaitlist","code","redirectError","log","showError","isNoResults","ready","componentError","onLayoutReady","idModule","idPage","getInitialState","logData","messageType","ResultType","info","componentDidCatch","hdnEventId","getElementById","String","remove","hdnInstructorId","hdnCampusId","hdnClassLevel","hdnCollege","hdnCreditType","hdnCurriculum","hdnDepartment","hdnEndDate","hdnEndTime","hdnEventSubType","hdnEventType","hdnGeneralEd","hdnKeywords","hdnMeeting","hdnNonTradProgram","hdnPeriod","hdnYear","hdnTerm","hdnPopulation","hdnProgram","hdnSession","hdnStartDate","hdnStartTime","hdnStatus","componentDidMount","contentPage","sectionsList","sectionsOptionsModal","sectionModal","shareSection","lblSelect","firstRow","lastRow","totalRows","formatResultsShowing","sectionIndex","sectionCard","Pagination","count","MessageStyled","classMessage","lblSpecifySearch","Illustration","lblNoResults","sectionDetailModal","shareSearchCourseLinkModalResources","Search","onSearchInvoked","lblNewSearch","defaultExpanded","lblFilters","placeholder","lblCourseCode","onEnterPress","onClearClick","fluid","lblShareSearch","Layout","showCart","showNotifications","React","SectionViewWithLayout","withLayout","ReactDOM","webpackContext","req","webpackContextResolve","__webpack_require__","o","Error","keys","Object","resolve","module","exports","__webpack_module_cache__","moduleId","cachedModule","loaded","__webpack_modules__","call","m","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","every","splice","n","getter","__esModule","d","a","definition","defineProperty","enumerable","get","g","globalThis","Function","obj","prop","prototype","hasOwnProperty","r","Symbol","toStringTag","nmd","paths","children","installedChunks","469","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","self","bind","__webpack_exports__"],"mappings":"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","file":"Section.js","sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tresult = fn();\n\t\t}\n\t}\n\treturn result;\n};","/* Copyright 2018-2020 Ellucian Company L.P. and its affiliates.\r\n * File: SectionCard.tsx\r\n * Type: Presentation component */\r\n\r\n// #region Imports\r\nimport React from 'react';\r\n\r\n// Core components\r\nimport Avatar, { AvatarGroup } from '@hedtech/powercampus-design-system/react/core/Avatar';\r\nimport Button from '@hedtech/powercampus-design-system/react/core/Button';\r\nimport Card, { CardContent } from '@hedtech/powercampus-design-system/react/core/Card';\r\nimport Checkbox from '@hedtech/powercampus-design-system/react/core/Checkbox';\r\nimport Grid from '@hedtech/powercampus-design-system/react/core/Grid';\r\nimport Icon from '@hedtech/powercampus-design-system/react/core/Icon';\r\nimport IconButton from '@hedtech/powercampus-design-system/react/core/IconButton';\r\nimport Paragraph from '@hedtech/powercampus-design-system/react/core/Paragraph';\r\nimport StatusLabel from '@hedtech/powercampus-design-system/react/core/StatusLabel';\r\nimport Text from '@hedtech/powercampus-design-system/react/core/Text';\r\nimport Tooltip from '@hedtech/powercampus-design-system/react/core/Tooltip';\r\nimport UpDownLabel from '@hedtech/powercampus-design-system/react/core/UpDownLabel';\r\n\r\n// Helpers\r\nimport Format from '@hedtech/powercampus-design-system/helpers/Format';\r\nimport Tokens from '@hedtech/powercampus-design-system/react/core/styles/Tokens';\r\nimport { createStyles, Theme, withStyles, WithStyles } from '@hedtech/powercampus-design-system/react/core/styles/withStyles';\r\nimport { withWidth, WithWidth } from '@hedtech/powercampus-design-system/react/core/withWidth';\r\n\r\n// Types\r\nimport { ISection } from '../../Types/Section/ISection';\r\nimport { ISectionStatus } from '../../Types/Students/ISectionStatus';\r\nimport { IStudentSchedule } from '../../Types/Students/IStudentSchedule';\r\n// #endregion Imports\r\n\r\n// #region Internal types\r\nexport interface ISectionCardProps {\r\n allowChanges?: boolean;\r\n canAddToCart?: boolean;\r\n canAddToWaitlist?: boolean;\r\n canChangeCreditType?: boolean;\r\n canDrop?: boolean;\r\n canRemoveFromCart?: boolean;\r\n canRemoveFromWaitlist?: boolean;\r\n disableDrop?: boolean;\r\n id: string;\r\n ruleGroupBlockId?: number;\r\n section: ISection | IStudentSchedule ;\r\n sectionStatus?: ISectionStatus;\r\n withCard?: boolean;\r\n showYearTermSession?: boolean;\r\n}\r\n\r\nexport interface ISectionCardPropsToExtend {\r\n currencySymbol: string;\r\n numberCulture: string;\r\n resources: ISectionCardResProps;\r\n onAddToCart?: (event: React.MouseEvent) => void;\r\n onAddToWaitlist?: (event: React.MouseEvent) => void;\r\n onBeforeAddToCart?: () => void;\r\n onBeforeAddToWaitlist?: () => void;\r\n onDrop?: (event: React.MouseEvent) => void;\r\n onOpenCreditTypeModal?: (id: number) => void;\r\n onOpenPermissionRequestModal?: (event: React.MouseEvent) => void;\r\n onOpenViewCommentsModal?: (event: React.MouseEvent) => void;\r\n onRemoveFromCart?: (event: React.MouseEvent) => void;\r\n onRemoveFromWaitlist?: (event: React.MouseEvent) => void;\r\n onSelectSection?: (event: React.ChangeEvent) => void;\r\n onViewSectionDetails?: (event: React.MouseEvent) => void;\r\n onViewSectionDetailsByBlock?: (event: React.MouseEvent) => void;\r\n}\r\n\r\nexport interface ISectionCardResProps {\r\n btnAdd: string;\r\n btnDrop: string;\r\n btnPermissionRequest: string;\r\n btnRemove: string;\r\n btnViewComments: string;\r\n btnWait: string;\r\n formatBuilding: string;\r\n formatDuration: string;\r\n /* ***** Customization Start *****\r\n *\r\n * Author: Ricardo Luna (ricardo.luna@ellucian.com)\r\n * Client: Nicolet AreaTechnical College\r\n * MOD: Self-Service Custom Course Modification --> 60.02 Self Service Section Search Page Optimization\r\n * Description:\r\n Display custom calculated Fees data instead of default “Fees Applicable”\r\n */\r\n formatFees: string;\r\n /* ***** Customization Ends ***** */\r\n formatFloor: string;\r\n formatOrganization: string;\r\n formatRoom: string;\r\n formatSeatsWaiting: string;\r\n formatSession: string;\r\n formatStartEndTime: string;\r\n formatSubtypeSection: string;\r\n formatTitleSection: string;\r\n formatType: string;\r\n formatTypeChangeCreditType: string;\r\n formatTypeCreditType: string;\r\n formatYearTermSession: string;\r\n lblAddToWaitlist: string;\r\n lblCredits: string;\r\n /* ***** Customization Start *****\r\n *\r\n * Author: Ricardo Luna (ricardo.luna@ellucian.com)\r\n * Client: Nicolet AreaTechnical College\r\n * MOD: Self-Service Custom Course Modification --> 60.02 Self Service Section Search Page Optimization\r\n * Description:\r\n Display custom calculated Fees data instead of default “Fees Applicable”\r\n */\r\n lblDoesNotApply: string;\r\n /* ***** Customization Ends ***** */\r\n lblFees: string;\r\n lblMultipleInstructors: string;\r\n lblMultipleMeetingTimes: string;\r\n lblNoInstructor: string;\r\n lblNoSchedule: string;\r\n lblSeats: string;\r\n lblToWaitlist: string;\r\n}\r\n\r\nconst styles = ((theme: Theme) => createStyles({\r\n avatar: {\r\n [theme.breakpoints.down('xs')]: {\r\n marginLeft: '0rem!important'\r\n }\r\n },\r\n avatarContainer: {\r\n [theme.breakpoints.up('sm')]: {\r\n display: 'flex',\r\n justifyContent: 'center'\r\n }\r\n },\r\n btnCentered: {\r\n textAlign: 'center'\r\n },\r\n btnPermissionRequest: {\r\n marginTop: Tokens.spacing30\r\n },\r\n buttonsContainer: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n justifyContent: 'space-between'\r\n },\r\n centered: {\r\n [theme.breakpoints.down('xs')]: {\r\n alignItems: 'center',\r\n display: 'flex'\r\n }\r\n },\r\n groupAvatarContainer: {\r\n [theme.breakpoints.up('sm')]: {\r\n display: 'flex',\r\n justifyContent: 'center'\r\n },\r\n marginLeft: Tokens.spacing30\r\n },\r\n iconStatusMessage: {\r\n display: 'inline-block',\r\n marginLeft: Tokens.spacing30,\r\n verticalAlign: 'middle'\r\n },\r\n instructorName: {\r\n wordBreak: 'normal'\r\n },\r\n /* ***** Customization Start *****\r\n *\r\n * Author: Ricardo Luna (ricardo.luna@ellucian.com)\r\n * Client: Nicolet AreaTechnical College\r\n * MOD: Self-Service Custom Course Modification --> 60.02 Self Service Section Search Page Optimization\r\n * Description:\r\n Display custom calculated Fees data instead of default “Fees Applicable”\r\n */\r\n listTyle: { \r\n listStyleType: 'none',\r\n margin: 0,\r\n padding: 0\r\n }, \r\n /* ***** Customization Ends ***** */\r\n meeting: {\r\n marginTop: Tokens.spacing30\r\n },\r\n multipleIinstructorName: {\r\n [theme.breakpoints.only('xs')]: {\r\n marginLeft: Tokens.spacing30\r\n }\r\n },\r\n resultCardContainer: {\r\n marginTop: Tokens.spacing40\r\n },\r\n spacingHTMLMessage: {\r\n marginTop: Tokens.spacing60\r\n },\r\n statusLabelMargin: {\r\n marginBottom: Tokens.spacing20,\r\n marginTop: Tokens.spacing20\r\n },\r\n statusMessage: {\r\n marginLeft: Tokens.spacing35\r\n }\r\n}));\r\n\r\ntype PropsWithStyles = ISectionCardProps & ISectionCardPropsToExtend & WithStyles & WithWidth;\r\n// #endregion Internal types\r\n\r\n// #region Component\r\nconst SectionCard: React.FC = (props: PropsWithStyles): JSX.Element => {\r\n const {\r\n allowChanges,\r\n canAddToCart,\r\n canAddToWaitlist,\r\n canChangeCreditType,\r\n canDrop,\r\n canRemoveFromCart,\r\n canRemoveFromWaitlist,\r\n classes,\r\n currencySymbol,\r\n disableDrop,\r\n id,\r\n numberCulture,\r\n resources,\r\n ruleGroupBlockId,\r\n section,\r\n sectionStatus,\r\n showYearTermSession,\r\n width,\r\n withCard,\r\n onAddToCart,\r\n onAddToWaitlist,\r\n onBeforeAddToCart,\r\n onBeforeAddToWaitlist,\r\n onDrop,\r\n onOpenCreditTypeModal,\r\n onOpenPermissionRequestModal,\r\n onOpenViewCommentsModal,\r\n onRemoveFromCart,\r\n onRemoveFromWaitlist,\r\n onSelectSection,\r\n onViewSectionDetails,\r\n onViewSectionDetailsByBlock\r\n } = props;\r\n\r\n const onClickAddToCart = (event: React.MouseEvent): void => {\r\n if (onBeforeAddToCart) {\r\n onBeforeAddToCart();\r\n }\r\n if (onAddToCart) {\r\n onAddToCart(event);\r\n }\r\n };\r\n const onClickAddToWaitlist = (event: React.MouseEvent): void => {\r\n if (onBeforeAddToWaitlist) {\r\n onBeforeAddToWaitlist();\r\n }\r\n if (onAddToWaitlist) {\r\n onAddToWaitlist(event);\r\n }\r\n };\r\n\r\n const onClickCreditType = () => {\r\n if (onOpenCreditTypeModal) {\r\n onOpenCreditTypeModal(section.id);\r\n }\r\n };\r\n const sectionTitle: string = Format.toString(resources.formatTitleSection, [\r\n section.eventId,\r\n section.eventName\r\n ]);\r\n\r\n const sectionAsStudentSchedule = section as IStudentSchedule;\r\n\r\n // #region Schedule(s)\r\n let schedules: JSX.Element | undefined;\r\n if (section.schedules) {\r\n if (section.schedules.length === 1) {\r\n schedules = (\r\n <>\r\n \r\n {Format.toString(resources.formatStartEndTime, [\r\n section.schedules[0].startTime,\r\n section.schedules[0].endTime\r\n ])}\r\n \r\n \r\n {section.schedules[0].dayDesc}\r\n \r\n \r\n {Format.toString(resources.formatOrganization, [section.schedules[0].orgName])}\r\n {section.schedules[0].bldgName ?\r\n Format.toString(resources.formatBuilding, [section.schedules[0].bldgName])\r\n : ''}\r\n {section.schedules[0].floorId ?\r\n Format.toString(resources.formatFloor, [section.schedules[0].floorId])\r\n : ''}\r\n {section.schedules[0].roomId ?\r\n Format.toString(resources.formatRoom, [section.schedules[0].roomId])\r\n : ''}\r\n \r\n \r\n );\r\n }\r\n else {\r\n schedules = (\r\n \r\n {resources.lblMultipleMeetingTimes}\r\n \r\n );\r\n }\r\n }\r\n else {\r\n schedules = (\r\n \r\n {resources.lblNoSchedule}\r\n \r\n );\r\n }\r\n // #endregion Schedule\r\n\r\n // #region Instructor(s)\r\n let instructors: JSX.Element | undefined;\r\n if (section.instructors) {\r\n if (section.instructors.length === 1) {\r\n instructors = (\r\n <>\r\n
\r\n \r\n \r\n {section.instructors[0].firstLetter || ''}\r\n \r\n \r\n
\r\n
\r\n \r\n {section.instructors[0].fullName}\r\n \r\n
\r\n \r\n );\r\n }\r\n else {\r\n instructors = (\r\n <>\r\n
\r\n \r\n {section.instructors.map((instructor, iInstructor) => (\r\n \r\n \r\n {instructor.firstLetter || ''}\r\n \r\n \r\n ))}\r\n \r\n
\r\n
\r\n \r\n {resources.lblMultipleInstructors}\r\n \r\n
\r\n \r\n );\r\n }\r\n }\r\n else {\r\n instructors = (\r\n <>\r\n
\r\n \r\n
\r\n
\r\n \r\n {resources.lblNoInstructor}\r\n \r\n
\r\n \r\n );\r\n }\r\n // #endregion Instructor(s)\r\n\r\n // #region Add Button\r\n const addButton: JSX.Element | undefined = canAddToCart ? (\r\n \r\n {resources.btnAdd}\r\n \r\n ) : (canAddToWaitlist ? (\r\n <>\r\n \r\n {resources.btnWait}\r\n \r\n \r\n {resources.lblToWaitlist}\r\n \r\n \r\n ) : undefined);\r\n // #endregion Add Button\r\n\r\n // #region Remove/Drop Button\r\n let removeButton: JSX.Element | undefined;\r\n if (section.hasBlockRelated && allowChanges) {\r\n if (canRemoveFromCart) {\r\n removeButton = (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n else if (canRemoveFromWaitlist) {\r\n removeButton = (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n else if (canDrop) {\r\n removeButton = (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n }\r\n // #endregion Remove/Drop Button\r\n let permissionRequestButton: JSX.Element | undefined;\r\n let viewCommentsButton: JSX.Element | undefined;\r\n\r\n if (section.hasBlockRelated) {\r\n // #region Permission Request Button\r\n if (sectionAsStudentSchedule.isPermissionRequired) {\r\n permissionRequestButton = (\r\n \r\n {resources.btnPermissionRequest}\r\n \r\n );\r\n }\r\n // #endregion Permission Request Button\r\n\r\n // #region View comments Button\r\n const showViewComments: boolean = Boolean(sectionAsStudentSchedule.advisorApprovalInfo ||\r\n (sectionAsStudentSchedule.permissionRequestInfo &&\r\n sectionAsStudentSchedule.permissionRequestInfo.length > 0\r\n && sectionAsStudentSchedule.permissionRequestInfo[0].id > 0));\r\n if (showViewComments) {\r\n viewCommentsButton = (\r\n \r\n {resources.btnViewComments}\r\n \r\n );\r\n }\r\n // #endregion View comments Button\r\n }\r\n\r\n // #region Seats Left\r\n let percentageSeatsLeft: number = 0;\r\n let indicatorSeatsLeft: JSX.Element | undefined;\r\n if (section.seatsLeft > 0) {\r\n percentageSeatsLeft = Math.floor((section.seatsLeft * 100) / section.maximumSeats);\r\n indicatorSeatsLeft = percentageSeatsLeft > 50 ? undefined : (\r\n 25 ? 'warning' : 'error'}\r\n />\r\n );\r\n }\r\n // #endregion Seats Left\r\n\r\n const sectionData: JSX.Element = (\r\n \r\n \r\n \r\n {sectionTitle}\r\n \r\n {sectionStatus && (\r\n <>\r\n {Boolean(sectionStatus.labelText) && (\r\n \r\n )}\r\n {Boolean(sectionStatus.message) && (\r\n \r\n {sectionStatus.message}\r\n \r\n )}\r\n
\r\n {sectionStatus.statusIcon}\r\n
\r\n \r\n )}\r\n {section.year && section.termDesc && showYearTermSession && (\r\n \r\n {Format.toString(resources.formatYearTermSession, [section.year, section.termDesc, section.sessionDesc])}\r\n \r\n )}\r\n \r\n {Format.toString(resources.formatSubtypeSection, [section.eventSubType, section.section])}\r\n \r\n {section.hasBlockRelated && canChangeCreditType ? (\r\n \r\n ) : (\r\n \r\n {Format.toString(resources.formatTypeCreditType,\r\n [section.eventType, section.defaultCreditTypeDesc])}\r\n \r\n )\r\n }\r\n \r\n {Format.toString(resources.formatDuration, [section.startDate, section.endDate])}\r\n \r\n
\r\n {schedules}\r\n
\r\n {!withCard && section.areFeesApplicable && (\r\n \r\n {resources.lblFees}\r\n \r\n )}\r\n {sectionStatus && sectionStatus.importantMessage ? (\r\n \r\n
\r\n \r\n ) : undefined}\r\n {viewCommentsButton && !sectionAsStudentSchedule.hideActions && (\r\n <>\r\n {viewCommentsButton}\r\n \r\n )}\r\n \r\n {width === 'xs' && (\r\n \r\n {instructors}\r\n \r\n )}\r\n \r\n \r\n {width !== 'xs' && (\r\n \r\n {instructors}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n {section.seatsWaiting > 0 && (\r\n \r\n {Format.toString(resources.formatSeatsWaiting, [section.seatsWaiting])}\r\n \r\n )}\r\n \r\n {withCard && (\r\n \r\n {section.areFeesApplicable &&(\r\n 0 ? (\r\n
    \r\n {section.sectionFeesByID.map((sectionFee, i) => (\r\n
  • \r\n \r\n {Format.toString(resources.formatFees,\r\n [sectionFee.amount, sectionFee.chargeDescription, sectionFee.feeGroupDescription])}\r\n \r\n
  • \r\n ))}\r\n
\r\n ) : (\r\n \r\n {resources.lblDoesNotApply}\r\n \r\n )}\r\n textUp={currencySymbol}\r\n withMarginTextUp\r\n />\r\n )}\r\n
\r\n )}\r\n {(onAddToCart || onAddToWaitlist)\r\n && width !== 'xs'\r\n && (\r\n \r\n {addButton}\r\n \r\n )}\r\n
\r\n {permissionRequestButton && !sectionAsStudentSchedule.hideActions && (\r\n \r\n \r\n {permissionRequestButton}\r\n \r\n \r\n )}\r\n \r\n {(onAddToCart || onAddToWaitlist)\r\n && width === 'xs'\r\n && (\r\n \r\n {addButton}\r\n \r\n )}\r\n \r\n );\r\n\r\n /* ***** Customization Start *****\r\n *\r\n * Author: Ricardo Luna (ricardo.luna@ellucian.com)\r\n * Client: Nicolet AreaTechnical College\r\n * MOD: Self-Service Custom Course Modification --> 60.02 Self Service Section Search Page Optimization\r\n * Description:\r\n Display custom calculated Fees data instead of default “Fees Applicable”\r\n * Código Original starts with \"{withCard && (\" (search reference to \"section.sectionFeesByID\"):\r\n *\r\n {withCard && (\r\n \r\n {section.areFeesApplicable && (\r\n \r\n )}\r\n \r\n )}\r\n *\r\n * Custom code:\r\n *\r\n textDown={section.sectionFeesByID.length > 0 ? (\r\n
    \r\n {section.sectionFeesByID.map((sectionFee, i) => (\r\n
  • \r\n \r\n {Format.toString(resources.formatFees,\r\n [sectionFee.amount, sectionFee.chargeDescription, sectionFee.feeGroupDescription])}\r\n \r\n
  • \r\n ))}\r\n
\r\n ) : (\r\n \r\n {resources.lblDoesNotApply}\r\n \r\n )}\r\n * ***** Customization Ends ***** */\r\n\r\n if (withCard) {\r\n return (\r\n \r\n \r\n {sectionData}\r\n \r\n \r\n );\r\n }\r\n else {\r\n const checkDisabled: boolean = !(canAddToCart || canAddToWaitlist);\r\n return (\r\n \r\n \r\n \r\n {allowChanges && (\r\n \r\n \r\n \r\n )}\r\n {canAddToWaitlist && (\r\n \r\n \r\n {resources.lblAddToWaitlist}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n {sectionData}\r\n \r\n {section.hasBlockRelated && allowChanges && (\r\n \r\n {sectionAsStudentSchedule.hideActions ? (\r\n \r\n ) : (\r\n <>\r\n {removeButton}\r\n \r\n )}\r\n \r\n )}\r\n \r\n );\r\n }\r\n};\r\n// #endregion Component\r\n\r\n// Export: Component\r\nexport default withStyles(styles)(withWidth()(SectionCard));","/* Copyright 2019 Ellucian Company L.P. and its affiliates.\r\n * File: PermissionRequestDetail.tsx\r\n * Type: Presentation component */\r\n\r\n// #region Imports\r\nimport classnames from 'classnames';\r\nimport React from 'react';\r\n\r\n// Core components\r\nimport Avatar from '@hedtech/powercampus-design-system/react/core/Avatar';\r\nimport Chip from '@hedtech/powercampus-design-system/react/core/Chip';\r\nimport Divider from '@hedtech/powercampus-design-system/react/core/Divider';\r\nimport Grid from '@hedtech/powercampus-design-system/react/core/Grid';\r\nimport Icon from '@hedtech/powercampus-design-system/react/core/Icon';\r\nimport Link from '@hedtech/powercampus-design-system/react/core/Link';\r\nimport StatusLabel, { StatusLabelType } from '@hedtech/powercampus-design-system/react/core/StatusLabel';\r\nimport Text from '@hedtech/powercampus-design-system/react/core/Text';\r\nimport TextField from '@hedtech/powercampus-design-system/react/core/TextField';\r\nimport Tooltip from '@hedtech/powercampus-design-system/react/core/Tooltip';\r\n\r\n// Helpers\r\nimport Tokens from '@hedtech/powercampus-design-system/react/core/styles/Tokens';\r\nimport { createStyles, Theme, withStyles, WithStyles } from '@hedtech/powercampus-design-system/react/core/styles/withStyles';\r\n\r\n// Types\r\nimport { IPermissionRequestStatusResources } from '../../../Types/Resources/Shared/IPermissionRequestStatusResources';\r\nimport { IPermissionRequestInfo } from '../../../Types/Students/IPermissionRequestInfo';\r\n// #endregion Imports\r\n\r\n// #region Types\r\nexport interface IPermissionRequestDetailProps {\r\n chatTitleAdorned?: boolean;\r\n generalStatus: number; // 0 = Approved, 1 = Denied, >=2 Pending\r\n id: string;\r\n isFaculty?: boolean;\r\n isStudent?: boolean;\r\n permissionRequestInfo: IPermissionRequestInfo[];\r\n resources: IPermissionRequestDetailResProps;\r\n withChatTitle?: boolean;\r\n withScroll?: boolean;\r\n}\r\n\r\nexport interface IPermissionRequestDetailPropsToExtend {\r\n resourcesPermissionRequestStatus: IPermissionRequestStatusResources;\r\n onCancelEdit: (id: number) => void;\r\n onChangeCommentsForEdit: (id: number, value: string) => void;\r\n onEdit: (id: number) => void;\r\n onEnableEdit: (id: number) => void;\r\n}\r\n\r\nexport interface IPermissionRequestDetailResProps {\r\n btnAccept: string;\r\n btnCancel: string;\r\n btnEdit: string;\r\n lblCommentRequired: string;\r\n lblComments: string;\r\n lblNoComments: string;\r\n lblStatusTitle: string;\r\n lblTypeComments: string;\r\n}\r\n\r\nconst styles = (theme: Theme) => createStyles({\r\n anchorIcon: {\r\n '&:focus': {\r\n '& *': {\r\n backgroundColor: 'transparent'\r\n }\r\n }\r\n },\r\n centered: {\r\n alignItems: 'center',\r\n display: 'flex'\r\n },\r\n chatContainer: {\r\n display: 'block!important',\r\n overflowX: 'hidden',\r\n overflowY: 'auto',\r\n padding: Tokens.spacing40,\r\n width: 'auto'\r\n },\r\n chatContainerScroll: {\r\n maxHeight: '200px'\r\n },\r\n chatTitle: {\r\n backgroundColor: Tokens.colorBrandNeutral200,\r\n boxShadow: '0 0 1.25rem rgba(0, 0, 0, .1)',\r\n height: '57px',\r\n padding: Tokens.spacing40\r\n },\r\n chipCommonComments: {\r\n backgroundColor: Tokens.colorBrandNeutral100,\r\n borderWidth: 0,\r\n boxShadow: '0 0 1.25rem rgba(0, 0, 0, .1)',\r\n marginBottom: Tokens.spacing40\r\n },\r\n chipEditableComments: {\r\n '& > span': {\r\n [theme.breakpoints.down('md')]: {\r\n display: 'block',\r\n textAlign: 'right'\r\n }\r\n },\r\n backgroundColor: Tokens.colorBrandNeutral100,\r\n borderWidth: 0,\r\n boxShadow: '0 0 1.25rem rgba(0, 0, 0, .1)',\r\n marginBottom: Tokens.spacing40\r\n },\r\n chipImportantComments: {\r\n backgroundColor: Tokens.iris600,\r\n borderWidth: 0,\r\n color: Tokens.colorBrandNeutral100,\r\n marginBottom: Tokens.spacing40\r\n },\r\n chipStatusComments: {\r\n backgroundColor: Tokens.colorBrandNeutral100,\r\n borderWidth: 0,\r\n boxShadow: '0 0 1.25rem rgba(0, 0, 0, .1)',\r\n marginLeft: Tokens.sizingXLarge\r\n },\r\n commentsForStudent: {\r\n width: '100%'\r\n },\r\n commentsInChip: {\r\n paddingBottom: Tokens.spacing30,\r\n paddingTop: Tokens.spacing30,\r\n whiteSpace: 'initial',\r\n wordBreak: 'normal'\r\n },\r\n commentsInChipEditable: {\r\n '& > div > textarea': {\r\n width: '100%'\r\n },\r\n paddingBottom: Tokens.spacing30,\r\n paddingTop: Tokens.spacing30\r\n },\r\n firstIcon: {\r\n marginLeft: Tokens.spacing30\r\n },\r\n overrideCommentsContainer: {\r\n marginLeft: Tokens.sizingXLarge\r\n },\r\n secondIcon: {\r\n marginLeft: Tokens.spacing50\r\n },\r\n textOverChip: {\r\n marginLeft: Tokens.spacing34,\r\n wordBreak: 'normal'\r\n }\r\n});\r\n\r\ntype PropsWithStyles = IPermissionRequestDetailProps & IPermissionRequestDetailPropsToExtend & WithStyles;\r\n// #endregion Types\r\n\r\n// #region Component\r\nconst PermissionRequestDetail: React.FC = (props: PropsWithStyles): JSX.Element => {\r\n const {\r\n chatTitleAdorned,\r\n classes,\r\n generalStatus,\r\n id,\r\n isFaculty,\r\n isStudent,\r\n permissionRequestInfo,\r\n resources,\r\n resourcesPermissionRequestStatus,\r\n withChatTitle,\r\n withScroll,\r\n onCancelEdit,\r\n onChangeCommentsForEdit,\r\n onEdit,\r\n onEnableEdit\r\n } = props;\r\n\r\n const getStatusText = (status: number): string => {\r\n let text = '';\r\n switch (status) {\r\n case 0:\r\n text = resourcesPermissionRequestStatus.lblApproved;\r\n break;\r\n case 1:\r\n text = resourcesPermissionRequestStatus.lblDenied;\r\n break;\r\n case 2:\r\n text = resourcesPermissionRequestStatus.lblPending;\r\n break;\r\n }\r\n return text;\r\n };\r\n\r\n const getStatusType = (status: number): StatusLabelType => {\r\n let type: StatusLabelType = 'default';\r\n switch (status) {\r\n case 0:\r\n type = 'success';\r\n break;\r\n case 1:\r\n type = 'error';\r\n break;\r\n case 2:\r\n type = 'draft';\r\n break;\r\n }\r\n return type;\r\n };\r\n\r\n return (\r\n <>\r\n {withChatTitle ? (\r\n
\r\n \r\n \r\n \r\n {resources.lblStatusTitle}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n ) : undefined}\r\n \r\n {permissionRequestInfo.map((permissionRequest, ipr) => {\r\n const onChangeCommentsForEditWithId = (event: React.ChangeEvent): void => {\r\n onChangeCommentsForEdit(permissionRequest.id, event.target.value);\r\n };\r\n const onClickCancelEdit = function (): void { onCancelEdit(permissionRequest.id); };\r\n const onClickEdit = function (): void { onEdit(permissionRequest.id); };\r\n const onClickEnableEdit = function (): void { onEnableEdit(permissionRequest.id); };\r\n return (\r\n \r\n \r\n {permissionRequest.studentComments || permissionRequest.studentCommentsBackup ? (\r\n \r\n \r\n \r\n {permissionRequest.requestDate}\r\n \r\n {isStudent && permissionRequest.editable ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n />\r\n \r\n \r\n ) : (\r\n \r\n \r\n {permissionRequest.studentComments}\r\n \r\n {isStudent && generalStatus >= 2 ? (\r\n \r\n \r\n \r\n \r\n \r\n ) : undefined}\r\n \r\n )}\r\n />\r\n )}\r\n \r\n \r\n ) : undefined}\r\n {permissionRequest.facultyInfo ? (\r\n \r\n \r\n \r\n )}\r\n />\r\n
\r\n
\r\n
\r\n \r\n {permissionRequest.facultyInfo.firstLetter}\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {permissionRequest.permissionDate ?\r\n `${permissionRequest.facultyInfo.fullName} (${permissionRequest.permissionDate})`\r\n : `${permissionRequest.facultyInfo.fullName}`}\r\n \r\n \r\n \r\n {isFaculty && permissionRequest.isMyInfo ? (\r\n permissionRequest.editable ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n />\r\n \r\n \r\n ) : (\r\n \r\n \r\n {permissionRequest.permissionComments || resources.lblTypeComments}\r\n \r\n {!Boolean(permissionRequest.overrideId\r\n || (permissionRequest.overrideInfo\r\n && permissionRequest.overrideInfo.fullName)) ? (\r\n \r\n \r\n \r\n \r\n \r\n ) : undefined}\r\n \r\n )}\r\n />\r\n )\r\n ) : (\r\n <>\r\n \r\n {permissionRequest.permissionComments || resources.lblNoComments}\r\n \r\n )}\r\n />\r\n
\r\n \r\n )}\r\n
\r\n
\r\n {permissionRequest.overrideId\r\n || (permissionRequest.overrideInfo\r\n && permissionRequest.overrideInfo.fullName) ? (\r\n
\r\n \r\n \r\n \r\n {`${(permissionRequest.overrideInfo\r\n && permissionRequest.overrideInfo.fullName) ?\r\n permissionRequest.overrideInfo.fullName\r\n : permissionRequest.overrideId} (${permissionRequest.overrideDate})`}\r\n \r\n \r\n \r\n \r\n {permissionRequest.overrideComments || resources.lblNoComments}\r\n \r\n )}\r\n />\r\n
\r\n
\r\n ) : undefined}\r\n
\r\n
\r\n ) : undefined}\r\n {ipr < permissionRequestInfo.length - 1 ? () : undefined}\r\n
\r\n
\r\n );\r\n })\r\n }\r\n
\r\n \r\n );\r\n};\r\n// #endregion Component\r\n\r\n// Export: Component\r\nexport default withStyles(styles)(PermissionRequestDetail);","/* Copyright 2019 Ellucian Company L.P. and its affiliates.\r\n * File: ISectionStatus.ts */\r\n\r\nimport { StatusLabelType } from '@hedtech/powercampus-design-system/react/core/StatusLabel';\r\n\r\nexport interface ISectionStatus {\r\n importantMessage?: string;\r\n labelText: string;\r\n labelType?: StatusLabelType;\r\n message?: string;\r\n status?: SectionStatus;\r\n statusIcon?: JSX.Element;\r\n}\r\n\r\nexport enum SectionStatus {\r\n inCart,\r\n pending,\r\n registered,\r\n denied\r\n}","/* Copyright 2018-2020 Ellucian Company L.P. and its affiliates.\r\n * File: SectionDetailModal.tsx\r\n * Type: Presentation component */\r\n\r\n// #region Imports\r\nimport classnames from 'classnames';\r\nimport React from 'react';\r\n\r\n// Core components\r\nimport Avatar from '@hedtech/powercampus-design-system/react/core/Avatar';\r\nimport Button from '@hedtech/powercampus-design-system/react/core/Button';\r\nimport Divider from '@hedtech/powercampus-design-system/react/core/Divider';\r\nimport ExpansionPanel from '@hedtech/powercampus-design-system/react/core/ExpansionPanel';\r\nimport Grid from '@hedtech/powercampus-design-system/react/core/Grid';\r\nimport Icon from '@hedtech/powercampus-design-system/react/core/Icon';\r\nimport Modal from '@hedtech/powercampus-design-system/react/core/Modal';\r\nimport Paragraph from '@hedtech/powercampus-design-system/react/core/Paragraph';\r\nimport StatusLabel from '@hedtech/powercampus-design-system/react/core/StatusLabel';\r\nimport Text, { TextAlign } from '@hedtech/powercampus-design-system/react/core/Text';\r\nimport Tooltip from '@hedtech/powercampus-design-system/react/core/Tooltip';\r\nimport UpDownLabel from '@hedtech/powercampus-design-system/react/core/UpDownLabel';\r\n\r\n// Internal components\r\nimport PermissionRequestDetail,\r\n{\r\n IPermissionRequestDetailPropsToExtend,\r\n IPermissionRequestDetailResProps\r\n} from '../Registration/Courses/PermissionRequestDetail';\r\n\r\n// Helpers\r\nimport Format from '@hedtech/powercampus-design-system/helpers/Format';\r\nimport Tokens from '@hedtech/powercampus-design-system/react/core/styles/Tokens';\r\nimport { createStyles, Theme, withStyles, WithStyles } from '@hedtech/powercampus-design-system/react/core/styles/withStyles';\r\nimport { isWidthUp, withWidth, WithWidth } from '@hedtech/powercampus-design-system/react/core/withWidth';\r\n\r\n// Types\r\nimport { ICultures } from '@hedtech/powercampus-design-system/types/ICultures';\r\nimport { ISectionDetail } from '../../Types/Section/ISectionDetail';\r\nimport { ISectionStatus, SectionStatus } from '../../Types/Students/ISectionStatus';\r\n\r\n// State Management\r\nimport LayoutStore from '@hedtech/powercampus-design-system/flux/stores/LayoutStore';\r\n// #endregion Imports\r\n\r\n// #region Internal types\r\nexport interface ISectionDetailModalProps {\r\n canAddToCart?: boolean;\r\n canAddToWaitlist?: boolean;\r\n canChangeCreditType?: boolean;\r\n canDrop?: boolean;\r\n canRemoveFromCart?: boolean;\r\n canRemoveFromWaitlist?: boolean;\r\n creditTypeDesc?: string;\r\n isStudentView?: boolean;\r\n open: boolean;\r\n PermissionRequestDetailProps?: IPermissionRequestDetailPropsToExtend;\r\n resources: ISectionDetailModalResProps;\r\n section: ISectionDetail;\r\n sectionStatus?: ISectionStatus;\r\n onAddToCart?: (event: React.MouseEvent) => void;\r\n onAddToWaitlist?: (event: React.MouseEvent) => void;\r\n onDrop?: (event: React.MouseEvent) => void;\r\n onOpenCreditTypeModal?: (id: number) => void;\r\n onRemoveFromCart?: (event: React.MouseEvent) => void;\r\n onRemoveFromWaitlist?: (event: React.MouseEvent) => void;\r\n onClose: () => void;\r\n}\r\n\r\nexport interface ISectionDetailModalResProps {\r\n btnAdd: string;\r\n btnDrop: string;\r\n btnRemove: string;\r\n btnWait: string;\r\n formatBuilding: string;\r\n formatChangeCreditTypes: string;\r\n formatCorequisite: string;\r\n formatCreditTypes: string;\r\n formatDuration: string;\r\n formatFees: string;\r\n formatFloor: string;\r\n formatOrganization: string;\r\n formatRoom: string;\r\n formatSeatsWaiting: string;\r\n formatSession: string;\r\n formatStartEndTime: string;\r\n formatSubtypeSection: string;\r\n formatTitleSection: string;\r\n formatTypeChangeCreditTypes: string;\r\n formatTypeCreditType: string;\r\n formatYearTermSession: string;\r\n lblAddToWaitlist: string;\r\n lblAdvisorApproval: string;\r\n lblCeu: string;\r\n lblCeuLong: string;\r\n lblContinuingEducation: string;\r\n lblCorequisites: string;\r\n lblCourseDescription: string;\r\n lblCredits: string;\r\n lblCreditTypes: string;\r\n lblDoesNotApply: string;\r\n lblFees: string;\r\n lblInstructors: string;\r\n lblNoComments: string;\r\n lblNoInstructor: string;\r\n lblNoSchedule: string;\r\n lblPermissionRequest: string;\r\n lblPrerequisits: string;\r\n lblRegistrationType: string;\r\n lblSchedules: string;\r\n lblSeats: string;\r\n lblTotalSeats: string;\r\n lblToWaitlist: string;\r\n lblTraditional: string;\r\n /*customization start*/\r\n /* Author: Fermin Juarez (fermin.juarez@ellucian.com)\r\n * Client: Nicolet Area Technical College\r\n * MOD: section search customization\r\n * Description: \r\n\t */\r\n lblNote1: string;\r\n lblNote2: string;\r\n lblNote3: string;\r\n lblNote4: string;\r\n lblNote5: string;\r\n lblDeliveryMethod: string;\r\n /*customization end*/\r\n permissionRequestDetail: IPermissionRequestDetailResProps;\r\n}\r\n\r\nconst styles = ((theme: Theme) => createStyles({\r\n avatar: {\r\n marginLeft: '0rem!important'\r\n },\r\n btnCentered: {\r\n textAlign: 'center'\r\n },\r\n centered: {\r\n alignItems: 'center',\r\n display: 'flex'\r\n },\r\n commentsContainer: {\r\n maxHeight: '200px',\r\n overflowX: 'hidden',\r\n overflowY: 'auto',\r\n width: 'auto'\r\n },\r\n courseContainer: {\r\n marginBottom: Tokens.spacing60\r\n },\r\n deniedDivider: {\r\n backgroundColor: Tokens.colorFillAlertError\r\n },\r\n iconStatusMessage: {\r\n display: 'inline-block',\r\n marginLeft: Tokens.spacing30,\r\n verticalAlign: 'middle'\r\n },\r\n inCartDivider: {\r\n backgroundColor: Tokens.saffron600\r\n },\r\n instructorAvatars: {\r\n display: 'flex'\r\n },\r\n instructorName: {\r\n wordBreak: 'normal'\r\n },\r\n instructorsContainer: {\r\n backgroundColor: Tokens.colorBrandNeutral200,\r\n marginBottom: Tokens.spacing50,\r\n marginLeft: Tokens.spacing40,\r\n marginRight: Tokens.spacing40,\r\n marginTop: Tokens.sizingXxSmall,\r\n paddingLeft: Tokens.spacing40,\r\n paddingRight: Tokens.spacing40,\r\n width: 'auto'\r\n },\r\n listTyle: {\r\n listStyleType: 'none',\r\n margin: 0,\r\n padding: 0\r\n },\r\n meeting: {\r\n [theme.breakpoints.down('sm')]: {\r\n padding: Tokens.spacing35\r\n },\r\n borderColor: Tokens.colorBrandNeutral300,\r\n borderStyle: 'solid',\r\n borderWidth: '1px',\r\n padding: Tokens.spacing40,\r\n width: '100%'\r\n },\r\n pendingDivider: {\r\n backgroundColor: Tokens.fountain600\r\n },\r\n registeredDivider: {\r\n backgroundColor: Tokens.meadow600\r\n },\r\n schedulesContainer: {\r\n marginBottom: Tokens.spacing70\r\n },\r\n separatorExpansionPanel: {\r\n marginBottom: Tokens.spacing40\r\n },\r\n statusLabelMargin: {\r\n marginBottom: Tokens.spacing20,\r\n marginTop: Tokens.spacing20\r\n },\r\n statusMessage: {\r\n marginLeft: Tokens.spacing35\r\n }\r\n}));\r\n\r\ntype PropsWithStyles = ISectionDetailModalProps & WithStyles & WithWidth;\r\n// #endregion Internal types\r\n\r\n// #region Component\r\nconst SectionDetailModal: React.FC = (props: PropsWithStyles): JSX.Element => {\r\n const {\r\n canAddToCart,\r\n canAddToWaitlist,\r\n canChangeCreditType,\r\n canDrop,\r\n canRemoveFromCart,\r\n canRemoveFromWaitlist,\r\n classes,\r\n creditTypeDesc,\r\n isStudentView,\r\n open,\r\n PermissionRequestDetailProps,\r\n resources,\r\n section,\r\n sectionStatus,\r\n width,\r\n onAddToCart,\r\n onAddToWaitlist,\r\n onDrop,\r\n onOpenCreditTypeModal,\r\n onRemoveFromCart,\r\n onRemoveFromWaitlist,\r\n onClose\r\n } = props;\r\n\r\n const id: string = 'sectionDetailModal';\r\n const cultures: ICultures = LayoutStore.getCultures();\r\n\r\n const onClickCreditType = () => {\r\n if (onOpenCreditTypeModal) {\r\n onOpenCreditTypeModal(section.id);\r\n }\r\n };\r\n\r\n const sectionTitle: string = Format.toString(resources.formatTitleSection, [\r\n section.eventId,\r\n section.eventName\r\n ]);\r\n\r\n // #region Header\r\n\t/*customization start*/\r\n\t/* Author: Fermin Juarez (fermin.juarez@ellucian.com)\r\n\t * Client: Nicolet Area Technical College\r\n\t * MOD: registration customization\r\n\t * Description: \r\n\t */\r\n\t // #region Notes\r\n\r\n let Note1: JSX.Element | JSX.Element[] | undefined;\r\n let Note2: JSX.Element | JSX.Element[] | undefined;\r\n let Note3: JSX.Element | JSX.Element[] | undefined;\r\n let Note4: JSX.Element | JSX.Element[] | undefined;\r\n let Note5: JSX.Element | JSX.Element[] | undefined;\r\n \r\n if (section.note1 != null) {\r\n if (section.note1.length > 0) {\r\n Note1 = (\r\n \r\n \r\n {resources.lblNote1}\r\n \r\n \r\n {section.note1}\r\n \r\n \r\n );\r\n }\r\n }\r\n if (section.note2 != null) {\r\n if (section.note2.length > 0) {\r\n Note2 = (\r\n \r\n \r\n {resources.lblNote2}\r\n \r\n \r\n {section.note2}\r\n \r\n \r\n );\r\n }\r\n }\r\n if (section.note3 != null) {\r\n if (section.note3.length > 0) {\r\n Note3 = (\r\n \r\n \r\n {resources.lblNote3}\r\n \r\n \r\n {section.note3}\r\n \r\n \r\n );\r\n }\r\n }\r\n if (section.note4 != null) {\r\n if (section.note4.length > 0) {\r\n Note4 = (\r\n \r\n \r\n {resources.lblNote4}\r\n \r\n \r\n {section.note4}\r\n \r\n \r\n );\r\n }\r\n }\r\n if (section.note5 != null) {\r\n if (section.note5.length > 0) {\r\n Note5 = (\r\n \r\n \r\n {resources.lblNote5}\r\n \r\n \r\n {section.note5}\r\n \r\n \r\n );\r\n }\r\n }\r\n // #endregion Notes\r\n\t/*customization end*/\r\n // #region Status\r\n let classDivider: string | undefined;\r\n let status: JSX.Element | undefined;\r\n let statusMessage: JSX.Element | undefined;\r\n if (sectionStatus) {\r\n if (sectionStatus.status !== undefined) {\r\n switch (sectionStatus.status) {\r\n case SectionStatus.inCart:\r\n classDivider = classnames(classDivider, classes.inCartDivider);\r\n break;\r\n case SectionStatus.pending:\r\n classDivider = classnames(classDivider, classes.pendingDivider);\r\n break;\r\n case SectionStatus.registered:\r\n classDivider = classnames(classDivider, classes.registeredDivider);\r\n break;\r\n case SectionStatus.denied:\r\n classDivider = classnames(classDivider, classes.deniedDivider);\r\n break;\r\n }\r\n }\r\n\r\n status = (\r\n \r\n \r\n {Boolean(sectionStatus.labelText) && (\r\n \r\n )}\r\n {Boolean(sectionStatus.message) && (\r\n \r\n {sectionStatus.message}\r\n
\r\n )}\r\n
\r\n {sectionStatus.statusIcon}\r\n
\r\n
\r\n
\r\n );\r\n if (sectionStatus.importantMessage) {\r\n statusMessage = (\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n );\r\n }\r\n }\r\n // #endregion Status\r\n\r\n const headerModal: JSX.Element = (\r\n <>\r\n \r\n {sectionTitle}\r\n \r\n {status}\r\n \r\n {Note1}\r\n {Note2}\r\n {Note3}\r\n {Note4}\r\n {Note5}\r\n \r\n \r\n );\r\n // #endregion Header\r\n\r\n // #region Footer\r\n let footerModal: JSX.Element | undefined;\r\n if (isStudentView && !section.hasBlockRelated) {\r\n if (canAddToCart) {\r\n footerModal = (\r\n \r\n {resources.btnAdd}\r\n \r\n );\r\n }\r\n else if (canAddToWaitlist) {\r\n footerModal = (\r\n
\r\n \r\n {resources.btnWait}\r\n \r\n \r\n {resources.lblToWaitlist}\r\n \r\n
\r\n );\r\n }\r\n else if (canDrop) {\r\n footerModal = (\r\n \r\n {resources.btnDrop}\r\n \r\n );\r\n }\r\n else if (canRemoveFromCart) {\r\n footerModal = (\r\n \r\n {resources.btnRemove}\r\n \r\n );\r\n }\r\n else if (canRemoveFromWaitlist) {\r\n footerModal = (\r\n \r\n {resources.btnRemove}\r\n \r\n );\r\n }\r\n }\r\n // #endregion Footer\r\n\r\n // #region Body\r\n\r\n // #region Permission Request\r\n let permissionRequest: JSX.Element | undefined;\r\n if (PermissionRequestDetailProps\r\n && section.permissionRequestInfo\r\n && section.permissionRequestInfo.length > 0) {\r\n const headerPermissionRequest: JSX.Element = (\r\n \r\n \r\n \r\n {resources.lblPermissionRequest}\r\n \r\n \r\n \r\n {section.permissionRequestInfo.map((pr, ipr) => (pr.facultyInfo ? (\r\n \r\n {pr.facultyInfo.firstLetter}\r\n \r\n ) : undefined))}\r\n \r\n \r\n );\r\n\r\n const contentPermissionRequest: JSX.Element = (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n\r\n permissionRequest = (\r\n <>\r\n \r\n {contentPermissionRequest}\r\n \r\n
\r\n \r\n );\r\n }\r\n // #endregion Permission Request\r\n\r\n // #region Advisor approval\r\n let advisorApproval: JSX.Element | undefined;\r\n if (section.advisorApprovalInfo) {\r\n advisorApproval = (\r\n <>\r\n \r\n \r\n \r\n {resources.lblAdvisorApproval}\r\n \r\n \r\n \r\n
\r\n {section.advisorApprovalInfo.facultyInfo.fullName\r\n || section.advisorApprovalInfo.decisionDate ? (\r\n <>\r\n \r\n \r\n \r\n {section.advisorApprovalInfo.facultyInfo.fullName}\r\n \r\n \r\n \r\n \r\n {section.advisorApprovalInfo.decisionDate}\r\n \r\n \r\n \r\n
\r\n \r\n ) : undefined}\r\n \r\n \r\n
\r\n \r\n {section.advisorApprovalInfo.reason || resources.lblNoComments}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n );\r\n }\r\n // #endregion Advisor approval\r\n\r\n // #region Schedule(s)\r\n let schedules: JSX.Element | JSX.Element[] | undefined;\r\n if (section.schedules && section.schedules.length > 0) {\r\n schedules = section.schedules.map((schedule, i) => (\r\n \r\n
\r\n \r\n \r\n \r\n {schedule.dayDesc.indexOf(\"||\") > 0 ? schedule.dayDesc.substring(schedule.dayDesc.indexOf(\"||\")+2, schedule.dayDesc.length):\"\"}\r\n \r\n \r\n \r\n \r\n {schedule.dayDesc.indexOf(\"||\") > 0 ? schedule.dayDesc.substring(0, schedule.dayDesc.indexOf(\"||\")) : schedule.dayDesc}\r\n \r\n \r\n \r\n \r\n {(schedule.startTime!= schedule.endTime)?\r\n Format.toString(resources.formatStartEndTime, [schedule.startTime, schedule.endTime]):\"\"}\r\n \r\n \r\n \r\n \r\n \r\n {schedule.bldgName ?\r\n Format.toString(resources.formatBuilding, [schedule.bldgName])\r\n : ''}\r\n {schedule.floorId ?\r\n Format.toString(resources.formatFloor, [schedule.floorId])\r\n : ''}\r\n {schedule.roomId ?\r\n Format.toString(resources.formatRoom, [schedule.roomId])\r\n : ''}\r\n \r\n \r\n \r\n
\r\n
\r\n ));\r\n }\r\n else {\r\n schedules = (\r\n \r\n
\r\n \r\n {resources.lblNoSchedule}\r\n \r\n
\r\n
\r\n );\r\n }\r\n // #endregion Schedule(s) \r\n\r\n /* ***** Customization Start *****\r\n *\r\n * Author: Ricardo Luna (ricardo.luna@ellucian.com)\r\n * Client: Nicolet AreaTechnical College\r\n * MOD: Self-Service Custom Course Modification --> 60.02 Self Service Section Search Page Optimization\r\n * Description:\r\n Remove the code to print the Name of the Organization (Campus) where the Course will be delivered\r\n\r\n * Base Line Code start Line 522\r\n \r\n \r\n \r\n {Format.toString(resources.formatOrganization, [schedule.orgName])} Line 524\r\n {schedule.bldgName ?\r\n Format.toString(resources.formatBuilding, [schedule.bldgName])\r\n : ''}\r\n {schedule.floorId ?\r\n Format.toString(resources.formatFloor, [schedule.floorId])\r\n : ''}\r\n {schedule.roomId ?\r\n Format.toString(resources.formatRoom, [schedule.roomId])\r\n : ''}\r\n \r\n \r\n\r\n ***** Customization Ends ***** */\r\n\r\n // #region Instructor(s)\r\n let instructors: JSX.Element | JSX.Element[] | undefined;\r\n if (section.instructors && section.instructors.length > 0) {\r\n instructors = section.instructors.map((instructor, i) => (\r\n \r\n
\r\n \r\n {instructor.firstLetter}\r\n \r\n
\r\n
\r\n \r\n {instructor.fullName}\r\n \r\n
\r\n
\r\n ));\r\n }\r\n else {\r\n instructors = (\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n {resources.lblNoInstructor}\r\n \r\n
\r\n
\r\n );\r\n }\r\n // #endregion Instructor(s)\r\n\r\n // #region Seats Left\r\n let percentageSeatsLeft: number = 0;\r\n let indicatorSeatsLeft: JSX.Element | undefined;\r\n indicatorSeatsLeft = undefined;\r\n if (section.seatsLeft > 0) {\r\n percentageSeatsLeft = Math.floor((section.seatsLeft * 100) / section.maximumSeats);\r\n indicatorSeatsLeft = percentageSeatsLeft > 50 ? undefined : (\r\n 25 ? 'warning' : 'error'}\r\n />\r\n );\r\n }\r\n // #endregion Seats Left\r\n const detailAlignment: TextAlign = isWidthUp('md', width) ? 'right' : 'left';\r\n const bodyModal: JSX.Element = (\r\n <>\r\n {statusMessage}\r\n {advisorApproval}\r\n {permissionRequest}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {section.isConEd && (\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n {section.seatsWaiting > 0 ? (\r\n \r\n {Format.toString(resources.formatSeatsWaiting, [section.seatsWaiting])}\r\n \r\n ) : undefined}\r\n \r\n
\r\n
\r\n \r\n \r\n {section.isConEd ?\r\n Format.toString(resources.formatSession, [section.sessionDesc])\r\n : Format.toString(resources.formatYearTermSession, [section.academicYear, section.academicTermDesc, section.sessionDesc])}\r\n \r\n \r\n {Format.toString(resources.formatSubtypeSection, [section.eventSubType, section.section])}\r\n \r\n {canChangeCreditType ? (\r\n \r\n ) : (\r\n \r\n {Format.toString(resources.formatTypeCreditType, [\r\n section.eventType,\r\n creditTypeDesc || section.defaultCreditTypeDesc\r\n ])}\r\n \r\n )}\r\n \r\n {Format.toString(resources.formatDuration, [section.startDate, section.endDate])}\r\n \r\n\t\t\t\t\t{\r\n /*customization start*/\r\n\t /* Author: Fermin Juarez (fermin.juarez@ellucian.com)\r\n\t * Client: Nicolet Area Technical College\r\n\t * MOD: section search customization\r\n\t * Description: \r\n\t\t\t\t\t */\r\n section.generalEd != null && section.generalEd != '' ? (\r\n \r\n {resources.lblDeliveryMethod+ section.generalEd}\r\n \r\n ) : undefined\r\n /*customization end*/}\r\n \r\n
\r\n \r\n \r\n \r\n {resources.lblInstructors}\r\n \r\n \r\n \r\n
\r\n \r\n {instructors}\r\n \r\n
\r\n \r\n \r\n \r\n {resources.lblSchedules}\r\n \r\n \r\n \r\n
\r\n \r\n {schedules}\r\n \r\n
\r\n {section.description ? (\r\n
\r\n \r\n \r\n \r\n {resources.lblCourseDescription}\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n ) : undefined}\r\n \r\n \r\n \r\n {resources.lblRegistrationType}\r\n \r\n \r\n \r\n \r\n {section.isConEd ? resources.lblContinuingEducation\r\n : resources.lblTraditional}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {resources.lblPrerequisits}\r\n \r\n \r\n \r\n {section.prerequisiteConditionList\r\n && section.prerequisiteConditionList.length > 0 ? (\r\n
    \r\n {section.prerequisiteConditionList.map((prerequisite, i) => (\r\n
  • \r\n \r\n {prerequisite}\r\n \r\n
  • \r\n ))}\r\n
\r\n ) : (\r\n \r\n {resources.lblDoesNotApply}\r\n \r\n )}\r\n
\r\n
\r\n \r\n \r\n \r\n {resources.lblCorequisites}\r\n \r\n \r\n \r\n {section.corequisistes\r\n && section.corequisistes.length > 0 ? (\r\n
    \r\n {section.corequisistes.map((corequisite, i) => (\r\n
  • \r\n \r\n {Format.toString(resources.formatCorequisite,\r\n [corequisite.eventId, corequisite.subTypeDescription])}\r\n \r\n
  • \r\n ))}\r\n
\r\n ) : (\r\n \r\n {resources.lblDoesNotApply}\r\n \r\n )}\r\n
\r\n
\r\n \r\n \r\n \r\n {\r\n /*customization start*/\r\n\t\t /* Author: Fermin Juarez (fermin.juarez@ellucian.com)\r\n\t\t * Client: Nicolet Area Technical College\r\n\t\t * MOD: section search customization\r\n\t\t * Description: \r\n\t\t\t\t\t\t */\r\n\t\t\t\t\t\t resources.lblFees\r\n\t\t\t\t\t\t /*customization end*/\r\n\t\t\t\t\t\t }\r\n \r\n \r\n \r\n {section.sectionFees\r\n && section.sectionFees.length > 0 ? (\r\n
    \r\n {section.sectionFees.map((sectionFee, i) => (\r\n
  • \r\n \r\n {Format.toString(resources.formatFees,\r\n [sectionFee.amount, sectionFee.chargeDescription, sectionFee.feeGroupDescription])}\r\n \r\n
  • \r\n ))}\r\n
\r\n ) : (\r\n \r\n {resources.lblDoesNotApply}\r\n \r\n )}\r\n
\r\n
\r\n \r\n \r\n \r\n {resources.lblCreditTypes}\r\n \r\n \r\n \r\n {section.creditTypes\r\n && section.creditTypes.length > 0 ? (\r\n
    \r\n {section.creditTypes.map((creditType, i) => (\r\n
  • \r\n \r\n {creditType.description}\r\n \r\n
  • \r\n ))}\r\n
\r\n ) : (\r\n \r\n {resources.lblDoesNotApply}\r\n \r\n )}\r\n
\r\n
\r\n {section.hasBlockRelated && canAddToWaitlist && (\r\n \r\n \r\n \r\n {resources.lblAddToWaitlist}\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n // #endregion Body\r\n\r\n return (\r\n \r\n {bodyModal}\r\n \r\n );\r\n};\r\n// #endregion Component\r\n\r\n// Export: Component\r\nexport default withStyles(styles)(withWidth()(SectionDetailModal));","/* Copyright 2018 - 2019 Ellucian Company L.P. and its affiliates.\r\n * File: AdvancedSearchModal.tsx\r\n * Type: Presentation component */\r\n\r\n// #region Imports\r\nimport React from 'react';\r\n\r\n// Core components\r\nimport Button, { ButtonGroup } from '@hedtech/powercampus-design-system/react/core/Button';\r\nimport DatePicker from '@hedtech/powercampus-design-system/react/core/DatePicker';\r\nimport Divider from '@hedtech/powercampus-design-system/react/core/Divider';\r\nimport Dropdown from '@hedtech/powercampus-design-system/react/core/Dropdown';\r\nimport Grid from '@hedtech/powercampus-design-system/react/core/Grid';\r\nimport Modal from '@hedtech/powercampus-design-system/react/core/Modal';\r\nimport Text from '@hedtech/powercampus-design-system/react/core/Text';\r\nimport TextField from '@hedtech/powercampus-design-system/react/core/TextField';\r\n\r\n// Types\r\nimport { IDropDownOption } from '@hedtech/powercampus-design-system/types/IDropDownOption';\r\nimport { IAdvancedSearch } from '../../../Types/Section/IAdvancedSearch';\r\nimport { ISectionSearchOption } from '../../../Types/Section/ISectionSearchOption';\r\n// #endregion\r\n\r\n// #region Internal types\r\nexport interface IAdvancedSearchModalProps {\r\n advancedSearchSelected?: IAdvancedSearch;\r\n data: ISectionSearchOption;\r\n dateTimeCulture: string;\r\n firstDayOfWeek: number;\r\n id: string;\r\n isConEd: boolean;\r\n isLoadingSectionSearch?: boolean;\r\n noDefaultPeriod?: boolean;\r\n open: boolean;\r\n resources: IAdvancedSearchOptionModalResProps;\r\n shortDatePattern: string;\r\n onClear: () => void;\r\n onClose: () => void;\r\n onDateTimeChange?: (date: string, id: string, isValid: boolean) => void;\r\n onDropdownChange: (optionSelected: IDropDownOption, id: string) => void;\r\n onSearch: () => void;\r\n onTextFieldChange: (event: any) => void;\r\n}\r\n\r\nexport interface IAdvancedSearchOptionModalResProps {\r\n btnClear: string;\r\n btnSearch: string;\r\n lblAdvancedSearch: string;\r\n lblAdvancedSearchSubTitle: string;\r\n lblCampus: string;\r\n lblClassLevel: string;\r\n lblClosed: string;\r\n lblCollege: string;\r\n lblCourse: string;\r\n lblCourseDetails: string;\r\n lblCourseType: string;\r\n lblCreditType: string;\r\n lblCurriculum: string;\r\n lblDepartment: string;\r\n lblDropDownEmptyText: string;\r\n lblEndsBy: string;\r\n lblGeneralEducation: string;\r\n lblInstructor: string;\r\n lblKeyword: string;\r\n lblMeeting: string;\r\n lblNonTraditionalPrograms: string;\r\n lblOpen: string;\r\n lblPeriod: string;\r\n lblPopulation: string;\r\n lblProgram: string;\r\n lblRegistrationType: string;\r\n lblSession: string;\r\n lblStartsFrom: string;\r\n lblStatus: string;\r\n lblSubtype: string;\r\n lblTimeLocation: string;\r\n lblWaitlist: string;\r\n}\r\n// #endregion\r\n\r\n// #region Component\r\nconst AdvancedSearchModal: React.FC = (props: IAdvancedSearchModalProps): JSX.Element => {\r\n const {\r\n advancedSearchSelected,\r\n data,\r\n dateTimeCulture,\r\n firstDayOfWeek,\r\n id,\r\n isConEd,\r\n isLoadingSectionSearch,\r\n noDefaultPeriod,\r\n open,\r\n resources,\r\n shortDatePattern,\r\n onClear,\r\n onClose,\r\n onDateTimeChange,\r\n onDropdownChange,\r\n onSearch,\r\n onTextFieldChange\r\n } = props;\r\n\r\n const emptyOption: IDropDownOption = {\r\n description: resources.lblDropDownEmptyText,\r\n value: ''\r\n };\r\n\r\n let sectionNoConEd: JSX.Element | undefined;\r\n if (!isConEd) {\r\n sectionNoConEd = (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n \r\n {resources.lblAdvancedSearch}\r\n \r\n \r\n {resources.lblAdvancedSearchSubTitle}\r\n \r\n \r\n )}\r\n footer={(\r\n \r\n \r\n {resources.btnClear}\r\n \r\n \r\n {resources.btnSearch}\r\n \r\n \r\n )}\r\n maxWidth=\"md\"\r\n open={open}\r\n onClose={onClose}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {sectionNoConEd}\r\n \r\n \r\n \r\n {resources.lblTimeLocation}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {resources.lblCourseDetails}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n// #endregion\r\n\r\n// Export: Component\r\nexport default AdvancedSearchModal;","/* Copyright 2019 Ellucian Company L.P. and its affiliates.\r\n * File: ShareSearchCourseLinkModal.tsx\r\n * Type: Presentation component */\r\n\r\n// #region Imports\r\nimport React from 'react';\r\n\r\n// Core components\r\nimport Button from '@hedtech/powercampus-design-system/react/core/Button';\r\nimport Grid from '@hedtech/powercampus-design-system/react/core/Grid';\r\nimport Modal from '@hedtech/powercampus-design-system/react/core/Modal';\r\nimport TextField from '@hedtech/powercampus-design-system/react/core/TextField';\r\n\r\n// Types\r\nimport { IShareSearchCourseLinkModalResources } from '../../../Types/Resources/Search/ICourseResources';\r\n// #endregion Imports\r\n\r\n// #region Types\r\nexport interface IShareSearchCourseLinkModalProps {\r\n urlToShare: string;\r\n onCloseModal: () => void;\r\n open: boolean;\r\n\r\n resources: IShareSearchCourseLinkModalResources;\r\n}\r\n// #endregion Types\r\n\r\n// #region Component\r\nconst ShareSearchCourseLinkModal: React.FC = (props: IShareSearchCourseLinkModalProps): JSX.Element => {\r\n const {\r\n open,\r\n urlToShare,\r\n onCloseModal,\r\n\r\n resources\r\n } = props;\r\n\r\n return (\r\n \r\n {resources.btnOk}\r\n \r\n )}\r\n id=\"shareSearchCourseLink\"\r\n header={resources.lblTitle}\r\n maxWidth=\"md\"\r\n open={open}\r\n onClose={onCloseModal}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n// #endregion Component\r\n\r\n// Export: Component\r\nexport default ShareSearchCourseLinkModal;","/* Copyright 2019 - 2020 Ellucian Company L.P. and its affiliates.\r\n * File: Section.ts */\r\n\r\n// Types\r\nimport { ILogData } from '@hedtech/powercampus-design-system/types/ILogData';\r\n\r\n// Helpers\r\nimport Request from '@hedtech/powercampus-design-system/helpers/Request';\r\n\r\n// Functions for requests\r\nconst SectionRequests = {\r\n getSection(id: number, withIsCartable: boolean,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void,\r\n personId?: number): void {\r\n Request.get(this.getSection.name, `/Sections/${id}/${withIsCartable}/${personId}`, resolver, resolveError);\r\n },\r\n getSectionAnonymous(id: number,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void): void {\r\n Request.get(this.getSectionAnonymous.name, `/Sections/${id}`, resolver, resolveError);\r\n },\r\n getSectionInstructors(sectionId: number,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void,\r\n signal: AbortSignal): void {\r\n Request.post(this.getSectionInstructors.name, '/Sections/Instructors', { sectionId }, resolver, resolveError, signal);\r\n }\r\n};\r\n\r\n// Export object with the requests\r\nexport default SectionRequests;","/* Copyright 2018-2020 Ellucian Company L.P. and its affiliates.\r\n * File: Courses.ts */\r\n\r\n// Types\r\nimport { ILogData } from '@hedtech/powercampus-design-system/types/ILogData';\r\nimport { IYearTerm } from '../../Types/Generic/IYearTerm';\r\nimport { IAdvancedSearch } from '../../Types/Section/IAdvancedSearch';\r\nimport { IStudentBlockRegRuleGroupBlock } from '../../Types/Students/IStudentBlockRegRuleGroupBlock';\r\nimport { IStudentRegistration } from '../../Types/Students/IStudentRegistration';\r\n\r\n// Helpers\r\nimport Request from '@hedtech/powercampus-design-system/helpers/Request';\r\n\r\n// Functions for requests\r\nconst CoursesRequests = {\r\n getAdvancedSearchOptions(resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.getAdvancedSearchOptions.name, '/Sections/AdvancedSearchOptions', null, resolver, resolveError);\r\n },\r\n getBlock(blockRegistrationRuleGroupId: number, blockRegRuleGroupBlockId: number, yearTerm: IYearTerm,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.getRule.name, '/BlockRegistration/Block', { blockRegistrationRuleGroupId, blockRegRuleGroupBlockId, yearTerm },\r\n resolver, resolveError);\r\n },\r\n getBlocks(blockRegistrationRuleGroupId: number, yearTerm: IYearTerm,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void,\r\n signal: AbortSignal): void {\r\n Request.post(this.getRule.name, '/BlockRegistration/Blocks', { blockRegistrationRuleGroupId, yearTerm },\r\n resolver, resolveError, signal);\r\n },\r\n getPeriods(resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.getPeriods.name, '/Periods/Registration', null, resolver, resolveError);\r\n },\r\n getRule(yearTerm: IYearTerm, resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.getRule.name, '/BlockRegistration/Rule', { yearTerm }, resolver, resolveError);\r\n },\r\n postAddToCart(id: number,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void,\r\n personId?: number): void {\r\n /*customization start*/\r\n\t\t/* Author: Fermin Juarez (fermin.juarez@ellucian.com)\r\n\t\t * Client: Nicolet Area Technical College\r\n\t\t * MOD: registration customization\r\n\t\t * Description: \r\n\t\t */\r\n //Request.post(this.postAddToCart.name, '/Cart/Create', { id, personId }, resolver, resolveError);\r\n\t\t Request.post(this.postAddToCart.name, '/Cart/CreateWithValidation', { id, personId }, resolver, resolveError);\r\n\t\t/*customization end*/\r\n },\r\n postAddBlock(block: IStudentBlockRegRuleGroupBlock,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.postAddBlock.name, '/BlockRegistration/Block/Add', { block }, resolver, resolveError);\r\n },\r\n postAddToWaitlist(id: number,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void,\r\n personId?: number): void {\r\n Request.post(this.postAddToWaitlist.name, '/Waitlist/Create', { id, personId }, resolver, resolveError);\r\n },\r\n postAdvancedSearchOptions(advancedOptions: IAdvancedSearch,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void,\r\n signal: AbortSignal): void {\r\n Request.post(this.postAdvancedSearchOptions.name, '/Sections/AdvancedSearch', advancedOptions, resolver, resolveError, signal);\r\n },\r\n postDropBlock(block: IStudentBlockRegRuleGroupBlock,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.postRemoveBlock.name, '/BlockRegistration/Block/Drop', { block }, resolver, resolveError);\r\n },\r\n postDropRegistration(sectionId: number,\r\n yearTerm: string,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.postDropRegistration.name, '/Students/DropRegistration', { yearTerm, sectionId }, resolver, resolveError);\r\n },\r\n postEditCreditType(id: number,\r\n creditType: string,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.postEditCreditType.name,\r\n '/Cart/EditCreditType',\r\n { id, creditType },\r\n resolver,\r\n resolveError);\r\n },\r\n postEditPermissionRequest(id: number,\r\n comments: string,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.postEditPermissionRequest.name,\r\n '/Students/EditPermissionRequest',\r\n { id, comments },\r\n resolver,\r\n resolveError);\r\n },\r\n postRemoveBlock(block: IStudentBlockRegRuleGroupBlock,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.postRemoveBlock.name, '/BlockRegistration/Block/Remove', { block }, resolver, resolveError);\r\n },\r\n postRemoveCartSections(sections: number[],\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.postRemoveCartSections.name, '/BlockRegistration/RemoveCartSections', { sections }, resolver, resolveError);\r\n },\r\n postRemoveFromCart(id: number,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.postRemoveFromCart.name, '/Cart/Delete', { id }, resolver, resolveError);\r\n },\r\n postRemoveFromWaitlist(id: number,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.postRemoveFromWaitlist.name, '/Waitlist/Delete', { id }, resolver, resolveError);\r\n },\r\n postSavePermissionRequest(id: number,\r\n comments: string,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.postSavePermissionRequest.name, '/Students/SavePermissionRequest', { id, comments }, resolver, resolveError);\r\n },\r\n postScheduleList(yearTerm: string,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void,\r\n signal: AbortSignal): void {\r\n const split = yearTerm.split('/');\r\n Request.post(this.postScheduleList.name, '/Schedule/StudentCourses', { year: split[0], term: split[1] }, resolver, resolveError, signal);\r\n },\r\n postSections(keyWords: string | undefined,\r\n yearTerm: string,\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void,\r\n signal: AbortSignal): void {\r\n Request.post(this.postSections.name, '/Sections', { keyWords, yearTerm }, resolver, resolveError, signal);\r\n },\r\n postStudentRegistration(yearTerm: string,\r\n sections: IStudentRegistration[],\r\n resolver: (json: string) => void,\r\n resolveError: (logData: ILogData) => void): void {\r\n Request.post(this.postStudentRegistration.name, '/Students/Registration', { yearTerm, sections }, resolver, resolveError);\r\n }\r\n};\r\n\r\n// Export object with the requests\r\nexport default CoursesRequests;","/* Copyright 2019 Ellucian Company L.P. and its affiliates.\r\n * File: Section.ts */\r\n\r\n// Types\r\nimport { ILogData } from '@hedtech/powercampus-design-system/types/ILogData';\r\nimport { IAdvancedSearch } from '../../Types/Section/IAdvancedSearch';\r\n\r\n// Helpers\r\nimport Request from '@hedtech/powercampus-design-system/helpers/Request';\r\n\r\n// Functions for requests\r\nconst SectionRequests = {\r\n getSearchOptions(sectionSearchParameters: IAdvancedSearch,\r\n startIndex: number,\r\n length: number,\r\n resolver: (json: string) => void, resolveError: (logData: ILogData) => void): void {\r\n Request.post(\r\n this.getSearchOptions.name,\r\n '/Sections/Search',\r\n { sectionSearchParameters, startIndex, length },\r\n resolver,\r\n resolveError);\r\n }\r\n};\r\n\r\n// Export object with the requests\r\nexport default SectionRequests;","/* Copyright 2019 - 2020 Ellucian Company L.P. and its affiliates.\r\n * File: SectionView.tsx\r\n * Type: Container component */\r\n\r\n// #region Imports\r\nimport React from 'react';\r\nimport ReactDOM from 'react-dom';\r\n\r\n// Internal components\r\nimport Illustration from '@hedtech/powercampus-design-system/react/core/Illustration';\r\nimport SectionCard, { ISectionCardResProps } from '../../Generic/SectionCard';\r\nimport SectionDetailModal, { ISectionDetailModalResProps } from '../../Generic/SectionDetailModal';\r\nimport AdvancedSearchModal, { IAdvancedSearchOptionModalResProps } from '../../Registration/Courses/AdvancedSearchModal';\r\nimport ShareSearchCourseLinkModal from '../Course/ShareSearchCourseLinkModal';\r\n\r\n// Core components\r\nimport Layout, { withLayout } from '@hedtech/powercampus-design-system/react/components/Layout';\r\nimport Button from '@hedtech/powercampus-design-system/react/core/Button';\r\nimport Card, { CardContent } from '@hedtech/powercampus-design-system/react/core/Card';\r\nimport Dropdown from '@hedtech/powercampus-design-system/react/core/Dropdown';\r\nimport ExpansionPanel from '@hedtech/powercampus-design-system/react/core/ExpansionPanel';\r\nimport Grid from '@hedtech/powercampus-design-system/react/core/Grid';\r\nimport Icon from '@hedtech/powercampus-design-system/react/core/Icon';\r\nimport MessageStyled from '@hedtech/powercampus-design-system/react/core/MessageStyled';\r\nimport Pagination from '@hedtech/powercampus-design-system/react/core/Pagination';\r\nimport Search from '@hedtech/powercampus-design-system/react/core/Search';\r\nimport Text from '@hedtech/powercampus-design-system/react/core/Text';\r\nimport TextField from '@hedtech/powercampus-design-system/react/core/TextField';\r\n\r\n// Constants\r\nimport Constants from '@hedtech/powercampus-design-system/helpers/Constants';\r\n\r\n// Types\r\nimport { IAlert } from '@hedtech/powercampus-design-system/types/IAlert';\r\nimport { ICultures } from '@hedtech/powercampus-design-system/types/ICultures';\r\nimport { IDropDownOption } from '@hedtech/powercampus-design-system/types/IDropDownOption';\r\nimport { IJsonResult } from '@hedtech/powercampus-design-system/types/IJsonResult';\r\nimport { ILogData } from '@hedtech/powercampus-design-system/types/ILogData';\r\nimport { ResultType } from '@hedtech/powercampus-design-system/types/ResultType';\r\nimport { IShareSearchCourseLinkModalResources } from '../../../Types/Resources/Search/ICourseResources';\r\nimport { ISectionResources } from '../../../Types/Resources/Search/ISectionResources';\r\nimport { IAdvancedSearch } from '../../../Types/Section/IAdvancedSearch';\r\nimport { ISection } from '../../../Types/Section/ISection';\r\nimport { ISectionDetail } from '../../../Types/Section/ISectionDetail';\r\nimport { ISectionSearchOption } from '../../../Types/Section/ISectionSearchOption';\r\n\r\n// Helpers\r\nimport Format from '@hedtech/powercampus-design-system/helpers/Format';\r\nimport LogData from '@hedtech/powercampus-design-system/helpers/LogData';\r\nimport Tokens from '@hedtech/powercampus-design-system/react/core/styles/Tokens';\r\nimport { createStyles, withStyles, WithStyles } from '@hedtech/powercampus-design-system/react/core/styles/withStyles';\r\nimport { isWidthUp, withWidth, WithWidth } from '@hedtech/powercampus-design-system/react/core/withWidth';\r\n\r\n// Requests\r\nimport RequestsSection from '../../../Requests/Generic/Section';\r\nimport RequestsCourses from '../../../Requests/Registration/Courses';\r\nimport Requests from '../../../Requests/Search/Section';\r\n\r\n// State Management\r\nimport LayoutActions from '@hedtech/powercampus-design-system/flux/actions/LayoutActions';\r\nimport LayoutStore from '@hedtech/powercampus-design-system/flux/stores/LayoutStore';\r\n/* ***** Customization Start *****\r\n *\r\n * Author: Ricardo Luna (ricardo.luna@ellucian.com)\r\n * Client: Nicolet AreaTechnical College\r\n * MOD: Self-Service Custom Course Modification --> 60.02 Self Service Section Search Page Optimization\r\n * Description:\r\n Display custom calculated Fees data instead of default “Fees Applicable”\r\n */\r\nimport { ISectionSearch } from '../../../Types/Section/ISectionSearch'; //--> New import\r\n/* ***** Customization Ends ***** */\r\n// #endregion Imports\r\n\r\n// #region Types\r\ninterface ISectionRes extends ISectionResources {\r\n advancedSearchModal: IAdvancedSearchOptionModalResProps;\r\n sectionDetailModal: ISectionDetailModalResProps;\r\n sectionCard: ISectionCardResProps;\r\n shareSearchCourseLinkModalResources: IShareSearchCourseLinkModalResources;\r\n}\r\n\r\ninterface ISectionState {\r\n advancedSearchModalOpen: boolean;\r\n advancedSearchOptions?: ISectionSearchOption;\r\n advancedSearchSelected: IAdvancedSearch;\r\n componentError: boolean;\r\n cultures: ICultures;\r\n isEmptySearch: boolean;\r\n isNoResults: boolean;\r\n openShareSearchCourseModal: boolean;\r\n overallCount: number;\r\n sectionDetail?: ISectionDetail;\r\n sectionModalOpen: boolean;\r\n sections?: ISection[];\r\n /* ***** Customization Start *****\r\n *\r\n * Author: Ricardo Luna (ricardo.luna@ellucian.com)\r\n * Client: Nicolet AreaTechnical College\r\n * MOD: Self-Service Custom Course Modification --> 60.02 Self Service Section Search Page Optimization\r\n * Description:\r\n Display custom calculated Fees data instead of default “Fees Applicable”\r\n */\r\n sectionFeesByID?: ISectionSearch[]; // --> New property\r\n /* ***** Customization Ends ***** */\r\n urlToShare?: string;\r\n\r\n // #region Pagination\r\n page: number;\r\n rowsPerPage: number;\r\n rowsPerPageOptions: number[];\r\n // #endregion Pagination\r\n\r\n resources?: ISectionRes;\r\n}\r\n\r\nconst styles = createStyles({\r\n inline: {\r\n display: 'inline'\r\n },\r\n marginLeft: {\r\n display: 'inline',\r\n marginLeft: Tokens.sizingSmall\r\n }\r\n});\r\n\r\ntype PropsWithStyles = WithStyles & WithWidth;\r\n// #endregion Types\r\n\r\n// #region Component\r\nclass SectionView extends React.Component {\r\n private idModule: string;\r\n private idPage: string;\r\n private eventId: string;\r\n private instructorId: string;\r\n private campusId: string;\r\n private classLevel: string;\r\n private college: string;\r\n private creditType: string;\r\n private curriculum: string;\r\n private department: string;\r\n private endDate: string;\r\n private endTime: string;\r\n private eventSubType: string;\r\n private eventType: string;\r\n private generalEd: string;\r\n private keywords: string;\r\n private meeting: string;\r\n private nonTradProgram: string;\r\n private period: string;\r\n private population: string;\r\n private program: string;\r\n private session: string;\r\n private startDate: string;\r\n private startTime: string;\r\n private status: string;\r\n private academicTerm: string;\r\n private academicYear: string;\r\n\r\n // #region Pagination\r\n private preservePage: boolean;\r\n private preserveRowsPerPage: boolean;\r\n private rowsPerPageOptions: number[];\r\n // #endregion Pagination\r\n\r\n public readonly state: Readonly;\r\n\r\n public constructor(props) {\r\n super(props);\r\n\r\n // #region Initialize Variables and State\r\n this.idModule = 'Search';\r\n this.idPage = 'Section';\r\n this.eventId = '';\r\n this.instructorId = '';\r\n this.campusId = '';\r\n this.classLevel = '';\r\n this.college = '';\r\n this.creditType = '';\r\n this.curriculum = '';\r\n this.department = '';\r\n this.endDate = '';\r\n this.endTime = '';\r\n this.eventSubType = '';\r\n this.eventType = '';\r\n this.generalEd = '';\r\n this.keywords = '';\r\n this.meeting = '';\r\n this.nonTradProgram = '';\r\n this.period = '';\r\n this.population = '';\r\n this.program = '';\r\n this.session = '';\r\n this.startDate = '';\r\n this.startTime = '';\r\n this.status = '';\r\n this.academicTerm = '';\r\n this.academicYear = '';\r\n\r\n // #region Pagination\r\n this.preservePage = false;\r\n this.preserveRowsPerPage = false;\r\n this.rowsPerPageOptions = [5, 10, 15, 20, 25, 50];\r\n // #endregion Pagination\r\n\r\n this.state = this.getInitialState();\r\n // #endregion Initialize Variables and State\r\n\r\n // #region Bind State Management Listeners\r\n LayoutStore.addLayoutReadyListener(this.onLayoutReady);\r\n // #endregion State Management Listeners\r\n }\r\n\r\n private getInitialState(): ISectionState {\r\n let resources: ISectionRes | undefined;\r\n if (this.state) {\r\n resources = this.state.resources;\r\n }\r\n return {\r\n advancedSearchModalOpen: false,\r\n advancedSearchSelected: {\r\n endDateKey: 0,\r\n eventId: '',\r\n keywords: '',\r\n period: '',\r\n registrationtype: 'TRAD',\r\n session: '',\r\n startDateKey: 0\r\n } as IAdvancedSearch,\r\n componentError: false,\r\n cultures: LayoutStore.getCultures(),\r\n isEmptySearch: false,\r\n isNoResults: false,\r\n openShareSearchCourseModal: false,\r\n overallCount: 0,\r\n sectionModalOpen: false,\r\n urlToShare: '',\r\n\r\n // #region Pagination\r\n page: 0,\r\n rowsPerPage: 5,\r\n rowsPerPageOptions: [],\r\n // #endregion Pagination\r\n\r\n resources: resources\r\n };\r\n }\r\n\r\n // #region Events\r\n private setContent = (): void => {\r\n try {\r\n const {\r\n advancedSearchSelected,\r\n page,\r\n rowsPerPage\r\n } = this.state;\r\n\r\n LayoutActions.setLoading(true);\r\n Requests.getSearchOptions(\r\n advancedSearchSelected,\r\n page * rowsPerPage,\r\n rowsPerPage,\r\n this.resolveGetSections,\r\n this.logError\r\n );\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.setContent.name, e));\r\n }\r\n };\r\n // #endregion Events\r\n\r\n // #region Functions\r\n private onOpenAdvancedSearchModal = (): void => {\r\n try {\r\n const {\r\n advancedSearchSelected\r\n } = this.state;\r\n\r\n if (advancedSearchSelected) {\r\n this.setState({\r\n advancedSearchModalOpen: true,\r\n advancedSearchSelected: advancedSearchSelected\r\n });\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onOpenAdvancedSearchModal.name, e));\r\n }\r\n };\r\n\r\n private onClearSelectedOptions = (): void => {\r\n try {\r\n const optionsSelected: IAdvancedSearch | undefined = this.state.advancedSearchSelected;\r\n\r\n if (optionsSelected) {\r\n optionsSelected.campusId = '';\r\n optionsSelected.classLevel = '';\r\n optionsSelected.college = '';\r\n optionsSelected.creditType = '';\r\n optionsSelected.curriculum = '';\r\n optionsSelected.department = '';\r\n optionsSelected.endDate = '';\r\n optionsSelected.endDateKey = optionsSelected.endDateKey + 1;\r\n optionsSelected.endTime = '';\r\n optionsSelected.eventId = '';\r\n optionsSelected.eventSubType = '';\r\n optionsSelected.eventType = '';\r\n optionsSelected.generalEd = '';\r\n optionsSelected.instructorId = '';\r\n optionsSelected.keywords = '';\r\n optionsSelected.meeting = '';\r\n optionsSelected.nonTradProgram = '';\r\n optionsSelected.period = '';\r\n optionsSelected.population = '';\r\n optionsSelected.program = '';\r\n optionsSelected.registrationtype = 'TRAD';\r\n optionsSelected.session = '';\r\n optionsSelected.startDate = '';\r\n optionsSelected.startDateKey = optionsSelected.startDateKey + 1;\r\n optionsSelected.startTime = '';\r\n optionsSelected.status = '';\r\n optionsSelected.academicTerm = '';\r\n optionsSelected.academicYear = '';\r\n this.setState({\r\n advancedSearchSelected: optionsSelected\r\n });\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onClearSelectedOptions.name, e));\r\n }\r\n };\r\n\r\n private onNewSearch = (): void => {\r\n try {\r\n this.setState({\r\n overallCount: 0,\r\n sections: undefined\r\n }, this.onClearSelectedOptions);\r\n\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onNewSearch.name, e));\r\n }\r\n };\r\n\r\n private onCloseAdvancedSearchModal = (): void => {\r\n try {\r\n this.setState({\r\n advancedSearchModalOpen: false\r\n });\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onCloseAdvancedSearchModal.name, e));\r\n }\r\n };\r\n\r\n private onAdvancedSearchDateTimeChange = (date: string, id: string, _isValid: boolean): void => {\r\n try {\r\n const optionsSelected: IAdvancedSearch | undefined = this.state.advancedSearchSelected;\r\n if (optionsSelected) {\r\n optionsSelected[`${id[3].toLowerCase()}${id.substr(4, id.length - 4)}`] = date;\r\n this.setState({\r\n advancedSearchSelected: optionsSelected\r\n });\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onAdvancedSearchDateTimeChange.name, e));\r\n }\r\n };\r\n\r\n private onAdvancedSearchDropdownChange = (optionSelected: IDropDownOption, id: string): void => {\r\n try {\r\n const ids: string[] = id.split('-');\r\n id = ids.length > 1 ? ids[0] : id;\r\n const optionsSelected: IAdvancedSearch | undefined = this.state.advancedSearchSelected;\r\n if (optionsSelected) {\r\n optionsSelected[`${id[3].toLowerCase()}${id.substr(4, id.length - 4)}`] = optionSelected.value;\r\n this.setState({\r\n advancedSearchSelected: optionsSelected\r\n });\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onAdvancedSearchDropdownChange.name, e));\r\n }\r\n };\r\n\r\n private onSearch = (): void => {\r\n try {\r\n const {\r\n advancedSearchSelected\r\n } = this.state;\r\n\r\n if (advancedSearchSelected.campusId\r\n || advancedSearchSelected.classLevel\r\n || advancedSearchSelected.college\r\n || advancedSearchSelected.creditType\r\n || advancedSearchSelected.curriculum\r\n || advancedSearchSelected.department\r\n || advancedSearchSelected.endDate\r\n || advancedSearchSelected.endTime\r\n || advancedSearchSelected.eventId\r\n || advancedSearchSelected.eventSubType\r\n || advancedSearchSelected.eventType\r\n || advancedSearchSelected.generalEd\r\n || advancedSearchSelected.generalEd\r\n || advancedSearchSelected.instructorId\r\n || advancedSearchSelected.keywords\r\n || advancedSearchSelected.meeting\r\n || advancedSearchSelected.nonTradProgram\r\n || advancedSearchSelected.period\r\n || advancedSearchSelected.population\r\n || advancedSearchSelected.program\r\n || advancedSearchSelected.session\r\n || advancedSearchSelected.startDate\r\n || advancedSearchSelected.startTime\r\n || advancedSearchSelected.status\r\n || advancedSearchSelected.academicTerm\r\n || advancedSearchSelected.academicYear\r\n ) {\r\n const newUrl = this.setQueryString('/Search/Section');\r\n if (newUrl) {\r\n window.location.assign(newUrl);\r\n }\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onAdvancedSearch.name, e));\r\n }\r\n };\r\n\r\n private onAdvancedSearch = (): void => {\r\n try {\r\n const {\r\n advancedSearchSelected\r\n } = this.state;\r\n\r\n if (advancedSearchSelected.campusId\r\n || advancedSearchSelected.classLevel\r\n || advancedSearchSelected.college\r\n || advancedSearchSelected.creditType\r\n || advancedSearchSelected.curriculum\r\n || advancedSearchSelected.department\r\n || advancedSearchSelected.endDate\r\n || advancedSearchSelected.endTime\r\n || advancedSearchSelected.eventId\r\n || advancedSearchSelected.eventSubType\r\n || advancedSearchSelected.eventType\r\n || advancedSearchSelected.generalEd\r\n || advancedSearchSelected.generalEd\r\n || advancedSearchSelected.instructorId\r\n || advancedSearchSelected.keywords\r\n || advancedSearchSelected.meeting\r\n || advancedSearchSelected.nonTradProgram\r\n || advancedSearchSelected.period\r\n || advancedSearchSelected.population\r\n || advancedSearchSelected.program\r\n || advancedSearchSelected.session\r\n || advancedSearchSelected.startDate\r\n || advancedSearchSelected.startTime\r\n || advancedSearchSelected.status\r\n || advancedSearchSelected.academicTerm\r\n || advancedSearchSelected.academicYear\r\n ) {\r\n this.setState({\r\n advancedSearchModalOpen: false,\r\n isEmptySearch: false\r\n }, this.setContent);\r\n }\r\n else {\r\n this.setState({\r\n advancedSearchModalOpen: false,\r\n isEmptySearch: true\r\n });\r\n }\r\n const newUrl = this.setQueryString('/Search/Section');\r\n if (newUrl) {\r\n window.location.assign(newUrl);\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onAdvancedSearch.name, e));\r\n }\r\n };\r\n\r\n private onAdvancedSearchTextFieldChange = (event: any): void => {\r\n try {\r\n const optionsSelected: IAdvancedSearch | undefined = this.state.advancedSearchSelected;\r\n const idSelected: string = event.target.id;\r\n if (optionsSelected) {\r\n optionsSelected[`${idSelected[3].toLowerCase()}${idSelected.substr(4, idSelected.length - 4)}`] = event.target.value;\r\n this.setState({\r\n advancedSearchSelected: optionsSelected\r\n });\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onAdvancedSearchTextFieldChange.name, e));\r\n }\r\n };\r\n\r\n // #region Pagination\r\n private getRowsPerPageOptions = (maxValue: number): number[] => {\r\n const rowsPerPageOptions: number[] = [];\r\n try {\r\n this.rowsPerPageOptions.forEach(option => {\r\n if (option < maxValue) {\r\n rowsPerPageOptions.push(option);\r\n }\r\n });\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.getRowsPerPageOptions.name, e));\r\n }\r\n return rowsPerPageOptions;\r\n };\r\n\r\n private onChangePage = (_event: any, pageNumber: number): void => {\r\n try {\r\n this.preservePage = true;\r\n this.preserveRowsPerPage = true;\r\n\r\n this.setState({\r\n page: pageNumber\r\n }, this.setContent);\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onChangePage.name, e));\r\n }\r\n };\r\n\r\n private onChangeRowsPerPage = (event: any): void => {\r\n try {\r\n this.setState({\r\n page: 0,\r\n rowsPerPage: Number(event.target.value)\r\n });\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onChangeRowsPerPage.name, e));\r\n }\r\n };\r\n // #endregion Pagination\r\n\r\n private onViewSectionDetails = (event: React.MouseEvent): void => {\r\n try {\r\n const id: number = Number(event.currentTarget.dataset.id);\r\n LayoutActions.showPageLoader();\r\n RequestsSection.getSectionAnonymous(id, this.resolveGetSection, this.logError);\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onViewSectionDetails.name, e));\r\n }\r\n };\r\n\r\n private onCloseSectionModal = (): void => {\r\n try {\r\n this.setState({\r\n sectionDetail: undefined,\r\n sectionModalOpen: false\r\n });\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onCloseSectionModal.name, e));\r\n }\r\n };\r\n\r\n private onCloseShareSearchModal = (): void => {\r\n try {\r\n this.setState({\r\n openShareSearchCourseModal: false,\r\n urlToShare: undefined\r\n });\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onCloseShareSearchModal.name, e));\r\n }\r\n };\r\n\r\n private onShareSearch = (): void => {\r\n try {\r\n const {\r\n advancedSearchSelected\r\n } = this.state;\r\n\r\n let urlLink: string | undefined;\r\n urlLink = `${window.location.origin}${Constants.webUrl}/Search/Section/Share?`;\r\n\r\n for (const field in advancedSearchSelected) {\r\n if (advancedSearchSelected[field]\r\n && field !== 'registrationtype'\r\n && field !== 'endDateKey'\r\n && field !== 'startDateKey'\r\n ) {\r\n urlLink = `${urlLink}&${field}=${encodeURIComponent(advancedSearchSelected[field])}`;\r\n }\r\n }\r\n this.setState({\r\n openShareSearchCourseModal: true,\r\n urlToShare: urlLink\r\n });\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onShareSearch.name, e));\r\n }\r\n };\r\n\r\n private onClearCourseCode = (): void => {\r\n try {\r\n const {\r\n advancedSearchSelected\r\n } = this.state;\r\n\r\n if (advancedSearchSelected) {\r\n advancedSearchSelected.eventId = '';\r\n }\r\n\r\n this.setState({\r\n advancedSearchSelected\r\n });\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onClearCourseCode.name, e));\r\n }\r\n };\r\n\r\n private onClearKeywords = (): void => {\r\n try {\r\n const {\r\n advancedSearchSelected\r\n } = this.state;\r\n\r\n if (advancedSearchSelected) {\r\n advancedSearchSelected.keywords = '';\r\n }\r\n\r\n this.setState({\r\n advancedSearchSelected\r\n });\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onClearKeywords.name, e));\r\n }\r\n };\r\n // #endregion Functions\r\n\r\n // #region Error Functions\r\n private logError(logData: ILogData): void {\r\n LayoutActions.setLogData(logData);\r\n }\r\n\r\n private redirectError(code: number): void {\r\n LayoutActions.setRedirectCode(code);\r\n }\r\n\r\n private showError(message?: string): void {\r\n LayoutActions.setAlert({ message: message, messageType: ResultType.error } as IAlert);\r\n }\r\n\r\n private setQueryString = (pageUrl: string): string => {\r\n try {\r\n const {\r\n advancedSearchSelected\r\n } = this.state;\r\n\r\n let urlLink: string = '';\r\n urlLink = `${window.location.origin}${Constants.webUrl}${pageUrl}?`;\r\n\r\n for (const field in advancedSearchSelected) {\r\n if (advancedSearchSelected[field]\r\n && field !== 'registrationtype'\r\n && field !== 'endDateKey'\r\n && field !== 'startDateKey'\r\n ) {\r\n urlLink = `${urlLink}&${field}=${encodeURIComponent(advancedSearchSelected[field])}`;\r\n }\r\n }\r\n return urlLink;\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.onShareSearch.name, e));\r\n return '';\r\n }\r\n };\r\n // #endregion Error Functions\r\n\r\n // #region Resolvers\r\n private resolveLayoutReady = (): void => {\r\n try {\r\n const {\r\n resources\r\n } = this.state;\r\n\r\n if (resources) {\r\n document.title = resources.lblPageTitle;\r\n RequestsCourses.getAdvancedSearchOptions(this.resolveGetAdvancedSearchOptions, this.logError);\r\n }\r\n else {\r\n this.logError(LogData.noResources(this.resolveLayoutReady.name));\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.resolveLayoutReady.name, e));\r\n }\r\n };\r\n\r\n private resolveGetAdvancedSearchOptions = (json: string): void => {\r\n try {\r\n const result: IJsonResult = JSON.parse(json);\r\n if (result.status) {\r\n const {\r\n advancedSearchSelected,\r\n resources\r\n } = this.state;\r\n\r\n const advancedSearchOptions: ISectionSearchOption = result.data;\r\n if (resources && advancedSearchOptions) {\r\n if (advancedSearchOptions.status) {\r\n advancedSearchOptions.status[0].description = resources.advancedSearchModal.lblOpen;\r\n advancedSearchOptions.status[1].description = resources.advancedSearchModal.lblClosed;\r\n advancedSearchOptions.status[2].description = resources.advancedSearchModal.lblWaitlist;\r\n }\r\n }\r\n\r\n // #region Set Viewbag\r\n advancedSearchSelected.eventId = this.eventId;\r\n advancedSearchSelected.instructorId = this.instructorId;\r\n advancedSearchSelected.campusId = this.campusId;\r\n advancedSearchSelected.classLevel = this.classLevel;\r\n advancedSearchSelected.college = this.college;\r\n advancedSearchSelected.creditType = this.creditType;\r\n advancedSearchSelected.curriculum = this.curriculum;\r\n advancedSearchSelected.department = this.department;\r\n advancedSearchSelected.endDate = this.endDate;\r\n advancedSearchSelected.endTime = this.endTime;\r\n advancedSearchSelected.eventSubType = this.eventSubType;\r\n advancedSearchSelected.eventType = this.eventType;\r\n advancedSearchSelected.generalEd = this.generalEd;\r\n advancedSearchSelected.keywords = this.keywords;\r\n advancedSearchSelected.meeting = this.meeting;\r\n advancedSearchSelected.nonTradProgram = this.nonTradProgram;\r\n advancedSearchSelected.period = this.period;\r\n advancedSearchSelected.population = this.population;\r\n advancedSearchSelected.program = this.program;\r\n advancedSearchSelected.session = this.session;\r\n advancedSearchSelected.startDate = this.startDate;\r\n advancedSearchSelected.startTime = this.startTime;\r\n advancedSearchSelected.status = this.status;\r\n advancedSearchSelected.academicTerm = this.academicTerm;\r\n advancedSearchSelected.academicYear = this.academicYear;\r\n // #endregion Set Viewbag\r\n\r\n this.setState({\r\n advancedSearchOptions,\r\n advancedSearchSelected\r\n }, () => {\r\n if (this.eventId\r\n || this.instructorId\r\n || this.campusId\r\n || this.classLevel\r\n || this.college\r\n || this.creditType\r\n || this.curriculum\r\n || this.department\r\n || this.endDate\r\n || this.endTime\r\n || this.eventSubType\r\n || this.eventType\r\n || this.generalEd\r\n || this.keywords\r\n || this.meeting\r\n || this.nonTradProgram\r\n || this.period\r\n || this.population\r\n || this.program\r\n || this.session\r\n || this.startDate\r\n || this.startTime\r\n || this.status\r\n || this.academicTerm\r\n || this.academicYear\r\n ) {\r\n this.setContent();\r\n }\r\n else {\r\n LayoutActions.setLoading(false);\r\n }\r\n });\r\n }\r\n else if (result.code) {\r\n this.redirectError(result.code);\r\n }\r\n else if (result.log) {\r\n this.showError();\r\n }\r\n else {\r\n this.logError(LogData.badJsonResult(this.resolveGetAdvancedSearchOptions.name));\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.resolveGetAdvancedSearchOptions.name, e));\r\n }\r\n };\r\n\r\n private resolveGetSections = (json: string): void => {\r\n try {\r\n const result: IJsonResult = JSON.parse(json);\r\n if (result.status) {\r\n const sections: ISection[] | undefined = result.data.sections;\r\n const overallCount: number = result.data.overallCount ? result.data.overallCount : 0;\r\n const page: number = this.preservePage ? this.state.page : 0;\r\n const rowsPerPageOptions: number[] = this.getRowsPerPageOptions(overallCount);\r\n const rowsPerPage: number = this.preserveRowsPerPage ? this.state.rowsPerPage : this.rowsPerPageOptions[0];\r\n this.setState({\r\n advancedSearchModalOpen: false,\r\n isNoResults: !sections,\r\n overallCount: overallCount,\r\n page: page,\r\n rowsPerPage: rowsPerPage,\r\n rowsPerPageOptions: rowsPerPageOptions,\r\n sections: sections\r\n }, () => LayoutActions.setLoading(false));\r\n }\r\n else if (result.code) {\r\n this.redirectError(result.code);\r\n }\r\n else if (result.log) {\r\n this.showError();\r\n }\r\n else {\r\n this.logError(LogData.badJsonResult(this.resolveGetSections.name));\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.resolveGetSections.name, e));\r\n }\r\n };\r\n\r\n private resolveGetSection = (json: string): void => {\r\n try {\r\n const result: IJsonResult = JSON.parse(json);\r\n if (result.status) {\r\n this.setState({\r\n sectionDetail: result.data,\r\n sectionModalOpen: true\r\n }, () => {\r\n LayoutActions.setLoading(false);\r\n });\r\n }\r\n else if (result.code) {\r\n this.redirectError(result.code);\r\n }\r\n else if (result.log) {\r\n this.showError();\r\n }\r\n else {\r\n this.logError(LogData.badJsonResult(this.resolveGetSection.name));\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.resolveGetSection.name, e));\r\n }\r\n };\r\n // #endregion Resolvers\r\n\r\n // #region State Management Events\r\n private onLayoutReady = (): void => {\r\n const ready: boolean = LayoutStore.getLayoutReady();\r\n const resources: ISectionRes | undefined = LayoutStore.getResources();\r\n const cultures: ICultures = LayoutStore.getCultures();\r\n\r\n if (ready) {\r\n this.setState({\r\n cultures: cultures,\r\n resources: resources\r\n }, this.resolveLayoutReady);\r\n }\r\n else {\r\n this.setState({\r\n componentError: true\r\n }, () => this.logError(LogData.layoutNoReady(this.onLayoutReady.name)));\r\n }\r\n };\r\n // #endregion State Management Events\r\n\r\n // #region Lifecycle\r\n public componentWillUnmount(): void {\r\n LayoutStore.removeLayoutReadyListener(this.onLayoutReady);\r\n }\r\n\r\n public componentDidCatch(error, info): void {\r\n this.setState({\r\n componentError: true\r\n }, () => {\r\n this.logError(LogData.fromComponentException(this.componentDidCatch.name, error, info));\r\n this.redirectError(500);\r\n });\r\n }\r\n\r\n public componentDidMount(): void {\r\n try {\r\n const hdnEventId: HTMLInputElement | undefined =\r\n document.getElementById('hdnEventId') as HTMLInputElement;\r\n if (hdnEventId) {\r\n this.eventId = String(hdnEventId.value);\r\n hdnEventId.remove();\r\n }\r\n const hdnInstructorId: HTMLInputElement | undefined =\r\n document.getElementById('hdnInstructorId') as HTMLInputElement;\r\n if (hdnInstructorId) {\r\n this.instructorId = String(hdnInstructorId.value);\r\n hdnInstructorId.remove();\r\n }\r\n const hdnCampusId: HTMLInputElement | undefined =\r\n document.getElementById('hdnCampusId') as HTMLInputElement;\r\n if (hdnCampusId) {\r\n this.campusId = String(hdnCampusId.value);\r\n hdnCampusId.remove();\r\n }\r\n const hdnClassLevel: HTMLInputElement | undefined =\r\n document.getElementById('hdnClassLevel') as HTMLInputElement;\r\n if (hdnClassLevel) {\r\n this.classLevel = String(hdnClassLevel.value);\r\n hdnClassLevel.remove();\r\n }\r\n const hdnCollege: HTMLInputElement | undefined =\r\n document.getElementById('hdnCollege') as HTMLInputElement;\r\n if (hdnCollege) {\r\n this.college = String(hdnCollege.value);\r\n hdnCollege.remove();\r\n }\r\n const hdnCreditType: HTMLInputElement | undefined =\r\n document.getElementById('hdnCreditType') as HTMLInputElement;\r\n if (hdnCreditType) {\r\n this.creditType = String(hdnCreditType.value);\r\n hdnCreditType.remove();\r\n }\r\n const hdnCurriculum: HTMLInputElement | undefined =\r\n document.getElementById('hdnCurriculum') as HTMLInputElement;\r\n if (hdnCurriculum) {\r\n this.curriculum = String(hdnCurriculum.value);\r\n hdnCurriculum.remove();\r\n }\r\n const hdnDepartment: HTMLInputElement | undefined =\r\n document.getElementById('hdnDepartment') as HTMLInputElement;\r\n if (hdnDepartment) {\r\n this.department = String(hdnDepartment.value);\r\n hdnDepartment.remove();\r\n }\r\n const hdnEndDate: HTMLInputElement | undefined =\r\n document.getElementById('hdnEndDate') as HTMLInputElement;\r\n if (hdnEndDate) {\r\n this.endDate = String(hdnEndDate.value);\r\n hdnEndDate.remove();\r\n }\r\n const hdnEndTime: HTMLInputElement | undefined =\r\n document.getElementById('hdnEndTime') as HTMLInputElement;\r\n if (hdnEndTime) {\r\n this.endTime = String(hdnEndTime.value);\r\n hdnEndTime.remove();\r\n }\r\n const hdnEventSubType: HTMLInputElement | undefined =\r\n document.getElementById('hdnEventSubType') as HTMLInputElement;\r\n if (hdnEventSubType) {\r\n this.eventSubType = String(hdnEventSubType.value);\r\n hdnEventSubType.remove();\r\n }\r\n const hdnEventType: HTMLInputElement | undefined =\r\n document.getElementById('hdnEventType') as HTMLInputElement;\r\n if (hdnEventType) {\r\n this.eventType = String(hdnEventType.value);\r\n hdnEventType.remove();\r\n }\r\n const hdnGeneralEd: HTMLInputElement | undefined =\r\n document.getElementById('hdnGeneralEd') as HTMLInputElement;\r\n if (hdnGeneralEd) {\r\n this.generalEd = String(hdnGeneralEd.value);\r\n hdnGeneralEd.remove();\r\n }\r\n const hdnKeywords: HTMLInputElement | undefined =\r\n document.getElementById('hdnKeywords') as HTMLInputElement;\r\n if (hdnKeywords) {\r\n this.keywords = String(hdnKeywords.value);\r\n hdnKeywords.remove();\r\n }\r\n const hdnMeeting: HTMLInputElement | undefined =\r\n document.getElementById('hdnMeeting') as HTMLInputElement;\r\n if (hdnMeeting) {\r\n this.meeting = String(hdnMeeting.value);\r\n hdnMeeting.remove();\r\n }\r\n const hdnNonTradProgram: HTMLInputElement | undefined =\r\n document.getElementById('hdnNonTradProgram') as HTMLInputElement;\r\n if (hdnNonTradProgram) {\r\n this.nonTradProgram = String(hdnNonTradProgram.value);\r\n hdnNonTradProgram.remove();\r\n }\r\n const hdnPeriod: HTMLInputElement | undefined =\r\n document.getElementById('hdnPeriod') as HTMLInputElement;\r\n if (hdnPeriod) {\r\n this.period = String(hdnPeriod.value);\r\n hdnPeriod.remove();\r\n }\r\n const hdnYear: HTMLInputElement | undefined =\r\n document.getElementById('hdnYear') as HTMLInputElement;\r\n if (hdnYear) {\r\n this.academicYear = String(hdnYear.value);\r\n hdnYear.remove();\r\n }\r\n const hdnTerm: HTMLInputElement | undefined =\r\n document.getElementById('hdnTerm') as HTMLInputElement;\r\n if (hdnTerm) {\r\n this.academicTerm = String(hdnTerm.value);\r\n hdnTerm.remove();\r\n }\r\n const hdnPopulation: HTMLInputElement | undefined =\r\n document.getElementById('hdnPopulation') as HTMLInputElement;\r\n if (hdnPopulation) {\r\n this.population = String(hdnPopulation.value);\r\n hdnPopulation.remove();\r\n }\r\n const hdnProgram: HTMLInputElement | undefined =\r\n document.getElementById('hdnProgram') as HTMLInputElement;\r\n if (hdnProgram) {\r\n this.program = String(hdnProgram.value);\r\n hdnProgram.remove();\r\n }\r\n const hdnSession: HTMLInputElement | undefined =\r\n document.getElementById('hdnSession') as HTMLInputElement;\r\n if (hdnSession) {\r\n this.session = String(hdnSession.value);\r\n hdnSession.remove();\r\n }\r\n const hdnStartDate: HTMLInputElement | undefined =\r\n document.getElementById('hdnStartDate') as HTMLInputElement;\r\n if (hdnStartDate) {\r\n this.startDate = String(hdnStartDate.value);\r\n hdnStartDate.remove();\r\n }\r\n const hdnStartTime: HTMLInputElement | undefined =\r\n document.getElementById('hdnStartTime') as HTMLInputElement;\r\n if (hdnStartTime) {\r\n this.startTime = String(hdnStartTime.value);\r\n hdnStartTime.remove();\r\n }\r\n const hdnStatus: HTMLInputElement | undefined =\r\n document.getElementById('hdnStatus') as HTMLInputElement;\r\n if (hdnStatus) {\r\n this.status = String(hdnStatus.value);\r\n hdnStatus.remove();\r\n }\r\n if (this.period === '' && this.academicYear && this.academicTerm) {\r\n this.period = this.academicYear + '/' + this.academicTerm;\r\n }\r\n }\r\n catch (e) {\r\n this.logError(LogData.fromException(this.componentDidMount.name, e));\r\n }\r\n }\r\n // #endregion Lifecycle\r\n\r\n public render(): JSX.Element {\r\n const {\r\n advancedSearchModalOpen,\r\n advancedSearchOptions,\r\n advancedSearchSelected,\r\n componentError,\r\n cultures,\r\n isEmptySearch,\r\n isNoResults,\r\n openShareSearchCourseModal,\r\n overallCount,\r\n sectionDetail,\r\n sectionModalOpen,\r\n sections,\r\n urlToShare,\r\n\r\n // #region Pagination\r\n page,\r\n rowsPerPage,\r\n // #endregion Pagination\r\n\r\n resources\r\n } = this.state;\r\n\r\n const {\r\n classes,\r\n width\r\n } = this.props;\r\n\r\n let contentPage: JSX.Element | undefined;\r\n if (!componentError && resources) {\r\n\r\n const emptyOption: IDropDownOption = {\r\n description: resources.lblSelect,\r\n value: ''\r\n };\r\n\r\n // #region Sections\r\n let firstRow: number = page * rowsPerPage + 1;\r\n let lastRow: number = page * rowsPerPage + rowsPerPage;\r\n const totalRows: number = overallCount;\r\n if (lastRow > totalRows) {\r\n lastRow = totalRows;\r\n }\r\n if (firstRow > lastRow) {\r\n firstRow = lastRow;\r\n }\r\n\r\n let sectionsList: JSX.Element | undefined;\r\n if (sections && sections.length > 0) {\r\n sectionsList = (\r\n <>\r\n \r\n \r\n \r\n {Format.toString(resources.formatResultsShowing,\r\n [firstRow.toLocaleString(cultures.numberCulture),\r\n lastRow.toLocaleString(cultures.numberCulture),\r\n totalRows.toLocaleString(cultures.numberCulture)\r\n ])\r\n }\r\n
\r\n
\r\n
\r\n {sections.map((section, sectionIndex) => (\r\n \r\n ))}\r\n {rowsPerPage > 0 ? (\r\n \r\n \r\n \r\n \r\n \r\n ) : undefined}\r\n \r\n );\r\n }\r\n else if (isEmptySearch) {\r\n sectionsList = (\r\n \r\n );\r\n } else if (isNoResults) {\r\n sectionsList = (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n // #endregion Sections\r\n\r\n // #region Advanced Search Modal\r\n let sectionsOptionsModal: JSX.Element | undefined;\r\n if (advancedSearchModalOpen && advancedSearchOptions) {\r\n sectionsOptionsModal = (\r\n \r\n );\r\n }\r\n // #endregion Advanced Search Modal\r\n\r\n // #region Section Detail modal\r\n let sectionModal: JSX.Element | undefined;\r\n if (sectionDetail) {\r\n sectionModal = (\r\n \r\n );\r\n }\r\n // #endregion Section Detail modal\r\n\r\n // #region Share Search\r\n let shareSection: JSX.Element | undefined;\r\n if (urlToShare) {\r\n shareSection = (\r\n \r\n );\r\n }\r\n // #endregion Share Search\r\n\r\n contentPage = (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {resources.lblAdvancedSearch}\r\n \r\n \r\n \r\n \r\n {resources.lblNewSearch}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {sectionsList}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {resources.lblFilters}\r\n \r\n \r\n \r\n )}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {resources.lblShareSearch}\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {resources.btnSearch}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {sectionsOptionsModal}\r\n {sectionModal}\r\n {shareSection}\r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n {contentPage}\r\n \r\n );\r\n }\r\n}\r\n\r\nconst SectionViewWithLayout = withLayout(withStyles(styles)(withWidth()(SectionView)));\r\n// #endregion Component\r\n\r\n// RenderDOM: Component\r\nReactDOM.render(, document.getElementById('root'));","var map = {\n\t\"./af\": 42786,\n\t\"./af.js\": 42786,\n\t\"./ar\": 30867,\n\t\"./ar-dz\": 14130,\n\t\"./ar-dz.js\": 14130,\n\t\"./ar-kw\": 96135,\n\t\"./ar-kw.js\": 96135,\n\t\"./ar-ly\": 56440,\n\t\"./ar-ly.js\": 56440,\n\t\"./ar-ma\": 47702,\n\t\"./ar-ma.js\": 47702,\n\t\"./ar-sa\": 16040,\n\t\"./ar-sa.js\": 16040,\n\t\"./ar-tn\": 37100,\n\t\"./ar-tn.js\": 37100,\n\t\"./ar.js\": 30867,\n\t\"./az\": 31083,\n\t\"./az.js\": 31083,\n\t\"./be\": 9808,\n\t\"./be.js\": 9808,\n\t\"./bg\": 68338,\n\t\"./bg.js\": 68338,\n\t\"./bm\": 67438,\n\t\"./bm.js\": 67438,\n\t\"./bn\": 8905,\n\t\"./bn.js\": 8905,\n\t\"./bo\": 11560,\n\t\"./bo.js\": 11560,\n\t\"./br\": 1278,\n\t\"./br.js\": 1278,\n\t\"./bs\": 80622,\n\t\"./bs.js\": 80622,\n\t\"./ca\": 2468,\n\t\"./ca.js\": 2468,\n\t\"./cs\": 5822,\n\t\"./cs.js\": 5822,\n\t\"./cv\": 50877,\n\t\"./cv.js\": 50877,\n\t\"./cy\": 47373,\n\t\"./cy.js\": 47373,\n\t\"./da\": 24780,\n\t\"./da.js\": 24780,\n\t\"./de\": 59740,\n\t\"./de-at\": 60217,\n\t\"./de-at.js\": 60217,\n\t\"./de-ch\": 60894,\n\t\"./de-ch.js\": 60894,\n\t\"./de.js\": 59740,\n\t\"./dv\": 5300,\n\t\"./dv.js\": 5300,\n\t\"./el\": 50837,\n\t\"./el.js\": 50837,\n\t\"./en-au\": 78348,\n\t\"./en-au.js\": 78348,\n\t\"./en-ca\": 77925,\n\t\"./en-ca.js\": 77925,\n\t\"./en-gb\": 22243,\n\t\"./en-gb.js\": 22243,\n\t\"./en-ie\": 46436,\n\t\"./en-ie.js\": 46436,\n\t\"./en-il\": 47207,\n\t\"./en-il.js\": 47207,\n\t\"./en-in\": 44175,\n\t\"./en-in.js\": 44175,\n\t\"./en-nz\": 76319,\n\t\"./en-nz.js\": 76319,\n\t\"./en-sg\": 31662,\n\t\"./en-sg.js\": 31662,\n\t\"./eo\": 92915,\n\t\"./eo.js\": 92915,\n\t\"./es\": 55655,\n\t\"./es-do\": 55251,\n\t\"./es-do.js\": 55251,\n\t\"./es-us\": 71146,\n\t\"./es-us.js\": 71146,\n\t\"./es.js\": 55655,\n\t\"./et\": 5603,\n\t\"./et.js\": 5603,\n\t\"./eu\": 77763,\n\t\"./eu.js\": 77763,\n\t\"./fa\": 76959,\n\t\"./fa.js\": 76959,\n\t\"./fi\": 11897,\n\t\"./fi.js\": 11897,\n\t\"./fil\": 42549,\n\t\"./fil.js\": 42549,\n\t\"./fo\": 94694,\n\t\"./fo.js\": 94694,\n\t\"./fr\": 94470,\n\t\"./fr-ca\": 63049,\n\t\"./fr-ca.js\": 63049,\n\t\"./fr-ch\": 52330,\n\t\"./fr-ch.js\": 52330,\n\t\"./fr.js\": 94470,\n\t\"./fy\": 5044,\n\t\"./fy.js\": 5044,\n\t\"./ga\": 29295,\n\t\"./ga.js\": 29295,\n\t\"./gd\": 2101,\n\t\"./gd.js\": 2101,\n\t\"./gl\": 38794,\n\t\"./gl.js\": 38794,\n\t\"./gom-deva\": 27884,\n\t\"./gom-deva.js\": 27884,\n\t\"./gom-latn\": 23168,\n\t\"./gom-latn.js\": 23168,\n\t\"./gu\": 95349,\n\t\"./gu.js\": 95349,\n\t\"./he\": 24206,\n\t\"./he.js\": 24206,\n\t\"./hi\": 30094,\n\t\"./hi.js\": 30094,\n\t\"./hr\": 30316,\n\t\"./hr.js\": 30316,\n\t\"./hu\": 22138,\n\t\"./hu.js\": 22138,\n\t\"./hy-am\": 11423,\n\t\"./hy-am.js\": 11423,\n\t\"./id\": 29218,\n\t\"./id.js\": 29218,\n\t\"./is\": 90135,\n\t\"./is.js\": 90135,\n\t\"./it\": 90626,\n\t\"./it-ch\": 63120,\n\t\"./it-ch.js\": 63120,\n\t\"./it.js\": 90626,\n\t\"./ja\": 39183,\n\t\"./ja.js\": 39183,\n\t\"./jv\": 24286,\n\t\"./jv.js\": 24286,\n\t\"./ka\": 12105,\n\t\"./ka.js\": 12105,\n\t\"./kk\": 47772,\n\t\"./kk.js\": 47772,\n\t\"./km\": 18758,\n\t\"./km.js\": 18758,\n\t\"./kn\": 79282,\n\t\"./kn.js\": 79282,\n\t\"./ko\": 33730,\n\t\"./ko.js\": 33730,\n\t\"./ku\": 1408,\n\t\"./ku.js\": 1408,\n\t\"./ky\": 33291,\n\t\"./ky.js\": 33291,\n\t\"./lb\": 36841,\n\t\"./lb.js\": 36841,\n\t\"./lo\": 55466,\n\t\"./lo.js\": 55466,\n\t\"./lt\": 57010,\n\t\"./lt.js\": 57010,\n\t\"./lv\": 37595,\n\t\"./lv.js\": 37595,\n\t\"./me\": 39861,\n\t\"./me.js\": 39861,\n\t\"./mi\": 35493,\n\t\"./mi.js\": 35493,\n\t\"./mk\": 95966,\n\t\"./mk.js\": 95966,\n\t\"./ml\": 87341,\n\t\"./ml.js\": 87341,\n\t\"./mn\": 5115,\n\t\"./mn.js\": 5115,\n\t\"./mr\": 10370,\n\t\"./mr.js\": 10370,\n\t\"./ms\": 9847,\n\t\"./ms-my\": 41237,\n\t\"./ms-my.js\": 41237,\n\t\"./ms.js\": 9847,\n\t\"./mt\": 72126,\n\t\"./mt.js\": 72126,\n\t\"./my\": 56165,\n\t\"./my.js\": 56165,\n\t\"./nb\": 64924,\n\t\"./nb.js\": 64924,\n\t\"./ne\": 16744,\n\t\"./ne.js\": 16744,\n\t\"./nl\": 93901,\n\t\"./nl-be\": 59814,\n\t\"./nl-be.js\": 59814,\n\t\"./nl.js\": 93901,\n\t\"./nn\": 83877,\n\t\"./nn.js\": 83877,\n\t\"./oc-lnc\": 92135,\n\t\"./oc-lnc.js\": 92135,\n\t\"./pa-in\": 15858,\n\t\"./pa-in.js\": 15858,\n\t\"./pl\": 64495,\n\t\"./pl.js\": 64495,\n\t\"./pt\": 89520,\n\t\"./pt-br\": 57971,\n\t\"./pt-br.js\": 57971,\n\t\"./pt.js\": 89520,\n\t\"./ro\": 96459,\n\t\"./ro.js\": 96459,\n\t\"./ru\": 21793,\n\t\"./ru.js\": 21793,\n\t\"./sd\": 40950,\n\t\"./sd.js\": 40950,\n\t\"./se\": 10490,\n\t\"./se.js\": 10490,\n\t\"./si\": 90124,\n\t\"./si.js\": 90124,\n\t\"./sk\": 64249,\n\t\"./sk.js\": 64249,\n\t\"./sl\": 14985,\n\t\"./sl.js\": 14985,\n\t\"./sq\": 51104,\n\t\"./sq.js\": 51104,\n\t\"./sr\": 49131,\n\t\"./sr-cyrl\": 79915,\n\t\"./sr-cyrl.js\": 79915,\n\t\"./sr.js\": 49131,\n\t\"./ss\": 85893,\n\t\"./ss.js\": 85893,\n\t\"./sv\": 98760,\n\t\"./sv.js\": 98760,\n\t\"./sw\": 91172,\n\t\"./sw.js\": 91172,\n\t\"./ta\": 27333,\n\t\"./ta.js\": 27333,\n\t\"./te\": 23110,\n\t\"./te.js\": 23110,\n\t\"./tet\": 52095,\n\t\"./tet.js\": 52095,\n\t\"./tg\": 27321,\n\t\"./tg.js\": 27321,\n\t\"./th\": 9041,\n\t\"./th.js\": 9041,\n\t\"./tl-ph\": 75768,\n\t\"./tl-ph.js\": 75768,\n\t\"./tlh\": 89444,\n\t\"./tlh.js\": 89444,\n\t\"./tr\": 72397,\n\t\"./tr.js\": 72397,\n\t\"./tzl\": 28254,\n\t\"./tzl.js\": 28254,\n\t\"./tzm\": 51106,\n\t\"./tzm-latn\": 30699,\n\t\"./tzm-latn.js\": 30699,\n\t\"./tzm.js\": 51106,\n\t\"./ug-cn\": 9288,\n\t\"./ug-cn.js\": 9288,\n\t\"./uk\": 67691,\n\t\"./uk.js\": 67691,\n\t\"./ur\": 13795,\n\t\"./ur.js\": 13795,\n\t\"./uz\": 6791,\n\t\"./uz-latn\": 60588,\n\t\"./uz-latn.js\": 60588,\n\t\"./uz.js\": 6791,\n\t\"./vi\": 65666,\n\t\"./vi.js\": 65666,\n\t\"./x-pseudo\": 14378,\n\t\"./x-pseudo.js\": 14378,\n\t\"./yo\": 75805,\n\t\"./yo.js\": 75805,\n\t\"./zh-cn\": 83839,\n\t\"./zh-cn.js\": 83839,\n\t\"./zh-hk\": 55726,\n\t\"./zh-hk.js\": 55726,\n\t\"./zh-mo\": 99807,\n\t\"./zh-mo.js\": 99807,\n\t\"./zh-tw\": 74152,\n\t\"./zh-tw.js\": 74152\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 46700;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 469;","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t469: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tfor(moduleId in moreModules) {\n\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t}\n\t}\n\tif(runtime) var result = runtime(__webpack_require__);\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkIds[i]] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunk_powercampus_self_service\"] = self[\"webpackChunk_powercampus_self_service\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [846], () => (__webpack_require__(91644)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"sourceRoot":""}