{"version":3,"sources":["i18n.js","common/actions/userAccount/userActionType.js","common/reducers/userAccountReducer.js","common/reducers/loadingReducer.js","common/actions/school/schoolActionType.js","common/reducers/schoolReducer.js","common/actions/students/studentActionType.js","common/reducers/studentReducer.js","common/actions/checkin/checkinActionType.js","common/reducers/checkinReducer.js","common/actions/ads/adsActionType.js","common/reducers/adsReducer.js","common/reducers/index.js","common/store/configureStore.js","common/services/config.js","theme/Colors.js","helper/AppConstants.js","helper/utility.js","common/services/userAccount.js","common/services/students.js","common/services/school.js","common/services/checkin.js","common/services/ads.js","common/actions/userAccount/userAccountAction.js","components/CommonComponents/RegisterFooter.js","components/assets/registerImages/pmk-logo.svg","components/CommonComponents/RegisterHeader.js","components/assets/commonImages/googlePlayIcon.png","components/assets/commonImages/appStoreIcon.png","components/CommonComponents/RegisterWizard.js","components/CommonComponents/SubmitButton.js","components/CommonComponents/UserHeader.js","components/CommonComponents/UserFooter.js","components/assets/dashboard/settingsIcon.svg","common/reducers/selectors.js","common/actions/checkin/checkinAction.js","components/Checkin/CheckinQuestions.js","common/actions/students/studentAction.js","components/Checkin/SelectCheckInFor.js","components/Checkin/Checkin.js","components/Settings/NotificationsList.js","components/Settings/ViewProfile.js","components/Settings/ChangePassword.js","components/Settings/Setting.js","components/Settings/ContactSupport.js","components/assets/dashboard/empty-state.svg","components/Dashboard/NoKids.js","components/Dashboard/ChildCard.js","components/Dashboard/SchoolCard.js","components/Dashboard/Dashboard.js","components/Dashboard/DismissalTimes.js","common/actions/school/schoolAction.js","components/Dashboard/PriorAndFutureDelegations.js","components/Dashboard/ChildCardAnnounce.js","components/ChildManagement/DismissalHistory.js","components/assets/contacts/contact3.jpg","components/ChildManagement/MyKidView.js","components/ChildManagement/OtherKidView.js","components/ChildManagement/ChildManagement.js","components/assets/commonImages/successIllustration.svg","components/assets/commonImages/rejectedIcon.svg","components/assets/commonImages/verifiedIcon.svg","components/assets/commonImages/successChecked.svg","components/assets/commonImages/warningIcon.svg","components/assets/commonImages/cancelReviewIWarnIcon.svg","components/assets/commonImages/deleteIcon.svg","components/ChildManagement/AddContact.js","components/ChildManagement/ChangeDefaultPickup.js","components/ChildManagement/CreateMarkAbsent.js","components/ChildManagement/DismissalSelectHow.js","components/ChildManagement/FutureDelegation.js","components/ChildManagement/PickupSummaryView.js","components/UserAccount/Registration/RegisterName.js","components/UserAccount/Registration/RegisterEmail.js","components/assets/registerImages/verify-email.svg","components/assets/registerImages/email-verified.svg","components/UserAccount/Registration/ConfirmEmail.js","components/UserAccount/Registration/RegisterPhone.js","components/UserAccount/Registration/ConfirmPhone.js","components/UserAccount/Registration/RegisterPassword.js","components/assets/registerImages/successImage.svg","components/UserAccount/Registration/RegisterSuccess.js","components/assets/registerImages/parent-kid-car.svg","components/UserAccount/Registration/ChooseRole.js","components/UserAccount/Registration/RegisterSupport.js","components/ChildManagement/SelectContact.js","components/assets/contacts/contact1.jpg","components/ChildManagement/SelectWhen.js","components/ChildManagement/CancelPickup.js","components/ChildManagement/EarlyDismissal/EarlyDismissalPickup.js","components/ChildManagement/EarlyDismissal/CreateEarlyDismissal.js","components/assets/menus/pickupBlue.svg","components/ChildManagement/BackToSchool.js","components/ChildManagement/BackToSchoolKidList.js","components/ChildManagement/SelectRelationship.js","helper/uiUtility.js","components/CommonComponents/MainHeader.js","components/CommonComponents/MainFooter.js","components/Scanner/ScanBarCode.js","components/Help/HelpDetails.js","components/Help/HelpListing.js","components/CommonComponents/BootstrapModal.js","components/Ads/AdsView.js","common/actions/ads/adsAction.js","components/CommonComponents/LoadAds.js","components/CommonComponents/PrivateRoute.js","components/CommonComponents/TermsConditions.js","components/UserAccount/LandingPage/LandingPage.js","components/UserAccount/LandingPage/index.js","components/UserAccount/ForgotPassword/ForgotPassword.js","components/UserAccount/ForgotPassword/index.js","Error.js","Routes.js","App.js","index.js"],"names":["i18next","use","LanguageDetector","init","debug","fallbackLng","keySeparator","interpolation","escapeValue","resources","en","translations","translationEng","es","ns","defaultNS","START_REGISTARTION_START","START_REGISTARTION_SUCCESS","START_REGISTARTION_FAILED","START_REGISTARTION_CLEAR","CHECK_EMAIL_START","CHECK_EMAIL_SUCCESS","CHECK_EMAIL_FAILED","CHECK_EMAIL_CLEAR","SAVE_REGISTRATION_INFO","SAVE_REGISTRATION_CLEAR","VERIFIED_EMAIL_START","VERIFIED_EMAIL_SUCCESS","VERIFIED_EMAIL_FAILED","VERIFIED_EMAIL_CLEAR","ADD_PHONE_NUMBER_USER_START","ADD_PHONE_NUMBER_USER_SUCCESS","ADD_PHONE_NUMBER_USER_FAILED","ADD_PHONE_NUMBER_USER_CLEAR","RE_SEND_EMAIL_START","RE_SEND_EMAIL_SUCCESS","RE_SEND_EMAIL_FAILED","RE_SEND_EMAIL_CLEAR","VERIFY_OTP_START","VERIFY_OTP_SUCCESS","VERIFY_OTP_FAILED","VERIFY_OTP_CLEAR","RE_SEND_OTP_START","RE_SEND_OTP_SUCCESS","RE_SEND_OTP_FAILED","RE_SEND_OTP_CLEAR","GET_USER_INFO_START","GET_USER_INFO_SUCCESS","GET_USER_INFO_FAILED","GET_USER_INFO_CLEAR","COMPLETE_REGISTRATION_USER_START","COMPLETE_REGISTRATION_USER_SUCCESS","COMPLETE_REGISTRATION_USER_FAILED","COMPLETE_REGISTRATION_USER_CLEAR","LOGIN_USER_START","LOGIN_USER_SUCCESS","LOGIN_USER_FAILED","LOGIN_USER_CLEAR","LOGIN_REGISTERED_USER","COUNTRY_CODE_LIST_START","COUNTRY_CODE_LIST_SUCCESS","COUNTRY_CODE_LIST_FAILED","LOGOUT_USER","CHANGE_LOCALE_START","CHANGE_LOCALE_SUCCESS","CHANGE_LOCALE_FAILED","UPDATE_NAME_START","UPDATE_NAME_SUCCESS","UPDATE_NAME_FAILED","UPDATE_NAME_CLEAR","FORGOT_PASSWORD_START","FORGOT_PASSWORD_SUCCESS","FORGOT_PASSWORD_FAILED","FORGOT_PASSWORD_CLEAR","RAGISTRATION_VALID_START","RAGISTRATION_VALID_SUCCESS","RAGISTRATION_VALID_FAILED","UPDATE_PASSWORD_START","UPDATE_PASSWORD_SUCCESS","UPDATE_PASSWORD_FAILED","UPDATE_PASSWORD_CLEAR","GET_NOTIFICATIONS_START","GET_NOTIFICATIONS_SUCCESS","GET_NOTIFICATIONS_FAILED","GET_NOTIFICATIONS_CLEAR","SUBMIT_FEEDBACK_START","SUBMIT_FEEDBACK_SUCCESS","SUBMIT_FEEDBACK_FAILED","SUBMIT_FEEDBACK_CLEAR","UPDATE_DEVICE_TOKEN_START","UPDATE_DEVICE_TOKEN_SUCCESS","UPDATE_DEVICE_TOKEN_FAILED","UPDATE_DEVICE_TOKEN_CLEAR","GET_DELEGATES_START","GET_DELEGATES_SUCCESS","GET_DELEGATES_FAILED","GET_DELEGATES_CLEAR","APPROVED_DELEGATES_START","APPROVED_DELEGATES_SUCCESS","APPROVED_DELEGATES_FAILED","APPROVED_DELEGATES_CLEAR","APPROVED_DELEGATES_CHANGE_START","APPROVED_DELEGATES_CHANGE_SUCCESS","APPROVED_DELEGATES_CHANGE_FAILED","APPROVED_DELEGATES_CHANGE_CLEAR","DELEGATES_SET_DELETED_START","DELEGATES_SET_DELETED_SUCCESS","DELEGATES_SET_DELETED_FAILED","DELEGATES_SET_DELETED_CLEAR","GET_TOKEN_VALID_START","GET_TOKEN_VALID_SUCCESS","GET_TOKEN_VALID_FAILED","GET_TOKEN_VALID_CLEAR","GET_HELP_TOPICS_START","GET_HELP_TOPICS_SUCCESS","GET_HELP_TOPICS_FAILED","SEND_SUPPORT_REQUEST_START","SEND_SUPPORT_REQUEST_SUCCESS","SEND_SUPPORT_REQUEST_FAILED","SEND_SUPPORT_REQUEST_CLEAR","GET_NOTIFICATION_SETTING_START","GET_NOTIFICATION_SETTING_SUCCESS","GET_NOTIFICATION_SETTING_FAILED","GET_NOTIFICATION_SETTING_CLEAR","UPDATE_NOTIFICATION_SETTING_START","UPDATE_NOTIFICATION_SETTING_SUCCESS","UPDATE_NOTIFICATION_SETTING_FAILED","UPDATE_NOTIFICATION_SETTING_CLEAR","LOG_ERRORS_BROWSER_START","LOG_ERRORS_BROWSER_SUCCESS","LOG_ERRORS_BROWSER_FAILED","LOG_ERRORS_BROWSER_CLEAR","LOG_ERRORS_FILE_START","LOG_ERRORS_FILE_SUCCESS","LOG_ERRORS_FILE_FAILED","LOG_ERRORS_FILE_CLEAR","CONNECT_STUDENT_START","CONNECT_STUDENT_SUCCESS","CONNECT_STUDENT_FAILED","CONNECT_STUDENT_CLEAR","SET_ENVIRONMENT","SAVE_LAST_USED_TIMESTAMP","SAVE_LOCATION_PERMISSION","GET_FUTURE_ENTRIES_START","GET_FUTURE_ENTRIES_SUCCESS","GET_FUTURE_ENTRIES_FAILURE","GET_FUTURE_ENTRIES_CLEAR","TOGGLE_MODAL","HIDE_MODAL","TOGGLE_CHECKIN_QUEST_ANS","SET_HELPLIST","HIDE_ADS","SAVE_PHOTO","SAVE_ALL_PHOTOS","UPLOAD_DELEGATE_IMAGE_START","UPLOAD_DELEGATE_IMAGE_SUCCESS","UPLOAD_DELEGATE_IMAGE_FAILED","UPLOAD_DELEGATE_IMAGE_CLEAR","REQUEST_MANUAL_REVIEW_START","REQUEST_MANUAL_REVIEW_SUCCESS","REQUEST_MANUAL_REVIEW_FAILED","REQUEST_MANUAL_REVIEW_CLEAR","CANCEL_MANUAL_REVIEW_START","CANCEL_MANUAL_REVIEW_SUCCESS","CANCEL_MANUAL_REVIEW_FAILED","CANCEL_MANUAL_REVIEW_CLEAR","ACCOUNT_DELETE_START","ACCOUNT_DELETE_SUCCESS","ACCOUNT_DELETE_FAILED","ACCOUNT_DELETE_CLEAR","SAVE_TERMS_ACCEPTED","ASK_ME_LATER_SAVE","BACKTOSCHOOL_DATA_FILLED","INITIAL_STATE","checkEmailResponse","verifiedEmailResponse","addPhoneNumberResponse","reSendEmailResponse","verifyOtpResponse","reSendOtpResponse","getUserInfoResponse","completeRegisterUserResponse","registartionResponse","error","registeredEmail","registeredFirstname","registeredLastname","registeredPhone","registeredCountryCode","registeredCountryName","registeredPassword","registeredResultCache","verifiedEmail","userLoginInfo","countryCodeListing","chnageLocaleResponse","updateNameResponse","forgotPasswordResponse","forgotPasswordSuccess","logErrorsBrowserResponse","logErrorsFileResponse","studentConnectResponse","validRegistartionResponse","updatePasswordResponse","notifications","newFetchedNotifications","submitFeedbackResponse","getDelegatesResponse","approvedDelegatesResponse","approvedDelegatesChangeResponse","delegatesSetDeletedResponse","deviceTokenUpdateResponse","isTokenValidResponse","helpTopics","supportResponse","settingNotifications","updateNotificationSetting","environment","lastUsedTimestamp","Date","getTime","currentLocationPermission","futureEntries","modalLevelInfo","checkInQuestAnsView","setHelpListData","oldHelpInfo","displayAds","avatarsPaths","delegateImageUploadResponse","delegateImageUploadError","manualReviewRequest","manualReviewCancelResponse","deleteAccount","isTermsAccepted","isTermsAcceptedDate","nextAskMeLater","backToSchoolFilled","state","action","type","payload","firstName","lastName","response","concat","undefined","len","length","modalInfo","modalScreenName","push","modalClassName","params","pop","status","showSchoolChildrenList","stackType","screen","title","modalLevel","id","filename","console","log","matches","exec","requestName","requestState","GET_SCHOOL_PICKUP_TIME_START","GET_SCHOOL_PICKUP_TIME_SUCCESS","GET_SCHOOL_PICKUP_TIME_FAILED","GET_SCHOOL_PICKUP_TIME_CLEAR","GET_SCHOOL_PICKUP_MODE_START","GET_SCHOOL_PICKUP_MODE_SUCCESS","GET_SCHOOL_PICKUP_MODE_FAILED","GET_ABSENT_REASON_START","GET_ABSENT_REASON_SUCCESS","GET_ABSENT_REASON_FAILED","GET_SCHOOL_AFTER_SCHOOL_START","GET_SCHOOL_AFTER_SCHOOL_SUCCESS","GET_SCHOOL_AFTER_SCHOOL_FAILED","GET_HELP_START","GET_HELP_SUCCESS","GET_HELP_FAILED","GET_HELP_CLAER","schoolDismissalDetails","schoolPickupModeDetails","absentReasonResponse","getAfterSchoolRecord","helpRecord","GET_STUDENTS_START","GET_STUDENTS_SUCCESS","GET_STUDENTS_FAILED","GET_SCHOOL_INFO_START","GET_SCHOOL_INFO_SUCCESS","GET_SCHOOL_INFO_FAILED","GET_SCHOOL_AND_KIDS_DONE","GET_SCHOOL_STUDENT_INFO_CLEAR","GET_OTHER_KIDS_DONE","GET_BUS_ROUTE_START","GET_BUS_ROUTE_SUCCESS","GET_BUS_ROUTE_FAILED","GET_STUDENT_AFTER_SCHOOL_START","GET_STUDENT_AFTER_SCHOOL_SUCCESS","GET_STUDENT_AFTER_SCHOOL_FAILED","IS_ANNOUNCE_START","IS_ANNOUNCE_SUCCESS","IS_ANNOUNCE_FAILED","IS_ANNOUNCE_CLEAR","GET_DELEGATIONS_START","GET_DELEGATIONS_SUCCESS","GET_DELEGATIONS_FAILED","GET_DELEGATIONS_CLEAR","CHANGE_DEFAULT_PICKUP_MODE_START","CHANGE_DEFAULT_PICKUP_MODE_SUCCESS","CHANGE_DEFAULT_PICKUP_MODE_FAILED","CHANGE_DEFAULT_PICKUP_MODE_CLEAR","CANCEL_DELEGATION_START","CANCEL_DELEGATION_SUCCESS","CANCEL_DELEGATION_FAILED","CANCEL_DELEGATION_CLEAR","GET_OTHER_CHILDREN_START","GET_OTHER_CHILDREN_SUCCESS","GET_OTHER_CHILDREN_FAILED","GET_ABSENT_DATE_RANGE_START","GET_ABSENT_DATE_RANGE_SUCCESS","GET_ABSENT_DATE_RANGE_FAILED","GET_CALENDAR_DATE_RANGE_START","GET_CALENDAR_DATE_RANGE_SUCCESS","GET_CALENDAR_DATE_RANGE_FAILED","SAVE_ABSENTEE_START","SAVE_ABSENTEE_SUCCESS","SAVE_ABSENTEE_FAILED","SAVE_ABSENTEE_CLEAR","GET_PICKUP_ENTRIES_START","GET_PICKUP_ENTRIES_SUCCESS","GET_PICKUP_ENTRIES_FAILED","GET_PICKUP_ENTRIES_CLEAR","GET_ABSENT_CALENDAR_ENTRIES_RANGE_START","GET_ABSENT_CALENDAR_ENTRIES_RANGE_SUCCESS","GET_ABSENT_CALENDAR_ENTRIES_RANGE_FAILED","GET_ABSENT_CALENDAR_ENTRIES_RANGE_CLEAR","CHANGE_DELEGATION_START","CHANGE_DELEGATION_SUCCESS","CHANGE_DELEGATION_FAILED","CHANGE_DELEGATION_CLEAR","GET_PICKUP_ENTRIES_MONTH_START","GET_PICKUP_ENTRIES_MONTH_SUCCESS","GET_PICKUP_ENTRIES_MONTH_FAILED","GET_DELEGATE_LIST_START","GET_DELEGATE_LIST_SUCCESS","GET_DELEGATE_LIST_FAILED","GET_DEFAULT_DISMISSAL_START","GET_DEFAULT_DISMISSAL_SUCCESS","GET_DEFAULT_DISMISSAL_FAILED","GET_DEFAULT_DISMISSAL_CLEAR","CANCEL_ABSENTEE_START","CANCEL_ABSENTEE_SUCCESS","CANCEL_ABSENTEE_FAILED","CANCEL_ABSENTEE_CLEAR","GET_RELATED_DELEGATIONS_START","GET_RELATED_DELEGATIONS_SUCCESS","GET_RELATED_DELEGATIONS_FAILED","GET_RELATED_DELEGATIONS_CLEAR","CANCEL_MULTIPLE_DELEGATIONS_START","CANCEL_MULTIPLE_DELEGATIONS_SUCCESS","CANCEL_MULTIPLE_DELEGATIONS_FAILED","CANCEL_MULTIPLE_DELEGATIONS_CLEAR","GET_AVAILABLE_DISPATCH_START","GET_AVAILABLE_DISPATCH_SUCCESS","GET_AVAILABLE_DISPATCH_FAILED","GET_AVAILABLE_DISPATCH_CLEAR","SAVE_SELECTED_GAURDIAN_DETAILS_START","GET_DISMISSAL_HISTORY_START","GET_DISMISSAL_HISTORY_SUCCESS","GET_DISMISSAL_HISTORY_FAILED","GET_DISMISSAL_HISTORY_CLEAR","GET_POSITION_IN_LINE_START","GET_POSITION_IN_LINE_SUCCESS","GET_POSITION_IN_LINE_FAILED","GET_POSITION_IN_LINE_CLEAR","GET_DELEGATIONS_ENTRIES_START","GET_DELEGATIONS_ENTRIES_SUCCESS","GET_DELEGATIONS_ENTRIES_FAILED","GET_DELEGATIONS_ENTRIES_CLEAR","TODAYS_KIDS_ANNOUNCED_LIST","EARLY_DISMISSAL_START","EARLY_DISMISSAL_SUCCESS","EARLY_DISMISSAL_FAILED","EARLY_DISMISSAL_CLEAR","CANCEL_EARLY_DISMISSAL_START","CANCEL_EARLY_DISMISSAL_SUCCESS","CANCEL_EARLY_DISMISSAL_FAILED","CANCEL_EARLY_DISMISSAL_CLEAR","GET_EARLY_DISMISSAL_DATE_RANGE_START","GET_EARLY_DISMISSAL_DATE_RANGE_SUCCESS","GET_EARLY_DISMISSAL_DATE_RANGE_FAILED","GET_EARLY_DISMISSAL_DATE_RANGE_CLEAR","GET_BACK_SCHOOL_START","GET_BACK_SCHOOL_SUCCESS","GET_BACK_SCHOOL_FAILED","GET_BACK_SCHOOL_CLEAR","SAVE_BACK_SCHOOL_START","SAVE_BACK_SCHOOL_SUCCESS","SAVE_BACK_SCHOOL_FAILED","SAVE_BACK_SCHOOL_CLEAR","GET_RELATIONSHIP_START","GET_RELATIONSHIP_SUCCESS","GET_RELATIONSHIP_FAILED","GET_FILL_BACKTOSCHOOL_START","GET_FILL_BACKTOSCHOOL_SUCCESS","GET_FILL_BACKTOSCHOOL_FAILED","studentsList","schoolInfo","fetchStudentListDone","fetchSchoolInfoDone","busRouteResponse","studentAfterSchoolResponse","submitAnnounceResponse","getDelegationsRecord","changeDefaultPickupModeResponse","delegationCancelResponse","otherChildrens","fetchOtherChildrenDone","absentDateRange","calendarDateRange","submitAbsenteeResponse","pickupEntries","absentCalendarEntries","changeDelegationResponse","pickupEntriesMonth","delegateList","defaultDismissalResponse","errorBusroute","cancelAbsentResponse","relatedDelegations","deleteMultipleDelegations","availableDispatch","gaurdianInfo","dismissalHistory","getCarLinePositionResponse","getDelegationEntries","kidsAnnouncedToday","earlyDismissalResponse","cancelEarlyDismissalResponse","earlyDismissalDateRange","getBackSchoolInfo","saveBackSchoolInfo","relationshipList","fillbacktoschoolinfo","pickupEntriesAll","studentID","defaultDismissalResponseAll","dismissalHistoryAll","StudentID","schoolId","SchoolID","GET_SCHOOL_CHECKIN_START","GET_SCHOOL_CHECKIN_SUCCESS","GET_SCHOOL_CHECKIN_FAILED","GET_SCHOOL_CHECKIN_CLEAR","GET_SCHOOL_INFORMATION_START","GET_SCHOOL_INFORMATION_SUCCESS","GET_SCHOOL_INFORMATION_FAILED","SUBMIT_CHECKIN_PARENT_START","SUBMIT_CHECKIN_PARENT_SUCCESS","SUBMIT_CHECKIN_PARENT_FAILED","SUBMIT_CHECKIN_PARENT_CLEAR","GET_CHECKIN_QUESTIONS_START","GET_CHECKIN_QUESTIONS_SUCCESS","GET_CHECKIN_QUESTIONS_FAILED","GET_CHECKIN_QUESTIONS_CLEAR","GET_CHECKIN_PARENT_QUESTIONS_START","GET_CHECKIN_PARENT_QUESTIONS_SUCCESS","GET_CHECKIN_PARENT_QUESTIONS_FAILED","GET_CHECKIN_PARENT_QUESTIONS_CLEAR","GET_SCHOOL_ALLOW_CHECKIN_START","GET_SCHOOL_ALLOW_CHECKIN_SUCCESS","GET_SCHOOL_ALLOW_CHECKIN_FAILED","GET_SCHOOL_ALLOW_CHECKIN_CLEAR","GET_SCHOOL_STUDENT_CHECKIN_START","GET_SCHOOL_STUDENT_CHECKIN_SUCCESS","GET_SCHOOL_STUDENT_CHECKIN_FAILED","GET_SCHOOL_STUDENT_CHECKIN_CLEAR","WHO_CAN_CHECKIN_TODAY_START","WHO_CAN_CHECKIN_TODAY_SUCCESS","WHO_CAN_CHECKIN_TODAY_FAILED","WHO_CAN_CHECKIN_TODAY_CLEAR","schoolParentCheckIn","schoolCheckInResponse","schoolGeoFenceInformation","CheckInByParentResponse","getCheckInQuestionsResponse","canCheckin","whoCanCheckInToday","data","schoolAllowcheckInResponse","GET_ADVERT_LIST_START","GET_ADVERT_LIST_SUCCESS","GET_ADVERT_LIST_FAILED","GET_ADVERT_LIST_CLEAR","GET_ADVERT_SERVE_START","GET_ADVERT_SERVE_SUCCESS","GET_ADVERT_SERVE_FAILED","GET_ADVERT_SERVE_CLEAR","GET_ADVERT_CLICK_START","GET_ADVERT_CLICK_SUCCESS","GET_ADVERT_CLICK_FAILED","GET_ADVERT_CLICK_CLEAR","GET_ADVERT_PHOTO_START","GET_ADVERT_PHOTO_SUCCESS","GET_ADVERT_PHOTO_FAILED","GET_ADVERT_PHOTO_CLEAR","adsList","logAdvertServe","logAdvertClick","parentAdvertPhoto","createRootReducer","history","combineReducers","userAccount","userAccountReducer","loading","loadingReducer","school","schoolReducer","student","studentReducer","checkin","checkinReducer","ads","adsReducer","router","connectRouter","createBrowserHistory","expireReducer","require","persistConfig","key","storage","whitelist","transforms","expireSeconds","persistedReducer","persistReducer","store","preloadedState","composeEnhancer","window","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","compose","createStore","applyMiddleware","routerMiddleware","thunk","configureStore","persistor","persistStore","STAGE","PROD","DEVELOP","LOCALHOST","getHTTPHeader","AuthTokenID","getState","getEnvironment","getAxios","defaults","timeout","timeoutErrorMessage","validateStatus","headers","axios","create","GLOBAL_CONST","PICKUP_STATUS","NOT_DISMISSED","ANNOUNCED","DISMISSED","ABSENT","SCREEN_NAMES","LOGIN","FORGOT_PASSWORD","DASHBOARD","PICKUP","REGISTRATION_NAME","REGISTRATION_EMAIL","REGISTRATION_CONFIRM_EMAIL","REGISTRATION_PHONE","REGISTRATION_CONFIRM_PHONE","REGISTRATION_PASSWORD","REGISTRATION_SUCCESS","REGISTRATION_CHOOSE_ROLE","REGISTRATION_SUBMIT_FEEDBACK","SCHOOL_DETAILS","SCHOOL_DISMISSAL_TIME","CHECKIN_FOR","CHECKIN_QUESTIONS","NOTIFICATIONS_SCREEN","MANAGE_CHILDREN_TAB","CHILD_DETAILS","DEFAULT_PICKUP_MODE","MARK_ABSENT","SET_CHILD_PHOTO","SELECT_WHEN","DISMISSAL_HOW","CONTACT_SCREEN","CHANGE_PASSWORD","SETTING_NOTIFICATION","ADD_CONTACT","FUTURE_DELEGATIONS","CONTACT_SUPPORT","FAQ","TERM_CONDITIONS","PROFILE_SCREEN","DISMISSAL_HISTORY","DAYS_EN","DAYS_FULL_EN","DAYS_ES","DAYS_FULL_ES","VERSION","isAnnounceTimeStarted","DismissalTime","AnnounceTimeStarted","AnnounceStartTime","todaysDate","getHours","getMinutes","isAnnounceAllowed","PickupModeAllowsAnnounce","Status","isLastDayOfSchoolPast","isKidAnnounceable","getRegistrationToken","RegistrationTokenID","validateResponse","msg","toString","Message","message","isLoggedIn","getAuthToken","getMarkStyle","record","needColor","isEarlyDismissal","selected","selectedColor","IsApproved","Colors","foreGroundColor","className","MiscellaneousID","Guardian_First","RecordSource","isTodayAndAnnounced","selectedDate","ChildInfo","moment","isSame","StatusID","isActionAllowed","calendarDate","isFuture","isAfter","caldt","format","getDismissalInfo","item","currentDate","dismissalText","dismissalTextSubText","CalendarDate","PM_Name","PM_SubName","Guardian_Last","Guardian_Phone","filterByTypes","markedDates","pickupRed","pickupLightOrange","pickupGreen","getChildStatus","childInfo","lang","getLanguageCode","toUpperCase","Status_EN","locale","language","indexOf","split","validateError","showLocationError","toast","autoClose","transition","Slide","hideProgressBar","deg2rad","deg","Math","PI","distance","lat1","lon1","lat2","lon2","dLat","dLon","a","sin","cos","c","atan2","sqrt","parseFloat","nextField","event","form","target","index","Array","prototype","call","elements","focus","formatPhone","phone","AllowedCharacters","tempStr","trim","i","splice","join","canEarlyDismissToday","EarlyDismissalSettings","ReunificationEnabled","AllowParentEarlyDismissals","todayRecord","EarlyDismissalTimeTable","Active","AllowParentSameDayScheduling","earlyDismissNeedPassword","RequireParentPasswordForEarlyDismissal","getEarlyDismissalTime","Time","createImageFileURL","imageFile","URL","createObjectURL","checkIsEmergency","delegate","Students","find","IsEmergency","startRegistration","PostURL","FullUrl","post","Firstname","Lastname","Email","Locale","checkEmail","get","getIsEmailVerified","ResendEmailVerificationMail","addPhoneNumber","PhoneNumber","CountryCode","ResendOTP","verifyOtp","OTPCode","getUserInfo","registerUser","Password","userLogin","email","password","env","body","username","getCountryCodesListing","updateName","forgotPassword","updatePassword","oldPassword","newPassword","OldPassword","NewPassword","submitFeedback","feedback","token","Feedback","Reason","getDelagates","fetchAll","upsertApprovedDelegate","JSON","stringify","List_ParentDelegateID","list_parentDelegateID","phoneNumber","approvedDelegateChange","isActive","IsActive","delegateSetDeleted","list_ParentDelegateId","isTokenValid","getNotifications","LastNotificationID","notificationTypeId","getHelpTopics","schoolIds","SchoolIds","sendFeedbackWithChild","List_HelpTopicID","list_HelpTopicId","StudentIDs","studentIds","CustomSchoolName","customSchoolName","CustomStudentName","customStudentName","getNotificationSettings","updateParentNotificationSettings","ReceiveStatusnnotification","receiveStatusnnotification","ReceiveDelegationNotification","receiveDelegationNotification","ReceiveEmailNotification","receiveEmailNotification","ReceiveNotification","receiveNotification","ReceiveNotificationForParentCheckInReminder","receiveNotificationForParentCheckInReminder","ReceivePresentNotification","receivePresentNotification","fetchEta","deviceLat","deviceLon","schoolLatitude","schoolLongitude","connectStudent","Code","encodeURI","getFutureCalendarEntriesByParent","uploadDelegateImage","image","parentDelegateID","parameters","path","name","formData","FormData","append","CancelManualReviewImage","RequestManualReviewImage","delegateImageId","getStudents","currenDate","getSchoolInfo","submitAnnounce","getDelegationsToCurrentParent","studentId","StartDate","startDate","LastRecord","lastRecord","PageSize","pageSize","postDefaultPickupModeChange","PickupModeID","pickupModeID","PickupModeSubItem","pickupModeSubItem","cancelDelegation","calendarId","CancelToDate","cancelToDate","isCancelAll","getOtherChildren","saveAbsentee","AbsenteeDates","absenteeDate","reason","StudentId","getPickupEntriesForDateRange","EndDate","endDate","postDelegationChange","schoolID","DatesForChange","fromDate","isDelegated","isDelegatedToGuardian","guardianFirstName","guardianLastName","guardianPhone","institutionId","pickUpModeId","busRouteId","recurringTypeID","RecurringTypeID","getDefaultDismissal","cancelAbsentee","AbsenteeDate","cancelDelegations","getRelatedDelegations","CalendarID","getAvailableDispatchMethods","studentIDs","getDismissalHistory","LastDismissalID","DispatchID","getPositionInLine","pickupModeId","submitEarlyDismissal","cancelEarlyDismissal","dateRangeEarlyDismissal","getBackToSchoolInfo","saveBackToSchoolInfo","passData","getRelationshipType","getFillbacktoschollinfo","GetSchoolPickupTimes","GetReasonsForAbsence","getHelp","pageName","schoolCheckin","CheckInByParent","CheckParentIn","checkInParent","QuestionsAndAnswers","questionsAndAnswers","checkInGetQuestions","CheckInParentQuestions","schoolStudentCanCheckIn","parentAdvertList","SchoolIDs","saveRegistrationInfo","dispatch","getUserInfoClear","loginRegisteredUser","getCountryCodes","then","Success","countryList","Data","element","CountryId","CountryName","label","catch","logoutUser","getIsTokenValid","getIsTokenValidClear","setEnvironment","callback","showModal","hideModal","showCheckinQuestAns","setHelpList","saveNextAskMeDate","setDate","getDate","setFullYear","getFullYear","RegisterFooter","this","props","t","href","rel","React","Component","withTranslation","withRouter","RegisterHeader","src","logo","alt","RegisterWizard","back","preventDefault","stopPropagation","webPage","replace","goBack","to","onClick","SubmitButton","nextAction","buttonText","validateForm","UserHeader","UserFooter","createLoadingSelector","actions","_","some","getSchoolCheckIn","submitCheckInByParent","submitCheckInByParentClear","getSchoolStudentCheckIn","configure","loadingSelector","CheckinQuestions","dosetHelpList","getQuestions","parentCheckIn","doGetcheckInQuestions","doGetCheckInParentQuestions","selectedItem","isParenFlag","checkInQuestions","questionOption","schoolQuestionId","Questions","SchoolQuestionID","userAnswers","Skipped","IsParentQuestion","setState","selectedOption","QuestionAnswerID","setTimeout","disabledNext","showNextQuestion","bind","closeModal","doHideModal","selectedAnswer","nextButtonDisabled","showPreviousQuestion","currentQuestion","selectedQuestion","disabledFlag","ParentsCanSkip","checkIsQuestionAnswered","submitForm","doSubmitCheckInByParent","selectedQuestionAnswers","Object","values","submitQuestionAndAnswers","SchoolQuestionAnswerID","submitWithoutQuestion","renderItem","isSelected","AnswerText_EN","buildAnswers","answers","Answers","views","buildFooter","isFetching","questionCount","disabled","SchoolStudentList","selectForCheckin","showQuestionScreen","selectAnswer","completedPer","alreadyCheckedInMessage","doGetCheckInParentQuestionsClear","doSubmitCheckInByParentClear","doCallbackRefresh","success","questionText","QuestionText_EN","completedQ","percent","strokeWidth","strokeColor","color","size","connect","getcheckInQuestions","getCheckInParentQuestions","doeGetSchoolStudentCheckIn","doShowModal","getStudentsList","schoolAndKidsFetchDone","getSchoolDetails","delegationCancel","delegationCancelClear","getOtherChildrenDetails","changeDelegation","changeDelegationClear","relatedDelegationsDetails","removeMultipleDelegations","removeMultipleDelegationsClear","getAvailableDispatch","getAvailableDispatchClear","getBackToSchoolInformation","getRelationship","SelectCheckInFor","doGetStudentsList","getSchool","doGetSchoolDetails","checkCanCheckin","children","refreshFunction","hideQuestionAnswerView","doShowCheckinQuestAnsView","showQuestionAnswerView","renderChildren","childrenList","checkInChild","canCheckInSchoolChild","questionsForChildren","QuestionsForChildren","CanCheckInStudentIDs","canCheckInStudentIDs","filter","IsDelegation","kidCheckedIn","includes","parseInt","styleC","showCheckinView","parentCanCheckIn","studentCanCheckIn","parentCurrentlyCheckedIn","questionsForParents","ParentsCanCheckIn","StudentsCanCheckIn","ParentCurrentlyCheckedIn","QuestionsForParents","parentData","Checkin","enableGeo","mythis","navigator","geolocation","getCurrentPosition","position","isFirstGPSInProgress","processGeoLocation","watchLocation","geoError","enableHighAccuracy","maximumAge","watchId","watchPosition","distanceFilter","coords","latitude","longitude","checkSchoolInGeo","IsSchoolLocationInCheckIn","schoolGeoInfo","GeoFenceForCheckIn","GeoFenceData","checkInLat","Latitude","checkInLong","Longitude","checkInDistance","RadiusYards","checkInForSchool","getGeofenceDetails","doSchoolGeoFenceInformation","doGetSchoolCheckIn","schools","Schools","isSchoolCheckIn","checkInAllowedForParent","isGeoConditionPass","viewSchoolDetails","openSchoolDetails","openContactSupport","getEmptyView","getCheckViews","students","TodaysStudents","kids","schoolstudents","schoolStudentIDs","j","sort","b","toLowerCase","sectiondata","address","Address","Name","schoolLat","Coordinates","schoolLong","sortedSchoolStudentList","icon","faSchool","getLoaderView","getCheckinView","openCheckinWindow","schoolStudentDetials","showSchoolList","permissionResult","clearWatch","doSchoolAndKidsFetchDone","isEqual","settingsIcon","getSchoolGeoFenceInformation","notificationFilter","NotificationsList","openHelpModal","clearAll","showFilterOptions","selectedFilterType","showMenu","selectFilterType","value","reload","doGetNotificationsList","NotificationID","loadMoreRecords","hasMore","needLoad","showNotificationFilter","filterType","map","renderNotification","role","loadRecordWithCategory","dataLength","next","style","display","flexDirection","loader","scrollableTarget","notificationDescription","linkUrl","Schoolname","dateTime","buildListing","doNotificationsListClear","doSetOldHelpSetting","getNotificationsList","ViewProfile","loadUpdates","userName","userInitials","charAt","handleFirstNameChange","firstNameError","handleLastNameChange","lastNameError","doNameUpdate","submitDeleteAccount","onClose","doDeleteAccount","askVerification","passwordInvalid","emailInvalid","showPasswordOptions","isValidEmail","isValidPassword","confirmAlert","customUI","placeholder","onKeyPress","secondTextInput","onChange","deleteAccountConfirm","buttons","deleteAccountTapped","validate","text","renderViewProfile","userPhone","avatarSource","firstNameInvalid","lastNameInvalid","enableEditName","maxLength","mobile","userEmail","doNameUpdateClear","doDeleteAccountClear","doLogoutUser","nameUpdate","ChangePassword","currentPassword","repeatPassword","submitChange","doPasswordUpdate","setButtonState","disabledButton","handleNewPassword","rating","score","pass","match","passwordStrength","handleCurrentPassword","handleRepeatPassword","renderPasswordString","setCurrentPasswordVisibility","hideCurrentPassword","setNewPasswordVisibility","hideNewPassword","setRepeatPasswordVisibility","hideRepeatPassword","renderChangePasswordView","doPasswordUpdateClear","passwordUpdate","Setting","getNotificationStting","doNotificationSetting","loadSettings","notification","delegationsNotifications","statusNotification","emailNotification","attendanceNotification","checkinNotification","updateSetting","doNotificationSettingUpdate","authToken","renderSettingsView","checked","alert","toggleDelegationStiing","doNotificationSettingUpdateClear","doNotificationSettingClear","ContactSupport","getSchoolStudents","Schoolstudents","studenId","setSelected","selectedChildren","listItem","htmlFor","getTopicsByID","getSchoolsByID","schoolsOptions","getTopicsdetails","doGetTopics","showValidator","validator","selectedSchoolOptions","topic","doSendSupportRequest","buildStudentList","handleFeedback","handleCustomSchoolName","handleCustomStudentName","renderContactSupportView","selectedOptionLabel","selectedSchoolOptionsLabel","Dropdown","onSelect","eventKey","previousSelectedOptions","Toggle","Menu","Item","active","col","supportText","previousSelectedSchoolOption","dosendSupportRequestClear","topics","allTopics","Description","ListHelpTopicID","getTopics","Nokids","openContactSupportModal","noKidsTitle","noKidsDetail","NokidsImage","ChildCard","createTimer","myInterval","setInterval","getAnnounceTimeDifference","announceTimeDifference","enableAnnounce","canKidAnnounce","LocalDateTime","hours","start","end","duration","diff","mins","asMinutes","asHours","isPickingUpTapped","obj","childDetials","selectedSwitchCallback","isPickingUpToday","clearInterval","PickupModeIcon","faCarAlt","faBusAlt","faHome","PickupModeName","SchoolCard","savePermission","result","AnnounceInRangeRequired","AnnounceDistance","MyLat","MyLong","IsLocationOnCampus","getCarLineQueue","doPositionInLineGet","schoolkidsAnnouncedToday","lastIndex","canAnnounceAllowed","isAnyKidSelected","isAnnounceForAnyKid","anyKidCanAnnounce","anyKidCanAnnounced","isAllAnnounceKidAnnounced","isAnyKidAnnounceTimeStarted","AnnounceTapped","isAnyKidAnnounceTimeStartedFlag","showAnnounce","openDirectionMap","open","displayCarLineQueue","schoolCarLine","carLineString","LineLength","Position","locationText","positionInLineGet","loadingSelectorFuture","Dashboard","doRefreshListing","fetchOtherChildrenList","getFutureListing","getDispatchList","doGetAvailableDispatch","openChildAnnounceFor","openCancelThisPickup","cancelpickups","doGetFutureEntries","checkTokenValid","doGetIsTokenValid","doGetOtherChildrenList","initialLoad","doReload","lastLoadedStudentList","chidInfo","selectedKidsSwitches","selectedKidsSwitchesSchool","keys","buildList","LastDayOfSchool","Dates","isBefore","schoolzip","State","Zip","previousDelegations","futureDelegations","PriorAndFutureDelegations","Last","NextDelegation","modalVisibleButton","checkToShowAnnounceCards","doSaveTodaysKidsAnnouncedList","setMessage","openAnnounceCard","toggleAnnounceButton","doAnnounce","doAnnounceSubmit","SchoolId","IsDelegated","PickupModeId","showEmpty","loadDataDone","noKidsData","showListing","isFetchingFuture","renderPriorAndFutureListing","displayStudentList","renderFutureEntries","studentList","isParent","studentid","allAvailableDispatch","defaultPickup","newPickup","pickupString","pickupMode","StudentDismissalMethod","Modes","DefaultPickupModeID","MethodsAvailableToEveryone","mode","DefaultInstituteName","DefaultBusRoute","getPickupMode","fk_pickmodeid","subPickupMode","SubOptions","ID","fk_institutionid","subString","ChangedToInstitutionName","guardianfirstname","guardianlastname","guardianphonenumber","getModifiedPickupMode","Moment","ChangedByName","isActionPerformed","items","listTitle","subKey","firstname","lastname","SchoolName","fk_studentid","modalVisible","needRefresh","doRefresh","isUpcomingSelected","isPreviousSelected","adsVisible","doGetFutureEntriesClear","doGetIsTokenValidClear","doCancelDelegationClear","doRemoveMultipleDelegationsClear","doGetAvailableDispatchClear","doAnnounceSubmitClear","doStudentsSchoolListClear","newAllAvailableDispatch","isPullRefresh","displayConfirmation","visible","logoutAction","logout","bottom","Result","doRelatedDelegationsDetails","doRemoveMultipleDelegations","docancelDelegation","DAYS","DismissalTimes","getUserLocation","fetchETA","doFetchDistance","processETA","setSchoolDetailsHelp","setDismissalsTimesHelp","getSchoolDismisal","doGetSchoolPickupTimeDetails","IncludeDismissalTimes","getGradeViews","gradeData","dayId","grade","pickupTime","buildDayList","day","output","etaRoute","routes","eta","ceil","etaHours","etaMinutes","floor","etaInfo","goToMap","openMapWithoutSource","directionMessage","renderDismissalTimes","buildDismissal","todayStudentsList","gradeToShows","GradeName","DayOfWeek","GradeNames","DisplayedToUserTime_Local","myETAInterval","doGetSchoolPickupTimeDetailsClear","getSchoolPickupTimeDetails","code","fetchDistance","doSaveLocationPermission","permission","OwlCarouselOptions","margin","responsiveClass","nav","autoplay","navText","smartSpeed","responsive","ChildCardAnnounce","renderKidsForAnnounce","DismissalHistory","getRecords","child","doGetDismissalHistoryList","isVisible","doGetDismissalHistoryListClear","prevProps","records","getDismissedInfo","CalendarEntries","MyKidView","getDismissalsList","doGetPickupEntries","doGetEarlyDismissalsForDateRange","firstDayOfSchool","FirstDayOfSchool","monthStart","add","getMonth","monthEnd","eStartDate","eEndDate","doGetKidDefaultDismissal","doGetPickupEntriesClear","dismissalData","openCancelPickupModal","openChangeDefualtPickupWindow","openMarkAbsentWindow","getRelatedDelegationsDetails","toggleKidsCalendar","kidsCalendarVisible","openEarlyDismissalmodal","displayMenu","setDateForActon","selectDate","doCancelEarlyDismissal","cancelable","showDismissalAdd","onDayPress","getDayRecord","getRedButton","doCancelAbsent","getButton","isAbseetAllowed","isPickupModeFuture","PickupModeCutOffTime","isDelegateFuture","DelegationCutOffTime","isReunification","Permissions","MarkAbsent","getChangeDismissalbutton","isDefault","PM_ID","canceldate","doAbsenteeCancel","doEarlyDismissalCancel","Id","dayRecord","renderEarlyDismissalItem","renderContactItem","renderPickupItem","renderEarlyItem","selectDateStr","dismissalInfo","getEarlyDismissalInfo","dayValue","markStyle","background","toLocaleUpperCase","ImageBasedDelegationFeatureFlag","DelegateImageUrl","DelegateName","DelegateContact","currentSelectedMonth","currentList","selectedMarked","doAbsenteeCancelClear","doGetEarlyDismissalsForDateRangeClear","doCancelEarlyDismissalClear","kidPickupEntries","newMarkedDates","earlyDismissalrecord","childDetailView","kidDefaultDismissalResponse","colSpan","width","valign","SchoolStudentId","calendarType","prev2Label","next2Label","showFixedNumberOfWeeks","showNeighboringMonth","onClickDay","tileClassName","date","view","PickupModeSubName","getKidDefaultDismissal","doGetKidDefaultDismissalClear","getKidDefaultDismissalClear","absenteeCancel","earlyDismissalCancel","OtherKidView","openFutureDelegationWindow","StudentName","FirstName","LastName","Grade","ParentName","PickupDate","ChildManagement","processBackToSchool","needBackToSchool","isBackToSchoolPrompted","doGetbacktoschoolInfo","kidsList","getBackSchoolInfoData","openBackToSchoolKidsModal","studentData","backToSchoolInfoData","isSingleKid","buildYourChildrenList","yourChildrenRefreshing","AskForBackToSchool","YourSchoolStudentList","getYourChildrenView","childViews","k","renderMyChild","buildOtherChildrenList","OtherSchoolStudentList","getOtherChildrenView","renderOtherChild","showError","tokenError","schoolFetchError","studentFetchError","ListEmptyComponent","otherChildrenRefreshing","openBarCodeScanner","doOtherChildrenFetchDone","scope","otherChildrensFetchError","doOtherChildrenListClear","loadingPhotoSelector","NOT_SPECIFIED","AddContact","getStudentsInfo","selectedStudents","matchRecord","RelationshipTypeOther","mobileNumber","contactRecord","doAddApprovedDelegates","actionName","studentInfo","RelationshipTypeId","test","mobileNumberInvalid","userId","updateDelegateStatus","activeFlag","doUpdateApprovedDelegatesChange","deleteDelegate","doDeleteDelegate","addEmergencyContactForSingleKid","removeEmergencyContactForSingleKid","uploadDelegatePhoto","doUploadDelegatePhoto","handleMobileNumberChange","getDelegateImage","isModalVisible","PhotoUrl","ImageInReview","removePhotoView","hideUploadPhotoWizard","doManualReviewCancel","showPreviewView","isProcessingVisible","encType","isManualReviewSubmitSuccess","isCancelManualReviewSubmitSuccess","renderRejectedImagePreview","rejectedIcon","isImageWizardVisible","isPreviewVisible","isRejectedVisible","doManualReviewRequest","RejectedImageId","processImage","captureResponse","processImageFile","String","dataUrlToFile","resultFile","asset","compress","MB","pow","round","compressSizer","height","resize","Resizer","imageFileResizer","resizeResponse","isPhotoChanged","err","showImageCropper","isImageCrop","captureImage","imageURL","isOpen","CropDemo","selectPhotoTapped","accept","files","isCameraLaunch","cameraLauncher","ref","webCamera","facingMode","aspectRatio","current","takePhoto","dataUrl","fetch","res","blob","File","showDialogueBox","showGuidelinesView","successIllustration","showUploadPhotoWizard","isContactFormVisible","isAddContactSuccess","isRemovePhotoPromptVisible","setSelectedKids","setRelationWithStudent","relation","selectedStudentRelations","updateShowKid","isShowKidForEmergency","kidAddEmergency","setSelectedRelation","selectedRelationData","getStudentRelationship","rec","relationshipText","kidWithRelationship","selectedRelationshipOption","studentName","doCallback","renderAddEditContactForm","submitButtonText","tempNewDelegate","addContactSuccessView","contactName","closeOnClickOutside","successChecked","doAddApprovedDelegatesClear","backToContactList","renderCreateContactView","modalTitle","nameInvalid","isChangeRelation","createRef","CustomMenu","forwardRef","labeledBy","useState","setValue","e","Children","toArray","startsWith","serchedvalue","doUpdateApprovedDelegatesChangeClear","doDeleteDelegateClear","delegateImageUploadErrorResponse","doDelegateImageUploadErrorClear","manualReviewRequestResponse","doManualRequestClear","doManualReviewCancelClear","info","crop","setCrop","updateApprovedDelegatesChange","file","delegateImageUpload","doGetRelationship","ChangeDefaultPickup","doChangeDefaultPickupMode","selectedOptionPickupMode","selectedSubPickupModeOption","selectedBusRouteOption","getPickupModeById","pickupModeList","getAfterSchoolProgramById","schoolSubOptions","getBusRouteById","busRouteSubOptions","renderChangeDefaultPickupView","defaultPickupMode","onToggle","previousSelectedOptionsPickupMode","selectedBusRouteOptionLabel","selectedOptionPickupBy","previousSelectedOptionsPickupBy","previousSelectedSubpickupModeOption","previousSelecteBusRouteOption","selectChild","doChangeDefaultPickupModeClear","schoolOptions","busOptions","pickupModes","methodsAvailableToEveryone","subSchool","subBus","CreateMarkAbsent","fill","changeMonth","calendar","addMonth","currMonth","toDate","getAbsenteeReason","doGetAbsentReason","onFromDateSelected","hideLegendView","onToDateSelected","selectedTillDate","showCalendarPicker","showLegendView","showWhenCalendarPicker","showUntilCalendarPicker","showUntilLegendView","showUntilCalendar","showSelectHowUI","showSelectHowUIFlag","renderLegendUI","renderMarkAbsentView","isRepeat","pickupDates","absentReason","absentReasonResult","AbsenceReasons","minDate","onCalendarOpen","onClickOutside","dateFormat","highlightDates","customInput","handleSelect","displayPasswordEntry","PasswordRequiredForChange","handlePassword","confirmPassword","getRecurringDates","dates","m","doSubmitAbsentee","selectFromDate","selectTillDate","absenteetilldate","setSelectedDate","newDate","year","month","setSelectedTillDate","setRepeat","isFromDateTimePickerVisible","isUntilateTimePickerVisible","selectedAbsentReason","doSubmitAbsenteeClear","CustomInput","readOnly","getAbsentReason","DismissalSelectHow","setSelectedDelegate","contactFlag","selectedPhone","gaurdianDetails","howWillPickupOptions","givenName","familyName","number","exists","selectedChild","canAssignParentAllowed","canAssignParent","manuallExcludedDates","doChangeDelegation","selectData","manuallExcludedDatesArr","finalDates","showDate","delegatedPerson","openContact","manageDelegate","currentPageIndex","pageIndexes","selectedRepeatOption","selectRecurringOption","recurringDates","onRef","studentPickupModeList","afterSchoolOptions","busCompletesOptions","subOptions","doChangeDelegationClear","modes","CanAssignParent","selectedOptionPickupModeText","navigation","loadingForPickupMode","setCreatePickupButtonsUI","FutureDelegation","componentDidMount","doGetDelegationToParent","StudentDBID","today","getFutureDelegationView","PickupMode","doGetDelegationToParentClear","Delegations","PickupSummaryView","buildRecurringMainView","typeText","buildRecurringDatesView","saveChangesManuallExcludedDates","selectedDays","days","endIndex","doesDismissalExists","doesExcluded","dateStyle","RegisterName","doSaveRegistrationInfo","doGetCountryCodes","location","pathname","page","RegisterEmail","handleEmailChange","reg","endsWith","doSetEnvironment","doCheckEmailProcess","doCheckEmail","doRegistration","dostartUserRegistration","doCheckEmailClear","dostartRegistrationClear","onSubmit","checkUserEmail","ConfirmEmail","isVerified","advancePage","doVerifiedUserEmail","registeredToken","resendEmail","doReSendEmailUser","doVerifiedUserEmailClear","doReSendEmailClear","verifiedEmailImage","verifyEmailImage","emailResendError","verifiedUserEmail","reSendEmailUser","defaultCountry","RegisterPhone","saveCountry","selectedCountry","countryCode","countryName","doAddUserPhoneNumber","phoneInvalid","finalPhone","countryCodeOnly","substring","handlePhoneChange","selectedCountryCode","getCountry","userPhoneNumberClear","searchable","options","labelField","valueField","searchBy","clearOnSelect","ConfirmPhone","handleChange","otp","otpError","doVerifyUserOtp","resendCode","doResendOTP","buildTitle","showPhoneNumber","doVerifyUserOtpClear","doResendOTPClear","inputStyle","numInputs","shouldAutoFocus","isInputNum","verifyUserOtp","RegisterPassword","acceptTermAndCondition","termsAccepted","setPasswordVisibility","hidePassword","setConfirmPasswordVisibility","hideConfirmPassword","handleConfirmPassword","confirmError","handletermAccespted","termAcceptError","RegisterSuccess","doCompleteRegisterUser","getUserDetails","doGetUserInformation","doNavigation","isDelegate","doLoginRegisteredUser","LoggedInParentInfo","isRegistered","doCompleteRegisterUserClear","KidsAtSchools","KidsDelegatedCurrently","marginTop","completeRegisterUser","ChooseRole","setRoles","content","select","changeRole","userRole","submitButton","displayRoles","roleDetails","roleData","RegisterSupport","goDashboard","schoolNameInvalid","childrenInformationInvalid","dismissalNumberInavlid","schoolName","childrenInformation","dismissalNumber","tokenNumber","doFeedbackSubmit","LoginTokenID","FeedbackToSend","doFeedbackSubmitClear","feedbackSubmit","SelectContact","getGaurdianList","doGetDelegates","searchAction","allDelegates","allRecords","delNames","delegates","forEach","itemData","textData","delegateString","searchText","handleSearchTextChange","showSearchView","renderContactListView","isSearch","sortByFirstName","localeCompare","sensitivity","openNewModal","showEmergencyContactAlert","closeOnClick","doGetDelegatesClear","getDelegates","SelectWhen","buildRepeatOptions","weekDay","monthDay","repeatOptions","setRepeatType","Number","setRecurringWeekly","buildRecurringDates","DOW","getDailyRecurringDates","actualDates","formatedDates","recurringWeekdays","clone","unit","isSameOrBefore","nextDate","dt","newDt","setHours","dateSelected","showUntillCalendarPicker","hideUntilLegendView","showUntillLegendView","getSelectHowUI","dismissalSelectHow","saveChangesCurrentPageIndex","selectDOW","renderDOW","getMinMaxDate","minimumDate","maximumDate","maxDate","getSelectDateUI","startMinMax","endMinMax","faCalendarAlt","variant","schedulePickupView","repeatPickupData","pickupModeData","showPickupSummary","togglePickupSummary","getHowFooterContent","getWhenFooterContent","selectDismissalDate","setMinutes","selectedPreviousDate","selectedPreviousTillDate","isUntilDateTimePickerVisible","lastFetchedDate","x","CancelPickup","cancelAllOcurence","calenderIds","CalendarItems","cancelSingleDelegation","cancelDate","showConfirmation","calendarDates","lastDate","isSingleCancel","IsRecurring","isrecurring","CanceThisPickupView","doRelatedDelegationsClear","EarlyDismissalPickup","dismissalDate","contactNumber","doEarlyDismissalSubmit","renderEarlyDismissalSuccessView","successEarlyDismissal","inputRefs","pickedTime","disTime","time","substr","minutes","parseDaytime","setSeconds","isSuccessPrompt","doearlyDismissalClear","CreateEarlyDismissal","onLeftFlingHandlerStateChange","onRightFlingHandlerStateChange","nativeEvent","showDayDetail","timestamp","markedRecord","submitNext","dayNo","getDay","Day","scheduleRecord","dayText","StartTime","EndTime","pickTime","compareDate","isBetween","isEarlyDismissalAvailable","detoxDateSetup","fourDaysForward","earlyDismissalPickupData","earlyDismissalPickup","drawTodayEarlyDismissalSchedule","timeTable","timeTableView","dayIndex","daySelectedIndex","doTodayFlash","doSelectedDateFlash","timeStyle","createDay","isLastRecord","drawEarlyDismissalSchedule","isCollapse","isEarlyAllowedForToday","showCalendarView","renderTimePicker","tomarrow","showTimePicker","disableCalendar","disableClock","calendarIcon","openWidgetsOnFocus","isCalendarOpen","isClockOpen","clearIcon","handleConfirm","hideDatePicker","isPasswordRequired","isSubmitNext","BackToSchool","getBackToSchoolTemplate","Primary","Mobile","Relationship","Secondary","Carpooling","updateBackToSchoolData","fieldType","fieldName","fieldData","setupPickupModes","componentDidUpdate","saveBackSchoolInfoResponse","doSaveBackToSchoolDataClear","doSetuserRelation","doSetSecRelation","saveBackToSchool","doSaveBackToSchoolData","doBacktoschoolInfoFill","OtherPickupMode","Other","InstitutionId","InstitutionName","BusRouteId","BusName","openContactsModal","askMeAlerts","doSaveNextAskMeDate","isExpandYourInfo","isExpandAdditionalParent","isExpandPickupMode","isExpandAddress","isEditable","doGetFillbacktoschoolinfo","isReadOnly","testID","pickupBlue","getfillBacktoschoolinfoData","BackToSchoolKidList","openBackSchoolEnrollment","backToSchoolData","serverBackToSchoolData","studentRecords","renderKidsList","renderEmergencyContactView","SelectRelationship","newData","addNewRelationship","selectedRelationTypeData","showDropDown","setSelectedRelationData","toggleDropdown","getRelationNamebyId","prevState","snapshot","strDisplay","dom","watch","MainHeader","openNotification","openViewProfileModal","openChangePasswordModal","openSettingsModal","helpParam","submit","faBell","faSmileBeam","MainFooter","ScanBarCode","processScan","scanResult","doStudentWithConnect","scanDone","localError","handleScan","onBarCodeRead","isNumber","num","doStudentWithConnectClear","faWindowClose","delay","flex","justifyContent","alignItems","onError","handleError","onScan","showViewFinder","HelpDetails","backToHelptList","Title","HelpText","HelpListing","doGetHelpDetails","openHelpDetails","goto","doGetHelpDetailsClear","help_En","help_Es","Help_EN","Help_ES","userLanguageRecord","getHelpDetails","Modal","setAppElement","BootstrapModal","getModalChildren","modelInfo","setIsOpen","myLevel","AdsView","getAds","doGetParentAdvertList","showAds","currentAdIndex","Ads","doHideAds","adsLoop","AdIntervalMS","ImageUrl","getParentAdvertList","hideAds","LoadAds","PrivateRoute","component","rest","render","TermsConditions","doSaveTermsAccepted","LandingPage","handleSubmit","processLogin","userPassError","userNameError","doLogin","doClearRgistrationInfo","handleUserChange","ServerError","handlePasswordChange","doLoginClear","loginUser","ForgotPassword","processForgotPassword","doUserForgotPassword","doUserForgotPasswordClear","userForgotPassword","Error","Routes","exact","App","PikMyKid","clearCacheData","caches","names","delete","I18nextProvider","i18n","reactRoot","document","getElementById"],"mappings":"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","file":"static/js/main.95c39ca5.chunk.js","sourcesContent":["import i18next from \"i18next\";\nimport LanguageDetector from \"i18next-browser-languagedetector\";\n\nimport translationEng from \"./locales/en/translation.json\";\nimport translationSpanish from \"./locales/es/translation.json\";\ni18next.use(LanguageDetector).init({\n debug: true,\n fallbackLng: \"en\", // use en if detected lng is not available\n keySeparator: false, // we do not use keys in form messages.welcome\n interpolation: {\n escapeValue: false, // react already safes from xss\n },\n resources: {\n en: {\n translations: translationEng,\n },\n es: {\n translations: translationEng,\n },\n },\n // have a common namespace used around the full app\n ns: [\"translations\"],\n defaultNS: \"translations\",\n});\n\nexport default i18next;\n","// start Registartion\nexport const START_REGISTARTION_START = \"start_registartion_start\";\nexport const START_REGISTARTION_SUCCESS = \"start_registartion_success\";\nexport const START_REGISTARTION_FAILED = \"start_registartion_failed\";\nexport const START_REGISTARTION_CLEAR = \"start_registartion_clear\";\n\n// Check Email\nexport const CHECK_EMAIL_START = \"check_email_start\";\nexport const CHECK_EMAIL_SUCCESS = \"check_email_success\";\nexport const CHECK_EMAIL_FAILED = \"check_email_failed\";\nexport const CHECK_EMAIL_CLEAR = \"check_email_clear\";\n\nexport const SAVE_REGISTRATION_INFO = \"save_registration_info\";\nexport const SAVE_REGISTRATION_CLEAR = \"save_registration_info_clear\";\n\n// Verification Email\n\nexport const VERIFIED_EMAIL_START = \"verified_email_start\";\nexport const VERIFIED_EMAIL_SUCCESS = \"verified_email_success\";\nexport const VERIFIED_EMAIL_FAILED = \"verified_email_failed\";\nexport const VERIFIED_EMAIL_CLEAR = \"verified_email_clear\";\n\n// Add Phone number\n\nexport const ADD_PHONE_NUMBER_USER_START = \"add_phone_number_user_start\";\nexport const ADD_PHONE_NUMBER_USER_SUCCESS = \"add_phone_number_user_success\";\nexport const ADD_PHONE_NUMBER_USER_FAILED = \"add_phone_number_user_failed\";\nexport const ADD_PHONE_NUMBER_USER_CLEAR = \"add_phone_number_user_clear\";\n\n// Resend Email\nexport const RE_SEND_EMAIL_START = \"re_send_email_start\";\nexport const RE_SEND_EMAIL_SUCCESS = \"re_send_email_success\";\nexport const RE_SEND_EMAIL_FAILED = \"re_send_email_failed\";\nexport const RE_SEND_EMAIL_CLEAR = \"re_send_email_clear\";\n\n// verify otp\n\nexport const VERIFY_OTP_START = \"verify_otp_start\";\nexport const VERIFY_OTP_SUCCESS = \"verify_otp_success\";\nexport const VERIFY_OTP_FAILED = \"verify_otp_failed\";\nexport const VERIFY_OTP_CLEAR = \"verify_otp_clear\";\n\n// resend otp\n\nexport const RE_SEND_OTP_START = \"re_send_otp_start\";\nexport const RE_SEND_OTP_SUCCESS = \"re_send_otp_success\";\nexport const RE_SEND_OTP_FAILED = \"re_send_otp_failed\";\nexport const RE_SEND_OTP_CLEAR = \"re_send_otp_clear\";\n\n// user information\n\nexport const GET_USER_INFO_START = \"get_user_info_start\";\nexport const GET_USER_INFO_SUCCESS = \"get_user_info_success\";\nexport const GET_USER_INFO_FAILED = \"get_user_info_failed\";\nexport const GET_USER_INFO_CLEAR = \"get_user_info_clear\";\n// Register user\nexport const COMPLETE_REGISTRATION_USER_START =\n \"complete_registration_user_start\";\nexport const COMPLETE_REGISTRATION_USER_SUCCESS =\n \"complete_registration_user_success\";\nexport const COMPLETE_REGISTRATION_USER_FAILED =\n \"complete_registration_user_failed\";\nexport const COMPLETE_REGISTRATION_USER_CLEAR =\n \"complete_registration_user_clear\";\n\n// login user\nexport const LOGIN_USER_START = \"login_user_start\";\nexport const LOGIN_USER_SUCCESS = \"login_user_success\";\nexport const LOGIN_USER_FAILED = \"login_user_failed\";\nexport const LOGIN_USER_CLEAR = \"login_user_clear\";\n\n// login user\nexport const LOGIN_REGISTERED_USER = \"login_registered_user\";\n\n// countryCode\nexport const COUNTRY_CODE_LIST_START = \"country_code_list_start\";\nexport const COUNTRY_CODE_LIST_SUCCESS = \"country_code_list_success\";\nexport const COUNTRY_CODE_LIST_FAILED = \"country_code_list_failed\";\nexport const COUNTRY_CODE_LIST_CLEAR = \"country_code_list_clear\";\n\n// logoutUser\nexport const LOGOUT_USER = \"logout_user\";\n\n// change language\nexport const CHANGE_LOCALE_START = \"change_locale_start\";\nexport const CHANGE_LOCALE_SUCCESS = \"change_locale_succes\";\nexport const CHANGE_LOCALE_FAILED = \"change_locale_failed\";\n\n// update Parent Name\n\nexport const UPDATE_NAME_START = \"update_name_start\";\nexport const UPDATE_NAME_SUCCESS = \"update_name_success\";\nexport const UPDATE_NAME_FAILED = \"update_name_failed\";\nexport const UPDATE_NAME_CLEAR = \"update_name_clear\";\n\n// forgotpassword\n\nexport const FORGOT_PASSWORD_START = \"forgot_password_start\";\nexport const FORGOT_PASSWORD_SUCCESS = \"forgot_password_success\";\nexport const FORGOT_PASSWORD_FAILED = \"forgot_password_failed\";\nexport const FORGOT_PASSWORD_CLEAR = \"forgot_password_clear\";\n\n// Regsitartion Valid\n\nexport const RAGISTRATION_VALID_START = \"registration_valid_start\";\nexport const RAGISTRATION_VALID_SUCCESS = \"registration_valid_success\";\nexport const RAGISTRATION_VALID_FAILED = \"registration_valid_failed\";\n\n// update Password\n\nexport const UPDATE_PASSWORD_START = \"update_password_start\";\nexport const UPDATE_PASSWORD_SUCCESS = \"update_password_success\";\nexport const UPDATE_PASSWORD_FAILED = \"update_password_failed\";\nexport const UPDATE_PASSWORD_CLEAR = \"update_password_clear\";\n\n// Get Notifications\nexport const GET_NOTIFICATIONS_START = \"get_notifications_start\";\nexport const GET_NOTIFICATIONS_SUCCESS = \"get_notifications_success\";\nexport const GET_NOTIFICATIONS_FAILED = \"get_notifications_failed\";\nexport const GET_NOTIFICATIONS_CLEAR = \"get_notifications_clear\";\n\n// submit Feedback\n\nexport const SUBMIT_FEEDBACK_START = \"submit_feedback_start\";\nexport const SUBMIT_FEEDBACK_SUCCESS = \"submit_feedback_success\";\nexport const SUBMIT_FEEDBACK_FAILED = \"submit_feedback_failed\";\nexport const SUBMIT_FEEDBACK_CLEAR = \"submit_feedback_clear\";\n\n// update token\n\nexport const UPDATE_DEVICE_TOKEN_START = \"update_device_token_start\";\nexport const UPDATE_DEVICE_TOKEN_SUCCESS = \"update_device_token_success\";\nexport const UPDATE_DEVICE_TOKEN_FAILED = \"update_device_token_failed\";\nexport const UPDATE_DEVICE_TOKEN_CLEAR = \"update_device_token_clear\";\n\n// get delegates\n\nexport const GET_DELEGATES_START = \"get_delegates_start\";\nexport const GET_DELEGATES_SUCCESS = \"get_delegates_success\";\nexport const GET_DELEGATES_FAILED = \"get_delegates_failed\";\nexport const GET_DELEGATES_CLEAR = \"get_delegates_clear\";\n\n// approved delegates\n\nexport const APPROVED_DELEGATES_START = \"approved_delegates_start\";\nexport const APPROVED_DELEGATES_SUCCESS = \"approved_delegates_success\";\nexport const APPROVED_DELEGATES_FAILED = \"approved_delegates_failed\";\nexport const APPROVED_DELEGATES_CLEAR = \"approved_delegates_clear\";\n\n// approved delegates change\n\nexport const APPROVED_DELEGATES_CHANGE_START =\n \"approved_delegates_change_start\";\nexport const APPROVED_DELEGATES_CHANGE_SUCCESS =\n \"approved_delegates_change_success\";\nexport const APPROVED_DELEGATES_CHANGE_FAILED =\n \"approved_delegates_change_failed\";\nexport const APPROVED_DELEGATES_CHANGE_CLEAR =\n \"approved_delegates_change_clear\";\n\n// approved delegates set deleted\n\nexport const DELEGATES_SET_DELETED_START = \"delegates_set_deleted_start\";\nexport const DELEGATES_SET_DELETED_SUCCESS = \"delegates_set_deleted_success\";\nexport const DELEGATES_SET_DELETED_FAILED = \"delegates_set_deleted_failed\";\nexport const DELEGATES_SET_DELETED_CLEAR = \"delegates_set_deleted_clear\";\n\n// istokenValid\n\nexport const GET_TOKEN_VALID_START = \"get_token_valid_start\";\nexport const GET_TOKEN_VALID_SUCCESS = \"get_token_valid_success\";\nexport const GET_TOKEN_VALID_FAILED = \"get_token_valid_failed\";\nexport const GET_TOKEN_VALID_CLEAR = \"get_token_valid_clear\";\n\nexport const GET_HELP_TOPICS_START = \"get_help_topics_start\";\nexport const GET_HELP_TOPICS_SUCCESS = \"get_help_topics_success\";\nexport const GET_HELP_TOPICS_FAILED = \"get_help_topics_failed\";\n\nexport const SEND_SUPPORT_REQUEST_START = \"send_support_request_start\";\nexport const SEND_SUPPORT_REQUEST_SUCCESS = \"send_support_request_success\";\nexport const SEND_SUPPORT_REQUEST_FAILED = \"send_support_request_failed\";\nexport const SEND_SUPPORT_REQUEST_CLEAR = \"send_support_request_clear\";\n\nexport const GET_NOTIFICATION_SETTING_START = \"get_notification_setting_start\";\nexport const GET_NOTIFICATION_SETTING_SUCCESS =\n \"get_notification_setting_success\";\nexport const GET_NOTIFICATION_SETTING_FAILED =\n \"get_notification_setting_failed\";\nexport const GET_NOTIFICATION_SETTING_CLEAR = \"get_notification_setting_clear\";\n\nexport const UPDATE_NOTIFICATION_SETTING_START =\n \"update_notification_setting_start\";\nexport const UPDATE_NOTIFICATION_SETTING_SUCCESS =\n \"update_notification_setting_success\";\nexport const UPDATE_NOTIFICATION_SETTING_FAILED =\n \"update_notification_setting_failed\";\nexport const UPDATE_NOTIFICATION_SETTING_CLEAR =\n \"update_notification_setting_clear\";\n\nexport const LOG_ERRORS_BROWSER_START = \"log_errors_browser_start\";\nexport const LOG_ERRORS_BROWSER_SUCCESS = \"log_errors_browser_success\";\nexport const LOG_ERRORS_BROWSER_FAILED = \"log_errors_browser_failed\";\nexport const LOG_ERRORS_BROWSER_CLEAR = \"log_errors_browser_clear\";\n\nexport const LOG_ERRORS_FILE_START = \"log_errors_file_start\";\nexport const LOG_ERRORS_FILE_SUCCESS = \"log_errors_file_success\";\nexport const LOG_ERRORS_FILE_FAILED = \"log_errors_file_failed\";\nexport const LOG_ERRORS_FILE_CLEAR = \"log_errors_file_clear\";\n\nexport const CONNECT_STUDENT_START = \"connect_student_start\";\nexport const CONNECT_STUDENT_SUCCESS = \"connect_student_success\";\nexport const CONNECT_STUDENT_FAILED = \"connect_student_failed\";\nexport const CONNECT_STUDENT_CLEAR = \"connect_student_clear\";\n\nexport const SET_ENVIRONMENT = \"set_environment\";\n\nexport const SAVE_LAST_USED_TIMESTAMP = \"save_last_used_timestamp\";\n\nexport const SAVE_LOCATION_PERMISSION = \"save_location_permission\";\n\nexport const GET_FUTURE_ENTRIES_START = \"get_future_entries_start\";\nexport const GET_FUTURE_ENTRIES_SUCCESS = \"get_future_entries_success\";\nexport const GET_FUTURE_ENTRIES_FAILURE = \"get_future_entries_failure\";\nexport const GET_FUTURE_ENTRIES_CLEAR = \"get_future_entries_clear\";\n\nexport const TOGGLE_MODAL = \"toggle_modal\";\nexport const HIDE_MODAL = \"hide_modal\";\n\nexport const TOGGLE_CHECKIN_QUEST_ANS = \"toggle_quest_ans\";\n\nexport const SET_HELPLIST = \"set_helplist\";\nexport const SET_OLD_HELPLIST = \"set_old_helplist\";\n\nexport const HIDE_ADS = \"hide_ads\";\n\nexport const SAVE_PHOTO = \"save_photo\";\nexport const SAVE_ALL_PHOTOS = \"save_all_photos\";\n\n// Upload delegate Image\nexport const UPLOAD_DELEGATE_IMAGE_START = \"upload_delegate_image_start\";\nexport const UPLOAD_DELEGATE_IMAGE_SUCCESS = \"upload_delegate_image_success\";\nexport const UPLOAD_DELEGATE_IMAGE_FAILED = \"upload_delegate_image_failed\";\nexport const UPLOAD_DELEGATE_IMAGE_CLEAR = \"upload_delegate_image_clear\";\n\n// Request Manual Review\nexport const REQUEST_MANUAL_REVIEW_START = \"request_manual_review_start\";\nexport const REQUEST_MANUAL_REVIEW_SUCCESS = \"request_manual_review_success\";\nexport const REQUEST_MANUAL_REVIEW_FAILED = \"request_manual_review_failed\";\nexport const REQUEST_MANUAL_REVIEW_CLEAR = \"request_manual_review_clear\";\n\n// Cancel Manual Review\nexport const CANCEL_MANUAL_REVIEW_START = \"cancel_manual_review_start\";\nexport const CANCEL_MANUAL_REVIEW_SUCCESS = \"cancel_manual_review_success\";\nexport const CANCEL_MANUAL_REVIEW_FAILED = \"cancel_manual_review_failed\";\nexport const CANCEL_MANUAL_REVIEW_CLEAR = \"cancel_manual_review_clear\";\n\n// Get Delegate\nexport const GET_DELEGATE_START = \"get_delegate_start\";\nexport const GET_DELEGATE_SUCCESS = \"get_delegate_success\";\nexport const GET_DELEGATE_FAILED = \"get_delegate_failed\";\nexport const GET_DELEGATE_CLEAR = \"get_delegate_clear\";\n\n// User Account Delete\nexport const ACCOUNT_DELETE_START = \"account_delete_start\";\nexport const ACCOUNT_DELETE_SUCCESS = \"account_delete_success\";\nexport const ACCOUNT_DELETE_FAILED = \"account_delete_failed\";\nexport const ACCOUNT_DELETE_CLEAR = \"account_delete_clear\";\n\nexport const SAVE_TERMS_ACCEPTED = \"save_terms_accepted\";\n\n// Ask me later and Don't ask me data save\nexport const ASK_ME_LATER_SAVE = \"ask_me_later_save\";\nexport const ASK_ME_LATER_GET = \"ask_me_later_get\";\nexport const ASK_ME_LATER_CLEAR = \"ask_me_later_clear\";\nexport const DONT_ASK_ME_SAVE = \"dont_ask_me_save\";\nexport const DONT_ASK_ME_CLEAR = \"dont_ask_me_clear\";\n\nexport const BACKTOSCHOOL_DATA_FILLED = 'backtoschool_data_filled';","import {\n CHECK_EMAIL_START,\n CHECK_EMAIL_SUCCESS,\n CHECK_EMAIL_FAILED,\n CHECK_EMAIL_CLEAR,\n VERIFIED_EMAIL_START,\n VERIFIED_EMAIL_SUCCESS,\n VERIFIED_EMAIL_FAILED,\n VERIFIED_EMAIL_CLEAR,\n ADD_PHONE_NUMBER_USER_START,\n ADD_PHONE_NUMBER_USER_SUCCESS,\n ADD_PHONE_NUMBER_USER_FAILED,\n ADD_PHONE_NUMBER_USER_CLEAR,\n RE_SEND_EMAIL_START,\n RE_SEND_EMAIL_SUCCESS,\n RE_SEND_EMAIL_FAILED,\n RE_SEND_EMAIL_CLEAR,\n SAVE_REGISTRATION_INFO,\n SAVE_REGISTRATION_CLEAR,\n VERIFY_OTP_START,\n VERIFY_OTP_SUCCESS,\n VERIFY_OTP_FAILED,\n VERIFY_OTP_CLEAR,\n RE_SEND_OTP_START,\n RE_SEND_OTP_SUCCESS,\n RE_SEND_OTP_FAILED,\n RE_SEND_OTP_CLEAR,\n GET_USER_INFO_START,\n GET_USER_INFO_SUCCESS,\n GET_USER_INFO_FAILED,\n GET_USER_INFO_CLEAR,\n COMPLETE_REGISTRATION_USER_START,\n COMPLETE_REGISTRATION_USER_SUCCESS,\n COMPLETE_REGISTRATION_USER_FAILED,\n COMPLETE_REGISTRATION_USER_CLEAR,\n START_REGISTARTION_START,\n START_REGISTARTION_SUCCESS,\n START_REGISTARTION_FAILED,\n START_REGISTARTION_CLEAR,\n LOGIN_USER_START,\n LOGIN_USER_SUCCESS,\n LOGIN_USER_FAILED,\n LOGIN_USER_CLEAR,\n LOGIN_REGISTERED_USER,\n COUNTRY_CODE_LIST_START,\n COUNTRY_CODE_LIST_SUCCESS,\n COUNTRY_CODE_LIST_FAILED,\n COUNTRY_CODE_LIST_CLEAR,\n LOGOUT_USER,\n CHANGE_LOCALE_START,\n CHANGE_LOCALE_SUCCESS,\n CHANGE_LOCALE_FAILED,\n UPDATE_NAME_START,\n UPDATE_NAME_SUCCESS,\n UPDATE_NAME_FAILED,\n UPDATE_NAME_CLEAR,\n FORGOT_PASSWORD_START,\n FORGOT_PASSWORD_SUCCESS,\n FORGOT_PASSWORD_FAILED,\n FORGOT_PASSWORD_CLEAR,\n RAGISTRATION_VALID_START,\n RAGISTRATION_VALID_SUCCESS,\n RAGISTRATION_VALID_FAILED,\n UPDATE_PASSWORD_START,\n UPDATE_PASSWORD_SUCCESS,\n UPDATE_PASSWORD_FAILED,\n UPDATE_PASSWORD_CLEAR,\n GET_NOTIFICATIONS_START,\n GET_NOTIFICATIONS_SUCCESS,\n GET_NOTIFICATIONS_FAILED,\n GET_NOTIFICATIONS_CLEAR,\n SUBMIT_FEEDBACK_START,\n SUBMIT_FEEDBACK_SUCCESS,\n SUBMIT_FEEDBACK_FAILED,\n SUBMIT_FEEDBACK_CLEAR,\n GET_DELEGATES_START,\n GET_DELEGATES_SUCCESS,\n GET_DELEGATES_FAILED,\n GET_DELEGATES_CLEAR,\n APPROVED_DELEGATES_START,\n APPROVED_DELEGATES_SUCCESS,\n APPROVED_DELEGATES_FAILED,\n APPROVED_DELEGATES_CLEAR,\n APPROVED_DELEGATES_CHANGE_START,\n APPROVED_DELEGATES_CHANGE_SUCCESS,\n APPROVED_DELEGATES_CHANGE_FAILED,\n APPROVED_DELEGATES_CHANGE_CLEAR,\n DELEGATES_SET_DELETED_START,\n DELEGATES_SET_DELETED_SUCCESS,\n DELEGATES_SET_DELETED_FAILED,\n DELEGATES_SET_DELETED_CLEAR,\n UPDATE_DEVICE_TOKEN_START,\n UPDATE_DEVICE_TOKEN_SUCCESS,\n UPDATE_DEVICE_TOKEN_FAILED,\n UPDATE_DEVICE_TOKEN_CLEAR,\n GET_TOKEN_VALID_START,\n GET_TOKEN_VALID_SUCCESS,\n GET_TOKEN_VALID_FAILED,\n GET_TOKEN_VALID_CLEAR,\n GET_HELP_TOPICS_START,\n GET_HELP_TOPICS_SUCCESS,\n GET_HELP_TOPICS_FAILED,\n SEND_SUPPORT_REQUEST_START,\n SEND_SUPPORT_REQUEST_SUCCESS,\n SEND_SUPPORT_REQUEST_FAILED,\n SEND_SUPPORT_REQUEST_CLEAR,\n GET_NOTIFICATION_SETTING_START,\n GET_NOTIFICATION_SETTING_SUCCESS,\n GET_NOTIFICATION_SETTING_FAILED,\n UPDATE_NOTIFICATION_SETTING_START,\n UPDATE_NOTIFICATION_SETTING_SUCCESS,\n UPDATE_NOTIFICATION_SETTING_FAILED,\n UPDATE_NOTIFICATION_SETTING_CLEAR,\n LOG_ERRORS_BROWSER_START,\n LOG_ERRORS_BROWSER_SUCCESS,\n LOG_ERRORS_BROWSER_FAILED,\n LOG_ERRORS_BROWSER_CLEAR,\n LOG_ERRORS_FILE_START,\n LOG_ERRORS_FILE_SUCCESS,\n LOG_ERRORS_FILE_FAILED,\n LOG_ERRORS_FILE_CLEAR,\n CONNECT_STUDENT_START,\n CONNECT_STUDENT_SUCCESS,\n CONNECT_STUDENT_FAILED,\n CONNECT_STUDENT_CLEAR,\n GET_NOTIFICATION_SETTING_CLEAR,\n SET_ENVIRONMENT,\n SAVE_LAST_USED_TIMESTAMP,\n SAVE_LOCATION_PERMISSION,\n GET_FUTURE_ENTRIES_START,\n GET_FUTURE_ENTRIES_SUCCESS,\n GET_FUTURE_ENTRIES_FAILURE,\n TOGGLE_MODAL,\n HIDE_MODAL,\n TOGGLE_CHECKIN_QUEST_ANS,\n SET_HELPLIST,\n SET_OLD_HELPLIST,\n HIDE_ADS,\n GET_FUTURE_ENTRIES_CLEAR,\n SAVE_PHOTO,\n SAVE_ALL_PHOTOS,\n UPLOAD_DELEGATE_IMAGE_START,\n UPLOAD_DELEGATE_IMAGE_SUCCESS,\n UPLOAD_DELEGATE_IMAGE_FAILED,\n UPLOAD_DELEGATE_IMAGE_CLEAR,\n REQUEST_MANUAL_REVIEW_START,\n REQUEST_MANUAL_REVIEW_SUCCESS,\n REQUEST_MANUAL_REVIEW_FAILED,\n REQUEST_MANUAL_REVIEW_CLEAR,\n CANCEL_MANUAL_REVIEW_START,\n CANCEL_MANUAL_REVIEW_SUCCESS,\n CANCEL_MANUAL_REVIEW_FAILED,\n CANCEL_MANUAL_REVIEW_CLEAR,\n ACCOUNT_DELETE_START,\n ACCOUNT_DELETE_SUCCESS,\n ACCOUNT_DELETE_FAILED,\n ACCOUNT_DELETE_CLEAR,\n SAVE_TERMS_ACCEPTED,\n ASK_ME_LATER_SAVE,\n RESET_USER_LOCATION,\n BACKTOSCHOOL_DATA_FILLED\n} from \"../actions/userAccount/userActionType\";\n\nexport const INITIAL_STATE = {\n checkEmailResponse: null,\n verifiedEmailResponse: null,\n addPhoneNumberResponse: null,\n reSendEmailResponse: null,\n verifyOtpResponse: null,\n reSendOtpResponse: null,\n getUserInfoResponse: null,\n completeRegisterUserResponse: null, // REGISTRATION_INFO,\n registartionResponse: null,\n error: null,\n registeredEmail: null,\n registeredFirstname: null,\n registeredLastname: null,\n registeredPhone: null,\n registeredCountryCode: null,\n registeredCountryName: null,\n registeredPassword: null,\n registeredResultCache: null,\n verifiedEmail: null,\n userLoginInfo: null,\n countryCodeListing: [],\n chnageLocaleResponse: null,\n updateNameResponse: null,\n forgotPasswordResponse: null,\n forgotPasswordSuccess: false,\n logErrorsBrowserResponse: null,\n logErrorsFileResponse: null,\n studentConnectResponse: null,\n validRegistartionResponse: null,\n updatePasswordResponse: null,\n notifications: [],\n newFetchedNotifications: [],\n submitFeedbackResponse: null,\n getDelegatesResponse: [],\n approvedDelegatesResponse: [],\n approvedDelegatesChangeResponse: null,\n delegatesSetDeletedResponse: null,\n deviceTokenUpdateResponse: null,\n isTokenValidResponse: null,\n helpTopics: [],\n supportResponse: null,\n settingNotifications: null,\n updateNotificationSetting: null,\n environment: \"prod\",\n lastUsedTimestamp: new Date().getTime(),\n currentLocationPermission: \"notDetermined\",\n futureEntries: [],\n modalLevelInfo: [],\n checkInQuestAnsView: {},\n setHelpListData: {},\n oldHelpInfo: {},\n displayAds: false,\n avatarsPaths: {},\n delegateImageUploadResponse: null,\n delegateImageUploadError: null,\n manualReviewRequest: null,\n manualReviewCancelResponse: null,\n deleteAccount: null,\n isTermsAccepted: false,\n isTermsAcceptedDate: null,\n nextAskMeLater: null,\n backToSchoolFilled: false,\n};\n\nexport default (state = INITIAL_STATE, action) => {\n switch (action.type) {\n case LOGOUT_USER:\n case SAVE_REGISTRATION_CLEAR:\n return {\n ...INITIAL_STATE,\n environment: state.environment,\n isTermsAccepted: state.isTermsAccepted,\n isTermsAcceptedDate: state.isTermsAcceptedDate,\n nextAskMeLater: state.nextAskMeLater,\n };\n case SAVE_LAST_USED_TIMESTAMP:\n // console.log(\"SAVE_LAST_USED_TIMESTAMP \");\n return {\n ...state,\n lastUsedTimestamp: new Date().getTime(),\n };\n case START_REGISTARTION_START:\n return {\n ...state,\n error: null,\n registartionResponse: null,\n registeredResultCache: null,\n };\n case START_REGISTARTION_SUCCESS:\n return {\n ...state,\n registartionResponse: action.payload,\n registeredResultCache: action.payload,\n error: null,\n };\n case START_REGISTARTION_FAILED:\n return {\n ...state,\n registartionResponse: null,\n error: action.payload,\n registeredResultCache: null,\n };\n case START_REGISTARTION_CLEAR:\n return {\n ...state,\n registartionResponse: null,\n error: action.payload,\n };\n\n case CHECK_EMAIL_START:\n return { ...state, error: null };\n case CHECK_EMAIL_SUCCESS:\n return {\n ...state,\n checkEmailResponse: action.payload,\n error: null,\n };\n case CHECK_EMAIL_FAILED:\n return {\n ...state,\n checkEmailResponse: null,\n error: action.payload,\n };\n case CHECK_EMAIL_CLEAR:\n return {\n ...state,\n checkEmailResponse: null,\n error: null,\n };\n case VERIFIED_EMAIL_START:\n return { ...state, error: null };\n case VERIFIED_EMAIL_SUCCESS:\n return {\n ...state,\n verifiedEmailResponse: action.payload,\n error: null,\n };\n case VERIFIED_EMAIL_FAILED:\n return {\n ...state,\n verifiedEmailResponse: action.payload,\n error: null,\n };\n case VERIFIED_EMAIL_CLEAR:\n return {\n ...state,\n verifiedEmailResponse: null,\n error: null,\n };\n\n case ADD_PHONE_NUMBER_USER_START:\n return { ...state, error: null };\n case ADD_PHONE_NUMBER_USER_SUCCESS:\n return {\n ...state,\n addPhoneNumberResponse: action.payload,\n error: null,\n };\n case ADD_PHONE_NUMBER_USER_FAILED:\n return {\n ...state,\n addPhoneNumberResponse: null,\n error: action.payload,\n };\n case ADD_PHONE_NUMBER_USER_CLEAR:\n return {\n ...state,\n addPhoneNumberResponse: null,\n error: null,\n };\n case RE_SEND_EMAIL_START:\n return { ...state, error: null };\n case RE_SEND_EMAIL_SUCCESS:\n return {\n ...state,\n reSendEmailResponse: action.payload,\n error: null,\n };\n case RE_SEND_EMAIL_FAILED:\n return {\n ...state,\n reSendEmailResponse: null,\n error: action.payload,\n };\n case RE_SEND_EMAIL_CLEAR:\n return {\n ...state,\n reSendEmailResponse: null,\n error: null,\n };\n case SAVE_REGISTRATION_INFO: {\n let {\n registeredEmail,\n registeredPassword,\n registeredFirstname,\n registeredLastname,\n registeredPhone,\n registeredCountryCode,\n registeredCountryName,\n verifiedEmail,\n } = { ...state };\n\n if (action.payload.registeredEmail != null) {\n registeredEmail = action.payload.registeredEmail;\n }\n if (action.payload.registeredPassword != null) {\n registeredPassword = action.payload.registeredPassword;\n }\n if (action.payload.registeredFirstname != null) {\n registeredFirstname = action.payload.registeredFirstname;\n }\n if (action.payload.registeredLastname != null) {\n registeredLastname = action.payload.registeredLastname;\n }\n if (action.payload.registeredPhone != null) {\n registeredPhone = action.payload.registeredPhone;\n }\n if (action.payload.registeredCountryCode != null) {\n registeredCountryCode = action.payload.registeredCountryCode;\n }\n\n if (action.payload.registeredCountryName != null) {\n registeredCountryName = action.payload.registeredCountryName;\n }\n if (action.payload.verifiedEmail != null) {\n verifiedEmail = action.payload.verifiedEmail;\n }\n\n return {\n ...state,\n registeredEmail,\n registeredPassword,\n registeredFirstname,\n registeredLastname,\n registeredPhone,\n registeredCountryCode,\n registeredCountryName,\n verifiedEmail,\n };\n }\n case VERIFY_OTP_START:\n return { ...state, error: null };\n case VERIFY_OTP_SUCCESS:\n return {\n ...state,\n verifyOtpResponse: action.payload,\n error: null,\n };\n case VERIFY_OTP_FAILED:\n return {\n ...state,\n verifyOtpResponse: null,\n error: action.payload,\n };\n case VERIFY_OTP_CLEAR:\n return {\n ...state,\n verifyOtpResponse: null,\n error: null,\n };\n case RE_SEND_OTP_START:\n return { ...state, error: null };\n case RE_SEND_OTP_SUCCESS:\n return {\n ...state,\n reSendOtpResponse: action.payload,\n error: null,\n };\n case RE_SEND_OTP_FAILED:\n return {\n ...state,\n reSendOtpResponse: null,\n error: action.payload,\n };\n case RE_SEND_OTP_CLEAR:\n return {\n ...state,\n reSendOtpResponse: null,\n error: null,\n };\n\n case GET_USER_INFO_START:\n return { ...state, error: null };\n case GET_USER_INFO_SUCCESS:\n return {\n ...state,\n getUserInfoResponse: action.payload,\n error: null,\n };\n case GET_USER_INFO_FAILED:\n return {\n ...state,\n getUserInfoResponse: null,\n error: action.payload,\n };\n case GET_USER_INFO_CLEAR:\n return {\n ...state,\n getUserInfoResponse: null,\n error: null,\n };\n\n case COMPLETE_REGISTRATION_USER_START:\n return { ...state, error: null };\n case COMPLETE_REGISTRATION_USER_SUCCESS:\n return {\n ...state,\n completeRegisterUserResponse: action.payload,\n error: null,\n };\n case COMPLETE_REGISTRATION_USER_FAILED:\n return {\n ...state,\n completeRegisterUserResponse: null,\n error: action.payload,\n };\n case COMPLETE_REGISTRATION_USER_CLEAR:\n return {\n ...state,\n completeRegisterUserResponse: null,\n error: null,\n };\n case LOGIN_REGISTERED_USER:\n return {\n ...state,\n userLoginInfo: action.payload,\n error: null,\n };\n case LOGIN_USER_START:\n return {\n ...state,\n error: null,\n userLoginInfo: null,\n registeredEmail: action.payload,\n };\n\n case LOGIN_USER_SUCCESS:\n return {\n ...state,\n userLoginInfo: action.payload,\n registeredEmail: state.registeredEmail,\n error: null,\n };\n case LOGIN_USER_FAILED:\n return {\n ...state,\n userLoginInfo: null,\n error: action.payload,\n };\n case LOGIN_USER_CLEAR:\n return {\n ...state,\n userLoginInfo: null,\n error: null,\n };\n\n case COUNTRY_CODE_LIST_START:\n return { ...state, error: null };\n case COUNTRY_CODE_LIST_SUCCESS:\n return {\n ...state,\n countryCodeListing: action.payload,\n error: null,\n };\n case CHANGE_LOCALE_START:\n return { ...state, error: null, chnageLocaleResponse: null };\n case CHANGE_LOCALE_SUCCESS:\n return {\n ...state,\n chnageLocaleResponse: action.payload,\n error: null,\n };\n case CHANGE_LOCALE_FAILED:\n return {\n ...state,\n chnageLocaleResponse: null,\n error: action.payload,\n };\n\n case UPDATE_NAME_START:\n return {\n ...state,\n error: null,\n updateNameResponse: null,\n };\n case UPDATE_NAME_SUCCESS: {\n const userLoginInfo = { ...state.userLoginInfo };\n // console.log(\"userLoginInfo UPDATE_NAME_SUCCESS \", userLoginInfo);\n // console.log(\"userLoginInfo UPDATE_NAME_SUCCESS action \", action.payload);\n userLoginInfo.firstName = action.payload.firstName;\n userLoginInfo.lastName = action.payload.lastName;\n return {\n ...state,\n updateNameResponse: action.payload.response,\n error: null,\n userLoginInfo,\n };\n }\n case UPDATE_NAME_FAILED:\n return {\n ...state,\n updateNameResponse: null,\n error: action.payload,\n };\n case UPDATE_NAME_CLEAR:\n return {\n ...state,\n updateNameResponse: null,\n error: action.payload,\n };\n case FORGOT_PASSWORD_START:\n return {\n ...state,\n error: null,\n forgotPasswordSuccess: false,\n forgotPasswordResponse: null,\n };\n case FORGOT_PASSWORD_SUCCESS:\n return {\n ...state,\n forgotPasswordResponse: action.payload,\n forgotPasswordSuccess: true,\n error: null,\n };\n case FORGOT_PASSWORD_FAILED:\n return {\n ...state,\n forgotPasswordResponse: null,\n forgotPasswordSuccess: false,\n error: action.payload,\n };\n case FORGOT_PASSWORD_CLEAR:\n return {\n ...state,\n forgotPasswordResponse: null,\n forgotPasswordSuccess: false,\n error: action.payload,\n };\n case RAGISTRATION_VALID_START:\n return {\n ...state,\n error: null,\n validRegistartionResponse: null,\n };\n case RAGISTRATION_VALID_SUCCESS:\n return {\n ...state,\n validRegistartionResponse: action.payload,\n\n error: null,\n };\n case RAGISTRATION_VALID_FAILED:\n return {\n ...state,\n validRegistartionResponse: null,\n error: action.payload,\n };\n\n case UPDATE_PASSWORD_START:\n return {\n ...state,\n error: null,\n updatePasswordResponse: null,\n };\n case UPDATE_PASSWORD_SUCCESS:\n return {\n ...state,\n updatePasswordResponse: action.payload,\n error: null,\n };\n case UPDATE_PASSWORD_FAILED:\n return {\n ...state,\n updatePasswordResponse: null,\n error: action.payload,\n };\n case UPDATE_PASSWORD_CLEAR:\n return {\n ...state,\n updatePasswordResponse: null,\n error: action.payload,\n };\n case GET_NOTIFICATIONS_START:\n return {\n ...state,\n error: null,\n newFetchedNotifications: [],\n };\n case GET_NOTIFICATIONS_SUCCESS: {\n let notifications = [...state.notifications];\n notifications = notifications.concat(action.payload);\n return {\n ...state,\n notifications,\n newFetchedNotifications: action.payload,\n error: null,\n };\n }\n case GET_NOTIFICATIONS_FAILED:\n return {\n ...state,\n error: action.payload,\n };\n case GET_NOTIFICATIONS_CLEAR:\n return {\n ...state,\n error: null,\n notifications: [],\n };\n case SUBMIT_FEEDBACK_START:\n return {\n ...state,\n error: null,\n submitFeedbackResponse: null,\n };\n case SUBMIT_FEEDBACK_SUCCESS:\n return {\n ...state,\n submitFeedbackResponse: action.payload,\n error: null,\n };\n case SUBMIT_FEEDBACK_FAILED:\n return {\n ...state,\n submitFeedbackResponse: null,\n error: action.payload,\n };\n case SUBMIT_FEEDBACK_CLEAR:\n return {\n ...state,\n submitFeedbackResponse: null,\n error: null,\n };\n case GET_DELEGATES_START:\n return {\n ...state,\n error: null,\n getDelegatesResponse: [],\n };\n case GET_DELEGATES_SUCCESS:\n return {\n ...state,\n getDelegatesResponse: action.payload,\n error: null,\n };\n case GET_DELEGATES_FAILED:\n return {\n ...state,\n getDelegatesResponse: null,\n error: action.payload,\n };\n case GET_DELEGATES_CLEAR:\n return {\n ...state,\n getDelegatesResponse: [],\n error: action.payload,\n };\n case APPROVED_DELEGATES_START:\n return {\n ...state,\n error: null,\n approvedDelegatesResponse: [],\n };\n case APPROVED_DELEGATES_SUCCESS:\n return {\n ...state,\n approvedDelegatesResponse: action.payload,\n error: null,\n };\n case APPROVED_DELEGATES_FAILED:\n return {\n ...state,\n approvedDelegatesResponse: [],\n error: action.payload,\n };\n case APPROVED_DELEGATES_CLEAR:\n return {\n ...state,\n approvedDelegatesResponse: [],\n error: null,\n };\n case APPROVED_DELEGATES_CHANGE_START:\n return {\n ...state,\n error: null,\n approvedDelegatesChangeResponse: null,\n };\n case APPROVED_DELEGATES_CHANGE_SUCCESS:\n return {\n ...state,\n approvedDelegatesChangeResponse: action.payload,\n error: null,\n };\n case APPROVED_DELEGATES_CHANGE_FAILED:\n return {\n ...state,\n approvedDelegatesChangeResponse: null,\n error: action.payload,\n };\n case APPROVED_DELEGATES_CHANGE_CLEAR:\n return {\n ...state,\n approvedDelegatesChangeResponse: null,\n error: action.payload,\n };\n case DELEGATES_SET_DELETED_START:\n return {\n ...state,\n error: null,\n delegatesSetDeletedResponse: null,\n };\n case DELEGATES_SET_DELETED_SUCCESS:\n return {\n ...state,\n delegatesSetDeletedResponse: action.payload,\n error: null,\n };\n case DELEGATES_SET_DELETED_FAILED:\n return {\n ...state,\n delegatesSetDeletedResponse: null,\n error: action.payload,\n };\n case DELEGATES_SET_DELETED_CLEAR:\n return {\n ...state,\n delegatesSetDeletedResponse: null,\n error: action.payload,\n };\n case UPDATE_DEVICE_TOKEN_START:\n return {\n ...state,\n error: null,\n deviceTokenUpdateResponse: null,\n };\n case UPDATE_DEVICE_TOKEN_SUCCESS:\n return {\n ...state,\n deviceTokenUpdateResponse: action.payload,\n error: null,\n };\n case UPDATE_DEVICE_TOKEN_FAILED:\n return {\n ...state,\n deviceTokenUpdateResponse: null,\n error: action.payload,\n };\n case UPDATE_DEVICE_TOKEN_CLEAR:\n return {\n ...state,\n deviceTokenUpdateResponse: null,\n error: action.payload,\n };\n case GET_TOKEN_VALID_START:\n return {\n ...state,\n error: null,\n isTokenValidResponse: null,\n };\n case GET_TOKEN_VALID_SUCCESS:\n return {\n ...state,\n isTokenValidResponse: action.payload,\n error: null,\n };\n case GET_TOKEN_VALID_FAILED:\n return {\n ...state,\n isTokenValidResponse: null,\n error: action.payload,\n };\n case GET_TOKEN_VALID_CLEAR:\n return {\n ...state,\n isTokenValidResponse: null,\n error: action.payload,\n };\n case GET_HELP_TOPICS_START:\n return {\n ...state,\n error: null,\n helpTopics: [],\n };\n case GET_HELP_TOPICS_SUCCESS:\n return {\n ...state,\n helpTopics: action.payload,\n error: null,\n };\n case GET_HELP_TOPICS_FAILED:\n return {\n ...state,\n helpTopics: [],\n error: action.payload,\n };\n case SEND_SUPPORT_REQUEST_START:\n return {\n ...state,\n supportResponse: null,\n error: null,\n };\n case SEND_SUPPORT_REQUEST_SUCCESS:\n return {\n ...state,\n supportResponse: action.payload,\n error: null,\n };\n case SEND_SUPPORT_REQUEST_FAILED:\n return {\n ...state,\n supportResponse: null,\n error: action.payload,\n };\n case SEND_SUPPORT_REQUEST_CLEAR:\n return {\n ...state,\n supportResponse: null,\n error: null,\n };\n case GET_NOTIFICATION_SETTING_START:\n return {\n ...state,\n error: null,\n settingNotifications: null,\n };\n case GET_NOTIFICATION_SETTING_SUCCESS:\n return {\n ...state,\n settingNotifications: action.payload,\n error: null,\n };\n case GET_NOTIFICATION_SETTING_FAILED:\n return {\n ...state,\n settingNotifications: null,\n error: action.payload,\n };\n\n case GET_NOTIFICATION_SETTING_CLEAR:\n return {\n ...state,\n settingNotifications: null,\n error: null,\n };\n case UPDATE_NOTIFICATION_SETTING_START:\n return {\n ...state,\n updateNotificationSetting: null,\n error: null,\n };\n case UPDATE_NOTIFICATION_SETTING_SUCCESS:\n return {\n ...state,\n updateNotificationSetting: action.payload,\n error: null,\n };\n case UPDATE_NOTIFICATION_SETTING_FAILED:\n return {\n ...state,\n updateNotificationSetting: null,\n error: action.payload,\n };\n case UPDATE_NOTIFICATION_SETTING_CLEAR:\n return {\n ...state,\n updateNotificationSetting: null,\n error: null,\n };\n case SET_ENVIRONMENT:\n // console.log(`************ SAVE SET_ENVIRONMENT=${action.payload}`);\n return {\n ...state,\n environment: action.payload,\n };\n case SAVE_LOCATION_PERMISSION:\n return {\n ...state,\n currentLocationPermission: action.payload,\n };\n case LOG_ERRORS_BROWSER_START:\n return {\n ...state,\n error: null,\n logErrorsBrowserResponse: null,\n };\n case LOG_ERRORS_BROWSER_SUCCESS:\n return {\n ...state,\n logErrorsBrowserResponse: action.payload,\n error: null,\n };\n case LOG_ERRORS_BROWSER_FAILED:\n return {\n ...state,\n logErrorsBrowserResponse: null,\n error: action.payload,\n };\n case LOG_ERRORS_BROWSER_CLEAR:\n return {\n ...state,\n logErrorsBrowserResponse: null,\n error: action.payload,\n };\n case LOG_ERRORS_FILE_START:\n return {\n ...state,\n error: null,\n logErrorsFileResponse: null,\n };\n case LOG_ERRORS_FILE_SUCCESS:\n return {\n ...state,\n logErrorsFileResponse: action.payload,\n error: null,\n };\n case LOG_ERRORS_FILE_FAILED:\n return {\n ...state,\n logErrorsFileResponse: null,\n error: action.payload,\n };\n case LOG_ERRORS_FILE_CLEAR:\n return {\n ...state,\n logErrorsFileResponse: null,\n error: action.payload,\n };\n case CONNECT_STUDENT_START:\n return {\n ...state,\n error: null,\n studentConnectResponse: null,\n };\n case CONNECT_STUDENT_SUCCESS:\n return {\n ...state,\n studentConnectResponse: action.payload,\n error: null,\n };\n case CONNECT_STUDENT_FAILED:\n return {\n ...state,\n studentConnectResponse: null,\n error: action.payload,\n };\n case CONNECT_STUDENT_CLEAR:\n return {\n ...state,\n studentConnectResponse: null,\n error: null,\n };\n case GET_FUTURE_ENTRIES_START:\n return {\n ...state,\n futureEntries: [],\n error: null,\n };\n case GET_FUTURE_ENTRIES_SUCCESS:\n return {\n ...state,\n futureEntries: action.payload,\n error: null,\n };\n case GET_FUTURE_ENTRIES_FAILURE:\n return {\n ...state,\n futureEntries: [],\n error: action.payload,\n };\n case GET_FUTURE_ENTRIES_CLEAR:\n return {\n ...state,\n futureEntries: [],\n };\n case TOGGLE_MODAL: {\n // let modalLevel = action.payload.modalLevel;\n let modalLevelInfo = [...state.modalLevelInfo];\n if (!modalLevelInfo || modalLevelInfo === undefined) modalLevelInfo = [];\n // console.log(\"MODAL REDUX TOGGLE_MODAL before \", modalLevelInfo);\n const len = modalLevelInfo.length;\n const modalInfo = action.payload;\n if (\n len < 4 &&\n modalInfo &&\n modalInfo.modalScreenName &&\n modalInfo.modalScreenName !== undefined\n ) {\n modalLevelInfo.push({});\n modalLevelInfo[len] = {\n modalScreenName: action.payload.modalScreenName,\n modalClassName: action.payload.modalClassName,\n params: action.payload.params,\n };\n }\n // console.log(\"MODAL REDUX TOGGLE_MODAL after \", modalLevelInfo);\n\n return {\n ...state,\n modalLevelInfo,\n };\n }\n case HIDE_MODAL: {\n const modalLevelInfo = [...state.modalLevelInfo];\n if (modalLevelInfo.length > 0) modalLevelInfo.pop();\n\n // console.log(\"MODAL REDUX HIDE_MODAL update \", modalLevelInfo);\n return {\n ...state,\n modalLevelInfo,\n };\n }\n case TOGGLE_CHECKIN_QUEST_ANS: {\n // console.log(\"TOGGLE_CHECKIN_QUEST_ANS \", action.payload);\n const checkInQuestAnsView = {\n status: action.payload.status,\n showSchoolChildrenList: action.payload.showSchoolChildrenList,\n params: action.payload.params,\n };\n return {\n ...state,\n checkInQuestAnsView,\n };\n }\n case SET_HELPLIST: {\n const setHelpListData = {\n stackType: action.payload.stackType,\n screen: action.payload.screen,\n title: action.payload.title,\n modalLevel: action.payload.modalLevel,\n };\n // console.log(\"SET_HELPLIST setHelpListData \", setHelpListData);\n return {\n ...state,\n setHelpListData,\n };\n }\n case HIDE_ADS: {\n //console.log(\"TOGGLE_CHECKIN_QUEST_ANS \", action.payload);\n const displayAds = action.payload.displayAds;\n return {\n ...state,\n displayAds,\n };\n }\n\n case SAVE_PHOTO: {\n const avatarsPaths = { ...state.avatarsPaths };\n avatarsPaths[action.payload.id] = action.payload.filename;\n\n console.log(\"SAVE_PHOTO action\", action.payload);\n console.log(\"SAVE_PHOTO all avatarsPaths\", avatarsPaths);\n return {\n ...state,\n avatarsPaths,\n };\n }\n case SAVE_ALL_PHOTOS: {\n console.log(\"SAVE_ALL_PHOTOS\", action.payload);\n return {\n ...state,\n avatarsPaths: action.payload,\n };\n }\n\n case UPLOAD_DELEGATE_IMAGE_START:\n return {\n ...state,\n delegateImageUploadError: null,\n delegateImageUploadResponse: null,\n };\n case UPLOAD_DELEGATE_IMAGE_SUCCESS:\n return {\n ...state,\n delegateImageUploadResponse: action.payload,\n delegateImageUploadError: null,\n };\n case UPLOAD_DELEGATE_IMAGE_FAILED:\n return {\n ...state,\n delegateImageUploadResponse: null,\n delegateImageUploadError: action.payload,\n };\n case UPLOAD_DELEGATE_IMAGE_CLEAR:\n return {\n ...state,\n delegateImageUploadResponse: null,\n delegateImageUploadError: null,\n };\n case CANCEL_MANUAL_REVIEW_START:\n return {\n ...state,\n error: null,\n manualReviewCancelResponse: null,\n };\n case CANCEL_MANUAL_REVIEW_SUCCESS:\n return {\n ...state,\n manualReviewCancelResponse: action.payload,\n error: null,\n };\n case CANCEL_MANUAL_REVIEW_FAILED:\n return {\n ...state,\n manualReviewCancelResponse: null,\n error: action.payload,\n };\n case CANCEL_MANUAL_REVIEW_CLEAR:\n return {\n ...state,\n manualReviewCancelResponse: null,\n error: null,\n };\n case REQUEST_MANUAL_REVIEW_START:\n return {\n ...state,\n error: null,\n manualReviewRequest: null,\n };\n case REQUEST_MANUAL_REVIEW_SUCCESS:\n return {\n ...state,\n manualReviewRequest: action.payload,\n error: null,\n };\n case REQUEST_MANUAL_REVIEW_FAILED:\n return {\n ...state,\n manualReviewRequest: null,\n error: action.payload,\n };\n case REQUEST_MANUAL_REVIEW_CLEAR:\n return {\n ...state,\n manualReviewRequest: null,\n error: null,\n };\n\n case ACCOUNT_DELETE_START:\n return {\n ...state,\n error: null,\n deleteAccount: null,\n };\n case ACCOUNT_DELETE_SUCCESS:\n return {\n ...state,\n deleteAccount: action.payload,\n error: null,\n };\n case ACCOUNT_DELETE_FAILED:\n return {\n ...state,\n deleteAccount: null,\n error: action.payload,\n };\n case ACCOUNT_DELETE_CLEAR:\n return {\n ...state,\n deleteAccount: null,\n error: null,\n };\n case SAVE_TERMS_ACCEPTED: {\n return {\n ...state,\n isTermsAccepted: action.payload,\n isTermsAcceptedDate: new Date().getTime(),\n error: null,\n };\n }\n case ASK_ME_LATER_SAVE:\n return {\n ...state,\n error: null,\n nextAskMeLater: action.payload,\n };\n case BACKTOSCHOOL_DATA_FILLED:\n return {\n ...state,\n backToSchoolFilled: true,\n };\n\n default:\n return state;\n }\n};\n","/* eslint-disable linebreak-style */\nexport default (state = {}, action) => {\n if (!action) return state;\n const { type } = action;\n //// console.log('loading reducer', state);\n const matches = /(.*)_(start|success|failed)/.exec(type);\n\n // not a *_REQUEST / *_SUCCESS / *_FAILURE actions, so we ignore them\n\n if (!matches) return state;\n // console.log(\"loading reducer \" + JSON.stringify(state));\n\n const [, requestName, requestState] = matches;\n //// console.log(`requestName ${requestName} requestState ${requestState}`);\n //// console.log(`loading state ${JSON.stringify(state)} `);\n return {\n ...state,\n // Store whether a request is happening at the moment or not\n // e.g. will be true when receiving GET_TODOS_REQUEST\n // and false when receiving GET_TODOS_SUCCESS / GET_TODOS_FAILURE\n [requestName]: requestState === \"start\",\n };\n};\n","// Get school pickup time\nexport const GET_SCHOOL_PICKUP_TIME_START = \"get_school_pickup_time_start\";\nexport const GET_SCHOOL_PICKUP_TIME_SUCCESS = \"get_school_pickup_time_success\";\nexport const GET_SCHOOL_PICKUP_TIME_FAILED = \"get_school_pickup_time_failed\";\nexport const GET_SCHOOL_PICKUP_TIME_CLEAR = \"get_school_pickup_time_clear\";\n\nexport const GET_SCHOOL_PICKUP_MODE_START = \"get_school_pickup_mode_start\";\nexport const GET_SCHOOL_PICKUP_MODE_SUCCESS = \"get_school_pickup_mode_success\";\nexport const GET_SCHOOL_PICKUP_MODE_FAILED = \"get_school_pickup_mode_failed\";\n\nexport const GET_ABSENT_REASON_START = \"get_absent_reason_start\";\nexport const GET_ABSENT_REASON_SUCCESS = \"get_absent_reason_success\";\nexport const GET_ABSENT_REASON_FAILED = \"get_absent_reason_failed\";\n\nexport const GET_SCHOOL_AFTER_SCHOOL_START = \"get_school_after_school_start\";\nexport const GET_SCHOOL_AFTER_SCHOOL_SUCCESS =\n \"get_school_after_school_success\";\nexport const GET_SCHOOL_AFTER_SCHOOL_FAILED = \"get_school_after_school_failed\";\n\n// export const GET_SELECTED_SCHOOL_INFO_START = 'get_selected_school_info_start';\n// export const GET_SELECTED_SCHOOL_INFO_SUCCESS = 'get_selected_info_success';\n// export const GET_SELECTED_SCHOOL_INFO_FAILED = 'get_selected_info_failed';\n// export const GET_SELECTED_SCHOOL_INFO_CLEAR = 'get_selected_info_clear';\n\nexport const GET_HELP_START = \"get_help_start\";\nexport const GET_HELP_SUCCESS = \"get_help_success\";\nexport const GET_HELP_FAILED = \"get_help_failed\";\nexport const GET_HELP_CLAER = \"get_help_clear\";\n","import {\n GET_SCHOOL_PICKUP_TIME_START,\n GET_SCHOOL_PICKUP_TIME_SUCCESS,\n GET_SCHOOL_PICKUP_TIME_FAILED,\n GET_SCHOOL_PICKUP_MODE_START,\n GET_SCHOOL_PICKUP_MODE_SUCCESS,\n GET_SCHOOL_PICKUP_MODE_FAILED,\n GET_ABSENT_REASON_START,\n GET_ABSENT_REASON_SUCCESS,\n GET_ABSENT_REASON_FAILED,\n GET_SCHOOL_AFTER_SCHOOL_START,\n GET_SCHOOL_AFTER_SCHOOL_SUCCESS,\n GET_SCHOOL_AFTER_SCHOOL_FAILED,\n GET_SCHOOL_PICKUP_TIME_CLEAR,\n GET_HELP_START,\n GET_HELP_SUCCESS,\n GET_HELP_FAILED,\n GET_HELP_CLAER,\n} from \"../actions/school/schoolActionType\";\nimport { LOGOUT_USER } from \"../actions/userAccount/userActionType\";\n\nexport const INITIAL_STATE = {\n schoolDismissalDetails: null,\n schoolPickupModeDetails: [],\n absentReasonResponse: null,\n getAfterSchoolRecord: [],\n helpRecord: null,\n error: null,\n};\n\nexport default (state = INITIAL_STATE, action) => {\n switch (action.type) {\n case LOGOUT_USER:\n return {\n ...INITIAL_STATE,\n };\n\n case GET_SCHOOL_PICKUP_TIME_START:\n return { ...state, error: null, schoolDismissalDetails: null };\n case GET_SCHOOL_PICKUP_TIME_SUCCESS:\n return {\n ...state,\n schoolDismissalDetails: action.payload,\n error: null,\n };\n case GET_SCHOOL_PICKUP_TIME_FAILED:\n return {\n ...state,\n schoolDismissalDetails: null,\n error: action.payload,\n };\n case GET_SCHOOL_PICKUP_TIME_CLEAR:\n return {\n ...state,\n schoolDismissalDetails: null,\n error: null,\n };\n case GET_SCHOOL_PICKUP_MODE_START:\n return { ...state, error: null, schoolPickupModeDetails: [] };\n case GET_SCHOOL_PICKUP_MODE_SUCCESS:\n return {\n ...state,\n schoolPickupModeDetails: action.payload,\n error: null,\n };\n case GET_SCHOOL_PICKUP_MODE_FAILED:\n return {\n ...state,\n schoolPickupModeDetails: [],\n error: action.payload,\n };\n case GET_ABSENT_REASON_START:\n return { ...state, error: null, absentReasonResponse: null };\n case GET_ABSENT_REASON_SUCCESS:\n return {\n ...state,\n absentReasonResponse: action.payload,\n error: null,\n };\n case GET_ABSENT_REASON_FAILED:\n return {\n ...state,\n absentReasonResponse: null,\n error: action.payload,\n };\n case GET_SCHOOL_AFTER_SCHOOL_START:\n return { ...state, error: null, getAfterSchoolRecord: [] };\n case GET_SCHOOL_AFTER_SCHOOL_SUCCESS:\n return {\n ...state,\n getAfterSchoolRecord: action.payload,\n error: null,\n };\n case GET_SCHOOL_AFTER_SCHOOL_FAILED:\n return {\n ...state,\n getAfterSchoolRecord: [],\n error: action.payload,\n };\n case GET_HELP_START:\n return { ...state, error: null, helpRecord: null };\n case GET_HELP_SUCCESS:\n // console.log(\"GET_HELP_SUCCESS \", action.payload)\n return {\n ...state,\n helpRecord: action.payload,\n error: null,\n };\n case GET_HELP_FAILED:\n return {\n ...state,\n helpRecord: null,\n error: action.payload,\n };\n case GET_HELP_CLAER:\n return {\n ...state,\n helpRecord: null,\n error: null,\n };\n default:\n return state;\n }\n};\n","// Get Students list\nexport const GET_STUDENTS_START = \"get_students_start\";\nexport const GET_STUDENTS_SUCCESS = \"get_students_success\";\nexport const GET_STUDENTS_FAILED = \"get_students_failed\";\n\n// Get Students list\nexport const GET_SCHOOL_INFO_START = \"get_school_info_start\";\nexport const GET_SCHOOL_INFO_SUCCESS = \"get_school_info_success\";\nexport const GET_SCHOOL_INFO_FAILED = \"get_school_info_failed\";\n\nexport const GET_SCHOOL_AND_KIDS_DONE = \"get_school_and_kids_done\";\nexport const GET_SCHOOL_STUDENT_INFO_CLEAR = \"get_school_student_info_clear\";\n\nexport const GET_OTHER_KIDS_DONE = \"get_other_kids_done\";\nexport const GET_OTHER_KIDS_CLEAR = \"get_other_kids_clear\";\n\n// Get busRoute\n\nexport const GET_BUS_ROUTE_START = \"get_bus_route_start\";\nexport const GET_BUS_ROUTE_SUCCESS = \"get_bus_route_success\";\nexport const GET_BUS_ROUTE_FAILED = \"get_bus_route_failed\";\n\n//After School\n\nexport const GET_STUDENT_AFTER_SCHOOL_START = \"get_student_after_school_start\";\nexport const GET_STUDENT_AFTER_SCHOOL_SUCCESS =\n \"get_student_after_school_success\";\nexport const GET_STUDENT_AFTER_SCHOOL_FAILED =\n \"get_student_after_school_failed\";\n\n//Announce\n\nexport const IS_ANNOUNCE_START = \"is_announce_start\";\nexport const IS_ANNOUNCE_SUCCESS = \"is_announce_success\";\nexport const IS_ANNOUNCE_FAILED = \"is_announce_failed\";\nexport const IS_ANNOUNCE_CLEAR = \"is_announce_clear\";\n\n// GetDelegation\n\nexport const GET_DELEGATIONS_START = \"get_delegation_start\";\nexport const GET_DELEGATIONS_SUCCESS = \"get_delegation_success\";\nexport const GET_DELEGATIONS_FAILED = \"get_delegation_failed\";\nexport const GET_DELEGATIONS_CLEAR = \"get_delegation_clear\";\n// change default pickupmode\nexport const CHANGE_DEFAULT_PICKUP_MODE_START =\n \"change_default_pickup_mode_start\";\nexport const CHANGE_DEFAULT_PICKUP_MODE_SUCCESS =\n \"change_default_pickup_mode_success\";\nexport const CHANGE_DEFAULT_PICKUP_MODE_FAILED =\n \"change_default_pickup_mode_failed\";\nexport const CHANGE_DEFAULT_PICKUP_MODE_CLEAR =\n \"change_default_pickup_mode_clear\";\n// cancel delegation\nexport const CANCEL_DELEGATION_START = \"cancel_delegation_start\";\nexport const CANCEL_DELEGATION_SUCCESS = \"cancel_delegation_success\";\nexport const CANCEL_DELEGATION_FAILED = \"cancel_delegation_failed\";\nexport const CANCEL_DELEGATION_CLEAR = \"cancel_delegation_clear\";\n\n//get other Children\n\nexport const GET_OTHER_CHILDREN_START = \"get_other_children_start\";\nexport const GET_OTHER_CHILDREN_SUCCESS = \"get_other_children_success\";\nexport const GET_OTHER_CHILDREN_FAILED = \"get_other_children_failed\";\n\n// Get absentee Date Range\n\nexport const GET_ABSENT_DATE_RANGE_START = \"get_absent_date_range_start\";\nexport const GET_ABSENT_DATE_RANGE_SUCCESS = \"get_absent_date_range_success\";\nexport const GET_ABSENT_DATE_RANGE_FAILED = \"get_absent_date_range_failed\";\n\n// Get calendar Date Range\n\nexport const GET_CALENDAR_DATE_RANGE_START = \"get_calendar_date_range_start\";\nexport const GET_CALENDAR_DATE_RANGE_SUCCESS =\n \"get_calendar_date_range_success\";\nexport const GET_CALENDAR_DATE_RANGE_FAILED = \"get_calendar_date_range_failed\";\n\n// Sabmit absentee\nexport const SAVE_ABSENTEE_START = \"save_absentee_start\";\nexport const SAVE_ABSENTEE_SUCCESS = \"save_absentee_success\";\nexport const SAVE_ABSENTEE_FAILED = \"save_absentee_failed\";\nexport const SAVE_ABSENTEE_CLEAR = \"save_absentee_clear\";\n\nexport const GET_PICKUP_ENTRIES_START = \"get_pickup_enrties_start\";\nexport const GET_PICKUP_ENTRIES_SUCCESS = \"get_pickup_enrties_success\";\nexport const GET_PICKUP_ENTRIES_FAILED = \"get_pickup_enrties_failed\";\nexport const GET_PICKUP_ENTRIES_CLEAR = \"get_pickup_enrties_clear\";\n\nexport const GET_ABSENT_CALENDAR_ENTRIES_RANGE_START =\n \"get_absent_calendar_entries_range_start\";\nexport const GET_ABSENT_CALENDAR_ENTRIES_RANGE_SUCCESS =\n \"get_absent_calendar_entries_range_success\";\nexport const GET_ABSENT_CALENDAR_ENTRIES_RANGE_FAILED =\n \"get_absent_calendar_entries_range_failed\";\nexport const GET_ABSENT_CALENDAR_ENTRIES_RANGE_CLEAR =\n \"get_absent_calendar_entries_range_clear\";\n\nexport const CHANGE_DELEGATION_START = \"change_delegation_start\";\nexport const CHANGE_DELEGATION_SUCCESS = \"change_delegation_success\";\nexport const CHANGE_DELEGATION_FAILED = \"change_delegation_failed\";\nexport const CHANGE_DELEGATION_CLEAR = \"change_delegation_clear\";\n\nexport const GET_PICKUP_ENTRIES_MONTH_START = \"get_pickup_entries_month_start\";\nexport const GET_PICKUP_ENTRIES_MONTH_SUCCESS =\n \"get_pickup_entries_month_success\";\nexport const GET_PICKUP_ENTRIES_MONTH_FAILED =\n \"get_pickup_entries_month_failed\";\n\nexport const GET_DELEGATE_LIST_START = \"get_delegate_list_start\";\nexport const GET_DELEGATE_LIST_SUCCESS = \"get_delegate_list_success\";\nexport const GET_DELEGATE_LIST_FAILED = \"get_delegate_list_failed\";\n\nexport const GET_DEFAULT_DISMISSAL_START = \"get_default_dismissal_start\";\nexport const GET_DEFAULT_DISMISSAL_SUCCESS = \"get_default_dismissal_success\";\nexport const GET_DEFAULT_DISMISSAL_FAILED = \"get_default_dismissal_failed\";\nexport const GET_DEFAULT_DISMISSAL_CLEAR = \"get_default_dismissal_clear\";\n\n//GET_DELEGATE_LIST_START, GET_DELEGATE_LIST_SUCCESS, GET_DELEGATE_LIST_FAILED\n\nexport const CANCEL_ABSENTEE_START = \"cancel_absentee_start\";\nexport const CANCEL_ABSENTEE_SUCCESS = \"cancel_absentee_success\";\nexport const CANCEL_ABSENTEE_FAILED = \"cancel_absentee_failed\";\nexport const CANCEL_ABSENTEE_CLEAR = \"cancel_absentee_clear\";\n\nexport const GET_RELATED_DELEGATIONS_START = \"get_related_delegations_start\";\nexport const GET_RELATED_DELEGATIONS_SUCCESS =\n \"get_related_delegations_success\";\nexport const GET_RELATED_DELEGATIONS_FAILED = \"get_related_delegations_failed\";\nexport const GET_RELATED_DELEGATIONS_CLEAR = \"get_related_delegations_clear\";\n\nexport const CANCEL_MULTIPLE_DELEGATIONS_START =\n \"cancel_multiple_delegations_start\";\nexport const CANCEL_MULTIPLE_DELEGATIONS_SUCCESS =\n \"cancel_multiple_delegations_success\";\nexport const CANCEL_MULTIPLE_DELEGATIONS_FAILED =\n \"cancel_multiple_delegations_failed\";\nexport const CANCEL_MULTIPLE_DELEGATIONS_CLEAR =\n \"cancel_multiple_delegations_clear\";\n\nexport const GET_AVAILABLE_DISPATCH_START = \"get_available_dispatch_start\";\nexport const GET_AVAILABLE_DISPATCH_SUCCESS = \"get_available_dispatch_success\";\nexport const GET_AVAILABLE_DISPATCH_FAILED = \"get_available_dispatch_failed\";\nexport const GET_AVAILABLE_DISPATCH_CLEAR = \"GET_AVAILABLE_DISPATCH_CLEAR\";\n\nexport const SAVE_SELECTED_GAURDIAN_DETAILS_START =\n \"save_selected_gaurdian_details_start\";\n\nexport const GET_DISMISSAL_HISTORY_START = \"get_dismissal_history_start\";\nexport const GET_DISMISSAL_HISTORY_SUCCESS = \"get_dismissal_history_success\";\nexport const GET_DISMISSAL_HISTORY_FAILED = \"get_dismissal_history_failed\";\nexport const GET_DISMISSAL_HISTORY_CLEAR = \"get_dismissal_history_clear\";\n\nexport const GET_POSITION_IN_LINE_START = \"get_postion_in_line_start\";\nexport const GET_POSITION_IN_LINE_SUCCESS = \"get_postion_in_line_success\";\nexport const GET_POSITION_IN_LINE_FAILED = \"get_postion_in_line_failed\";\nexport const GET_POSITION_IN_LINE_CLEAR = \"get_postion_in_line_clear\";\n\nexport const GET_DELEGATIONS_ENTRIES_START = \"get_delegations_entries_start\";\nexport const GET_DELEGATIONS_ENTRIES_SUCCESS =\n \"get_delegations_entries_success\";\nexport const GET_DELEGATIONS_ENTRIES_FAILED = \"get_delegations_entries_failed\";\nexport const GET_DELEGATIONS_ENTRIES_CLEAR = \"get_delegations_entries_clear\";\n\nexport const TODAYS_KIDS_ANNOUNCED_LIST = \"todays_kids_announced_list\";\n\n//Early Dismissal\nexport const EARLY_DISMISSAL_START = 'early_dismissal_start';\nexport const EARLY_DISMISSAL_SUCCESS = 'early_dismissal_success';\nexport const EARLY_DISMISSAL_FAILED = 'early_dismissal_failed';\nexport const EARLY_DISMISSAL_CLEAR = 'early_dismissal_clear';\n\nexport const CANCEL_EARLY_DISMISSAL_START = 'cancel_early_dismissal_start';\nexport const CANCEL_EARLY_DISMISSAL_SUCCESS = 'cancel_early_dismissal_success';\nexport const CANCEL_EARLY_DISMISSAL_FAILED = 'cancel_early_dismissal_failed';\nexport const CANCEL_EARLY_DISMISSAL_CLEAR = 'cancel_early_dismissal_clear';\n\nexport const GET_EARLY_DISMISSAL_DATE_RANGE_START = 'get_early_dismissal_start';\nexport const GET_EARLY_DISMISSAL_DATE_RANGE_SUCCESS = 'get_early_dismissal_success';\nexport const GET_EARLY_DISMISSAL_DATE_RANGE_FAILED = 'get_early_dismissal_failed';\nexport const GET_EARLY_DISMISSAL_DATE_RANGE_CLEAR = 'get_early_dismissal_clear';\n\n// Get back to school info\nexport const GET_BACK_SCHOOL_START = 'get_back_school_start';\nexport const GET_BACK_SCHOOL_SUCCESS = 'get_back_school_success';\nexport const GET_BACK_SCHOOL_FAILED = 'get_back_school_failed';\nexport const GET_BACK_SCHOOL_CLEAR = 'get_back_school_clear';\n\n// Save back to school info\nexport const SAVE_BACK_SCHOOL_START = 'save_back_school_start';\nexport const SAVE_BACK_SCHOOL_SUCCESS = 'save_back_school_success';\nexport const SAVE_BACK_SCHOOL_FAILED = 'save_back_school_failed';\nexport const SAVE_BACK_SCHOOL_CLEAR = 'save_back_school_clear';\n\n// Get Relationship Type\nexport const GET_RELATIONSHIP_START = 'get_relationship_start';\nexport const GET_RELATIONSHIP_SUCCESS = 'get_relationship_success';\nexport const GET_RELATIONSHIP_FAILED = 'get_relationship_failed';\nexport const GET_RELATIONSHIP_CLEAR = 'get_relationship_clear';\n\n\n// Get Fill back to school info\nexport const GET_FILL_BACKTOSCHOOL_START = 'get_fill_backtoschool_start';\nexport const GET_FILL_BACKTOSCHOOL_SUCCESS = 'get_fill_backtoschool_success';\nexport const GET_FILL_BACKTOSCHOOL_FAILED = 'get_fill_backtoschool_failed';\nexport const GET_FILL_BACKTOSCHOOL_CLEAR = 'get_fill_backtoschool_clear';","import moment from \"moment\";\nimport {\n GET_SCHOOL_STUDENT_INFO_CLEAR,\n GET_STUDENTS_START,\n GET_STUDENTS_SUCCESS,\n GET_STUDENTS_FAILED,\n GET_SCHOOL_INFO_START,\n GET_SCHOOL_INFO_SUCCESS,\n GET_SCHOOL_INFO_FAILED,\n GET_SCHOOL_AND_KIDS_DONE,\n GET_BUS_ROUTE_START,\n GET_BUS_ROUTE_SUCCESS,\n GET_BUS_ROUTE_FAILED,\n GET_STUDENT_AFTER_SCHOOL_START,\n GET_STUDENT_AFTER_SCHOOL_SUCCESS,\n GET_STUDENT_AFTER_SCHOOL_FAILED,\n IS_ANNOUNCE_START,\n IS_ANNOUNCE_SUCCESS,\n IS_ANNOUNCE_CLEAR,\n IS_ANNOUNCE_FAILED,\n GET_DELEGATIONS_START,\n GET_DELEGATIONS_SUCCESS,\n GET_DELEGATIONS_FAILED,\n GET_DELEGATIONS_CLEAR,\n CHANGE_DEFAULT_PICKUP_MODE_START,\n CHANGE_DEFAULT_PICKUP_MODE_SUCCESS,\n CHANGE_DEFAULT_PICKUP_MODE_FAILED,\n CHANGE_DEFAULT_PICKUP_MODE_CLEAR,\n CANCEL_DELEGATION_START,\n CANCEL_DELEGATION_SUCCESS,\n CANCEL_DELEGATION_FAILED,\n CANCEL_DELEGATION_CLEAR,\n GET_OTHER_CHILDREN_START,\n GET_OTHER_KIDS_DONE,\n GET_OTHER_CHILDREN_SUCCESS,\n GET_OTHER_CHILDREN_FAILED,\n GET_ABSENT_DATE_RANGE_START,\n GET_ABSENT_DATE_RANGE_SUCCESS,\n GET_ABSENT_DATE_RANGE_FAILED,\n GET_CALENDAR_DATE_RANGE_START,\n GET_CALENDAR_DATE_RANGE_SUCCESS,\n GET_CALENDAR_DATE_RANGE_FAILED,\n SAVE_ABSENTEE_START,\n SAVE_ABSENTEE_SUCCESS,\n SAVE_ABSENTEE_FAILED,\n SAVE_ABSENTEE_CLEAR,\n GET_PICKUP_ENTRIES_START,\n GET_PICKUP_ENTRIES_SUCCESS,\n GET_PICKUP_ENTRIES_FAILED,\n GET_PICKUP_ENTRIES_CLEAR,\n GET_ABSENT_CALENDAR_ENTRIES_RANGE_START,\n GET_ABSENT_CALENDAR_ENTRIES_RANGE_SUCCESS,\n GET_ABSENT_CALENDAR_ENTRIES_RANGE_FAILED,\n GET_ABSENT_CALENDAR_ENTRIES_RANGE_CLEAR,\n CHANGE_DELEGATION_START,\n CHANGE_DELEGATION_SUCCESS,\n CHANGE_DELEGATION_FAILED,\n CHANGE_DELEGATION_CLEAR,\n GET_PICKUP_ENTRIES_MONTH_START,\n GET_PICKUP_ENTRIES_MONTH_SUCCESS,\n GET_PICKUP_ENTRIES_MONTH_FAILED,\n GET_DELEGATE_LIST_START,\n GET_DELEGATE_LIST_SUCCESS,\n GET_DELEGATE_LIST_FAILED,\n GET_DEFAULT_DISMISSAL_START,\n GET_DEFAULT_DISMISSAL_SUCCESS,\n GET_DEFAULT_DISMISSAL_FAILED,\n GET_DEFAULT_DISMISSAL_CLEAR,\n CANCEL_ABSENTEE_START,\n CANCEL_ABSENTEE_SUCCESS,\n CANCEL_ABSENTEE_FAILED,\n CANCEL_ABSENTEE_CLEAR,\n GET_RELATED_DELEGATIONS_START,\n GET_RELATED_DELEGATIONS_SUCCESS,\n GET_RELATED_DELEGATIONS_FAILED,\n CANCEL_MULTIPLE_DELEGATIONS_START,\n CANCEL_MULTIPLE_DELEGATIONS_SUCCESS,\n CANCEL_MULTIPLE_DELEGATIONS_FAILED,\n CANCEL_MULTIPLE_DELEGATIONS_CLEAR,\n GET_AVAILABLE_DISPATCH_START,\n GET_AVAILABLE_DISPATCH_SUCCESS,\n GET_AVAILABLE_DISPATCH_FAILED,\n GET_AVAILABLE_DISPATCH_CLEAR,\n SAVE_SELECTED_GAURDIAN_DETAILS_START,\n GET_DISMISSAL_HISTORY_START,\n GET_DISMISSAL_HISTORY_SUCCESS,\n GET_DISMISSAL_HISTORY_FAILED,\n GET_DISMISSAL_HISTORY_CLEAR,\n GET_POSITION_IN_LINE_START,\n GET_POSITION_IN_LINE_SUCCESS,\n GET_POSITION_IN_LINE_FAILED,\n GET_POSITION_IN_LINE_CLEAR,\n GET_DELEGATIONS_ENTRIES_START,\n GET_DELEGATIONS_ENTRIES_SUCCESS,\n GET_DELEGATIONS_ENTRIES_FAILED,\n GET_DELEGATIONS_ENTRIES_CLEAR,\n TODAYS_KIDS_ANNOUNCED_LIST,\n GET_RELATED_DELEGATIONS_CLEAR,\n EARLY_DISMISSAL_START,\n EARLY_DISMISSAL_SUCCESS,\n EARLY_DISMISSAL_FAILED,\n EARLY_DISMISSAL_CLEAR,\n CANCEL_EARLY_DISMISSAL_START,\n CANCEL_EARLY_DISMISSAL_SUCCESS,\n CANCEL_EARLY_DISMISSAL_FAILED,\n CANCEL_EARLY_DISMISSAL_CLEAR,\n GET_EARLY_DISMISSAL_DATE_RANGE_START,\n GET_EARLY_DISMISSAL_DATE_RANGE_SUCCESS,\n GET_EARLY_DISMISSAL_DATE_RANGE_FAILED,\n GET_EARLY_DISMISSAL_DATE_RANGE_CLEAR,\n GET_BACK_SCHOOL_START,\n GET_BACK_SCHOOL_SUCCESS,\n GET_BACK_SCHOOL_FAILED,\n GET_BACK_SCHOOL_CLEAR,\n SAVE_BACK_SCHOOL_START,\n SAVE_BACK_SCHOOL_SUCCESS,\n SAVE_BACK_SCHOOL_FAILED,\n SAVE_BACK_SCHOOL_CLEAR,\n GET_RELATIONSHIP_START,\n GET_RELATIONSHIP_SUCCESS,\n GET_RELATIONSHIP_FAILED,\n GET_RELATIONSHIP_CLEAR,\n GET_FILL_BACKTOSCHOOL_START,\n GET_FILL_BACKTOSCHOOL_SUCCESS,\n GET_FILL_BACKTOSCHOOL_FAILED,\n} from \"../actions/students/studentActionType\";\n\nimport { LOGOUT_USER } from \"../actions/userAccount/userActionType\";\n\nexport const INITIAL_STATE = {\n studentsList: [],\n schoolInfo: [],\n error: null,\n fetchStudentListDone: false,\n fetchSchoolInfoDone: false,\n busRouteResponse: [],\n studentAfterSchoolResponse: [],\n submitAnnounceResponse: null,\n getDelegationsRecord: [],\n changeDefaultPickupModeResponse: null,\n delegationCancelResponse: null,\n otherChildrens: [],\n fetchOtherChildrenDone: false,\n absentDateRange: [],\n calendarDateRange: [],\n submitAbsenteeResponse: null,\n pickupEntries: {},\n absentCalendarEntries: [],\n changeDelegationResponse: null,\n pickupEntriesMonth: null,\n delegateList: [],\n defaultDismissalResponse: {},\n errorBusroute: null,\n cancelAbsentResponse: null,\n relatedDelegations: null,\n deleteMultipleDelegations: null,\n availableDispatch: null,\n gaurdianInfo: [],\n dismissalHistory: {},\n getCarLinePositionResponse: {},\n getDelegationEntries: [],\n kidsAnnouncedToday: [],\n earlyDismissalResponse: null,\n cancelEarlyDismissalResponse: null,\n earlyDismissalDateRange: null,\n getBackSchoolInfo: [],\n saveBackSchoolInfo: null,\n relationshipList: [],\n fillbacktoschoolinfo: [],\n};\n\nexport default (state = INITIAL_STATE, action) => {\n switch (action.type) {\n case LOGOUT_USER:\n return {\n ...INITIAL_STATE,\n };\n\n case GET_STUDENTS_START:\n return {\n ...state,\n fetchStudentListDone: false,\n error: null,\n };\n case GET_STUDENTS_SUCCESS:\n return {\n ...state,\n studentsList: action.payload,\n fetchStudentListDone: true,\n error: null,\n };\n case GET_STUDENTS_FAILED:\n return {\n ...state,\n fetchStudentListDone: true,\n error: action.payload,\n };\n\n case GET_SCHOOL_INFO_START:\n return {\n ...state,\n error: null,\n fetchSchoolInfoDone: false,\n };\n case GET_SCHOOL_INFO_SUCCESS:\n return {\n ...state,\n schoolInfo: action.payload,\n fetchSchoolInfoDone: true,\n error: null,\n };\n case GET_SCHOOL_INFO_FAILED:\n return {\n ...state,\n error: action.payload,\n fetchSchoolInfoDone: true,\n };\n case GET_SCHOOL_STUDENT_INFO_CLEAR: {\n return {\n ...state,\n studentsList: [],\n schoolInfo: [],\n fetchStudentListDone: false,\n fetchSchoolInfoDone: false,\n };\n }\n case GET_SCHOOL_AND_KIDS_DONE:\n return {\n ...state,\n fetchStudentListDone: false,\n fetchSchoolInfoDone: false,\n };\n\n case GET_BUS_ROUTE_START:\n return { ...state, errorBusroute: null, busRouteResponse: [] };\n case GET_BUS_ROUTE_SUCCESS:\n return {\n ...state,\n busRouteResponse: action.payload,\n errorBusroute: null,\n };\n case GET_BUS_ROUTE_FAILED:\n return {\n ...state,\n busRouteResponse: [],\n errorBusroute: action.payload,\n };\n case GET_STUDENT_AFTER_SCHOOL_START:\n return { ...state, error: null, studentAfterSchoolResponse: [] };\n case GET_STUDENT_AFTER_SCHOOL_SUCCESS:\n return {\n ...state,\n studentAfterSchoolResponse: action.payload,\n error: null,\n };\n case GET_STUDENT_AFTER_SCHOOL_FAILED:\n return {\n ...state,\n studentAfterSchoolResponse: [],\n error: action.payload,\n };\n case IS_ANNOUNCE_START:\n return { ...state, error: null, submitAnnounceResponse: null };\n case IS_ANNOUNCE_SUCCESS:\n return {\n ...state,\n submitAnnounceResponse: action.payload,\n error: null,\n };\n case IS_ANNOUNCE_CLEAR:\n return {\n ...state,\n submitAnnounceResponse: null,\n error: null,\n };\n case IS_ANNOUNCE_FAILED:\n return {\n ...state,\n submitAnnounceResponse: null,\n error: action.payload,\n };\n case GET_DELEGATIONS_START:\n return { ...state, error: null };\n case GET_DELEGATIONS_SUCCESS: {\n let getDelegationsRecord = [...state.getDelegationsRecord];\n getDelegationsRecord = getDelegationsRecord.concat(action.payload);\n return {\n ...state,\n getDelegationsRecord,\n error: null,\n };\n }\n case GET_DELEGATIONS_FAILED:\n return {\n ...state,\n error: action.payload,\n };\n case GET_DELEGATIONS_CLEAR:\n return {\n ...state,\n getDelegationsRecord: [],\n error: null,\n };\n case CHANGE_DEFAULT_PICKUP_MODE_START:\n return { ...state, error: null, changeDefaultPickupModeResponse: null };\n case CHANGE_DEFAULT_PICKUP_MODE_SUCCESS:\n return {\n ...state,\n changeDefaultPickupModeResponse: action.payload,\n error: null,\n };\n case CHANGE_DEFAULT_PICKUP_MODE_FAILED:\n return {\n ...state,\n changeDefaultPickupModeResponse: null,\n error: action.payload,\n };\n case CHANGE_DEFAULT_PICKUP_MODE_CLEAR:\n return {\n ...state,\n changeDefaultPickupModeResponse: null,\n error: null,\n };\n case CANCEL_DELEGATION_START:\n return { ...state, error: null, delegationCancelResponse: null };\n case CANCEL_DELEGATION_SUCCESS:\n return {\n ...state,\n delegationCancelResponse: action.payload,\n error: null,\n };\n case CANCEL_DELEGATION_FAILED:\n return {\n ...state,\n delegationCancelResponse: null,\n error: action.payload,\n };\n case CANCEL_DELEGATION_CLEAR:\n return {\n ...state,\n delegationCancelResponse: null,\n error: null,\n };\n\n case GET_OTHER_CHILDREN_START:\n return {\n ...state,\n error: null,\n fetchOtherChildrenDone: false,\n };\n case GET_OTHER_KIDS_DONE:\n return {\n ...state,\n fetchOtherChildrenDone: false,\n };\n case GET_OTHER_CHILDREN_SUCCESS:\n return {\n ...state,\n otherChildrens: action.payload,\n fetchOtherChildrenDone: true,\n\n error: null,\n };\n case GET_OTHER_CHILDREN_FAILED:\n return {\n ...state,\n fetchOtherChildrenDone: true,\n error: action.payload,\n };\n case GET_ABSENT_DATE_RANGE_START:\n return { ...state, error: null, absentDateRange: [] };\n case GET_ABSENT_DATE_RANGE_SUCCESS:\n return {\n ...state,\n absentDateRange: action.payload,\n error: null,\n };\n case GET_ABSENT_DATE_RANGE_FAILED:\n return {\n ...state,\n absentDateRange: [],\n error: action.payload,\n };\n\n case GET_CALENDAR_DATE_RANGE_START:\n return { ...state, error: null, calendarDateRange: [] };\n case GET_CALENDAR_DATE_RANGE_SUCCESS:\n return {\n ...state,\n calendarDateRange: action.payload,\n error: null,\n };\n case GET_CALENDAR_DATE_RANGE_FAILED:\n return {\n ...state,\n calendarDateRange: [],\n error: action.payload,\n };\n case SAVE_ABSENTEE_START:\n return { ...state, error: null, submitAbsenteeResponse: null };\n case SAVE_ABSENTEE_SUCCESS:\n return {\n ...state,\n submitAbsenteeResponse: action.payload,\n error: null,\n };\n case SAVE_ABSENTEE_FAILED:\n return {\n ...state,\n submitAbsenteeResponse: null,\n error: action.payload,\n };\n case SAVE_ABSENTEE_CLEAR:\n return {\n ...state,\n submitAbsenteeResponse: null,\n error: null,\n };\n\n case GET_PICKUP_ENTRIES_START:\n return { ...state, error: null };\n case GET_PICKUP_ENTRIES_SUCCESS: {\n let pickupEntriesAll = { ...state.pickupEntries };\n // console.log(\"pickupEntries reducer 1 \", pickupEntriesAll);\n // console.log(\"pickupEntries reducer action.payload \", action);\n const params = action.payload.params;\n pickupEntriesAll[params.studentID] = action.payload.response;\n // console.log(\"pickupEntries reducer \", pickupEntriesAll);\n return {\n ...state,\n pickupEntries: pickupEntriesAll,\n error: null,\n };\n }\n case GET_PICKUP_ENTRIES_FAILED:\n return {\n ...state,\n error: action.payload,\n };\n case GET_PICKUP_ENTRIES_CLEAR: {\n let pickupEntriesAll = { ...state.pickupEntries };\n const params = action.payload.params;\n if (pickupEntriesAll) delete pickupEntriesAll[params.studentID];\n return {\n ...state,\n pickupEntries: pickupEntriesAll,\n error: null,\n };\n }\n case GET_ABSENT_CALENDAR_ENTRIES_RANGE_START:\n return { ...state, error: null, absentCalendarEntries: [] };\n case GET_ABSENT_CALENDAR_ENTRIES_RANGE_SUCCESS:\n return {\n ...state,\n absentCalendarEntries: action.payload,\n error: null,\n };\n case GET_ABSENT_CALENDAR_ENTRIES_RANGE_FAILED:\n return {\n ...state,\n absentCalendarEntries: [],\n error: action.payload,\n };\n case GET_ABSENT_CALENDAR_ENTRIES_RANGE_CLEAR:\n return {\n ...state,\n absentCalendarEntries: [],\n error: null,\n };\n\n case CHANGE_DELEGATION_START:\n return { ...state, error: null, changeDelegationResponse: null };\n case CHANGE_DELEGATION_SUCCESS:\n return {\n ...state,\n changeDelegationResponse: action.payload,\n error: null,\n };\n case CHANGE_DELEGATION_FAILED:\n return {\n ...state,\n changeDelegationResponse: null,\n error: action.payload,\n };\n case CHANGE_DELEGATION_CLEAR:\n return {\n ...state,\n changeDelegationResponse: null,\n error: null,\n };\n case GET_PICKUP_ENTRIES_MONTH_START:\n return { ...state, error: null, pickupEntriesMonth: null };\n case GET_PICKUP_ENTRIES_MONTH_SUCCESS:\n return {\n ...state,\n pickupEntriesMonth: action.payload,\n error: null,\n };\n case GET_PICKUP_ENTRIES_MONTH_FAILED:\n return {\n ...state,\n pickupEntriesMonth: null,\n error: action.payload,\n };\n\n case GET_DELEGATE_LIST_START:\n return { ...state, error: null, delegateList: [] };\n case GET_DELEGATE_LIST_SUCCESS:\n return {\n ...state,\n delegateList: action.payload,\n error: null,\n };\n case GET_DELEGATE_LIST_FAILED:\n return {\n ...state,\n delegateList: [],\n error: action.payload,\n };\n case GET_DEFAULT_DISMISSAL_START:\n return { ...state, error: null };\n case GET_DEFAULT_DISMISSAL_SUCCESS: {\n let defaultDismissalResponseAll = { ...state.defaultDismissalResponse };\n\n // console.log(\"pickupEntries reducer action.payload \", action);\n const params = action.payload.params;\n defaultDismissalResponseAll[params.studentID] = action.payload.response;\n // console.log(\"pickupEntries reducer \", defaultDismissalResponseAll);\n return {\n ...state,\n defaultDismissalResponse: defaultDismissalResponseAll,\n error: null,\n };\n }\n case GET_DEFAULT_DISMISSAL_FAILED:\n return {\n ...state,\n error: action.payload,\n };\n case GET_DEFAULT_DISMISSAL_CLEAR: {\n let defaultDismissalResponseAll = { ...state.defaultDismissalResponse };\n const params = action.payload.params;\n if (defaultDismissalResponseAll)\n defaultDismissalResponseAll[params.studentID];\n return {\n ...state,\n defaultDismissalResponse: defaultDismissalResponseAll,\n error: null,\n };\n }\n\n case CANCEL_ABSENTEE_START:\n return { ...state, error: null, cancelAbsentResponse: null };\n case CANCEL_ABSENTEE_SUCCESS:\n return {\n ...state,\n cancelAbsentResponse: action.payload,\n error: null,\n };\n case CANCEL_ABSENTEE_FAILED:\n return {\n ...state,\n cancelAbsentResponse: null,\n error: action.payload,\n };\n case CANCEL_ABSENTEE_CLEAR:\n return {\n ...state,\n cancelAbsentResponse: null,\n error: null,\n };\n case GET_RELATED_DELEGATIONS_START:\n return { ...state, error: null, relatedDelegations: null };\n case GET_RELATED_DELEGATIONS_SUCCESS:\n return {\n ...state,\n relatedDelegations: action.payload,\n error: null,\n };\n case GET_RELATED_DELEGATIONS_CLEAR:\n return { ...state, error: null, relatedDelegations: null };\n case GET_RELATED_DELEGATIONS_FAILED:\n return {\n ...state,\n relatedDelegations: null,\n error: action.payload,\n };\n case CANCEL_MULTIPLE_DELEGATIONS_START:\n return { ...state, error: null, deleteMultipleDelegations: null };\n case CANCEL_MULTIPLE_DELEGATIONS_SUCCESS:\n return {\n ...state,\n deleteMultipleDelegations: action.payload,\n error: null,\n };\n case CANCEL_MULTIPLE_DELEGATIONS_FAILED:\n return {\n ...state,\n deleteMultipleDelegations: null,\n error: action.payload,\n };\n case CANCEL_MULTIPLE_DELEGATIONS_CLEAR:\n return {\n ...state,\n deleteMultipleDelegations: null,\n error: null,\n };\n\n case GET_AVAILABLE_DISPATCH_START:\n return { ...state, error: null, availableDispatch: null };\n case GET_AVAILABLE_DISPATCH_SUCCESS:\n return {\n ...state,\n availableDispatch: action.payload,\n error: null,\n };\n case GET_AVAILABLE_DISPATCH_FAILED:\n return {\n ...state,\n availableDispatch: null,\n error: action.payload,\n };\n case GET_AVAILABLE_DISPATCH_CLEAR:\n return {\n ...state,\n availableDispatch: null,\n error: null,\n };\n case SAVE_SELECTED_GAURDIAN_DETAILS_START:\n return {\n ...state,\n gaurdianInfo: action.payload,\n };\n case GET_DISMISSAL_HISTORY_START:\n return { ...state, error: null };\n case GET_DISMISSAL_HISTORY_SUCCESS: {\n let dismissalHistoryAll = { ...state.dismissalHistory };\n const params = action.payload.params;\n let dismissalHistory = dismissalHistoryAll[params.StudentID];\n if (dismissalHistory) dismissalHistory = [...dismissalHistory];\n else dismissalHistory = [];\n\n dismissalHistory = dismissalHistory.concat(action.payload.response);\n dismissalHistoryAll[params.StudentID] = dismissalHistory;\n return {\n ...state,\n dismissalHistory: dismissalHistoryAll,\n error: null,\n };\n }\n case GET_DISMISSAL_HISTORY_FAILED:\n return {\n ...state,\n error: action.payload,\n };\n case GET_DISMISSAL_HISTORY_CLEAR: {\n let dismissalHistoryAll = { ...state.dismissalHistory };\n const params = action.payload.params;\n dismissalHistoryAll[params.StudentID] = [];\n return {\n ...state,\n dismissalHistory: dismissalHistoryAll,\n error: null,\n };\n }\n case GET_POSITION_IN_LINE_START:\n return { ...state, error: null };\n case GET_POSITION_IN_LINE_SUCCESS: {\n let getCarLinePositionResponse = { ...state.getCarLinePositionResponse };\n if (getCarLinePositionResponse === null) {\n getCarLinePositionResponse = {};\n }\n\n const schoolId = action.payload.SchoolID;\n\n getCarLinePositionResponse[schoolId] = action.payload;\n\n return {\n ...state,\n getCarLinePositionResponse,\n error: null,\n };\n }\n case GET_POSITION_IN_LINE_FAILED:\n return {\n ...state,\n getCarLinePositionResponse: {},\n error: action.payload,\n };\n case GET_POSITION_IN_LINE_CLEAR:\n return {\n ...state,\n getCarLinePositionResponse: {},\n error: null,\n };\n case GET_DELEGATIONS_ENTRIES_START:\n return { ...state, error: null, getDelegationEntries: [] };\n case GET_DELEGATIONS_ENTRIES_SUCCESS:\n return {\n ...state,\n getDelegationEntries: action.payload,\n error: null,\n };\n case GET_DELEGATIONS_ENTRIES_FAILED:\n return {\n ...state,\n getDelegationEntries: [],\n error: action.payload,\n };\n case GET_DELEGATIONS_ENTRIES_CLEAR:\n return {\n ...state,\n getDelegationEntries: [],\n error: null,\n };\n case TODAYS_KIDS_ANNOUNCED_LIST:\n return {\n ...state,\n kidsAnnouncedToday: action.payload,\n };\n case EARLY_DISMISSAL_START:\n return { ...state, error: null, earlyDismissalResponse: null };\n case EARLY_DISMISSAL_SUCCESS:\n return {\n ...state,\n earlyDismissalResponse: action.payload,\n error: null,\n };\n case EARLY_DISMISSAL_FAILED:\n return {\n ...state,\n earlyDismissalResponse: null,\n error: action.payload,\n };\n case EARLY_DISMISSAL_CLEAR:\n return {\n ...state,\n earlyDismissalResponse: null,\n error: null,\n };\n case CANCEL_EARLY_DISMISSAL_START:\n return { ...state, error: null, cancelEarlyDismissalResponse: null };\n case CANCEL_EARLY_DISMISSAL_SUCCESS:\n return {\n ...state,\n cancelEarlyDismissalResponse: action.payload,\n error: null,\n };\n case CANCEL_EARLY_DISMISSAL_FAILED:\n return {\n ...state,\n cancelEarlyDismissalResponse: null,\n error: action.payload,\n };\n case CANCEL_EARLY_DISMISSAL_CLEAR:\n return {\n ...state,\n cancelEarlyDismissalResponse: null,\n error: null,\n };\n case GET_EARLY_DISMISSAL_DATE_RANGE_START:\n return { ...state, error: null, earlyDismissalDateRange: null };\n case GET_EARLY_DISMISSAL_DATE_RANGE_SUCCESS:\n return {\n ...state,\n earlyDismissalDateRange: action.payload ? action.payload : [],\n error: null,\n };\n case GET_EARLY_DISMISSAL_DATE_RANGE_FAILED:\n return {\n ...state,\n earlyDismissalDateRange: [],\n error: action.payload,\n };\n case GET_EARLY_DISMISSAL_DATE_RANGE_CLEAR:\n return {\n ...state,\n earlyDismissalDateRange: null,\n error: null,\n };\n case GET_BACK_SCHOOL_START:\n return {\n ...state,\n getBackSchoolInfo: [],\n error: null,\n };\n case GET_BACK_SCHOOL_SUCCESS: {\n return {\n ...state,\n getBackSchoolInfo: action.payload,\n error: null,\n };\n }\n case GET_BACK_SCHOOL_FAILED:\n return {\n ...state,\n getBackSchoolInfo: [],\n error: action.payload,\n };\n case GET_BACK_SCHOOL_CLEAR:\n return {\n ...state,\n getBackSchoolInfo: [],\n error: null,\n };\n case SAVE_BACK_SCHOOL_START:\n return {\n ...state,\n error: null,\n saveBackSchoolInfo: null,\n };\n case SAVE_BACK_SCHOOL_SUCCESS:\n return {\n ...state,\n saveBackSchoolInfo: action.payload,\n error: null,\n };\n case SAVE_BACK_SCHOOL_FAILED:\n return {\n ...state,\n saveBackSchoolInfo: null,\n error: action.payload,\n };\n case SAVE_BACK_SCHOOL_CLEAR:\n return {\n ...state,\n saveBackSchoolInfo: null,\n error: null,\n };\n case GET_RELATIONSHIP_START:\n return {\n ...state,\n error: null,\n };\n case GET_RELATIONSHIP_SUCCESS:\n return {\n ...state,\n relationshipList: action.payload,\n error: null,\n };\n case GET_RELATIONSHIP_FAILED:\n return {\n ...state,\n error: action.payload,\n };\n case GET_FILL_BACKTOSCHOOL_START:\n return {\n ...state,\n fillbacktoschoolinfo: [],\n error: null,\n };\n case GET_FILL_BACKTOSCHOOL_SUCCESS:\n return {\n ...state,\n fillbacktoschoolinfo: action.payload,\n error: null,\n };\n case GET_FILL_BACKTOSCHOOL_FAILED:\n return {\n ...state,\n fillbacktoschoolinfo: [],\n error: action.payload,\n };\n default:\n return state;\n }\n};\n","// get school checkin\nexport const GET_SCHOOL_CHECKIN_START = \"get_school_checkin_start\";\nexport const GET_SCHOOL_CHECKIN_SUCCESS = \"get_school_checkin_success\";\nexport const GET_SCHOOL_CHECKIN_FAILED = \"get_school_checkin_failed\";\nexport const GET_SCHOOL_CHECKIN_CLEAR = \"get_school_checkin_clear\";\n\n// get school geo fence information\n\nexport const GET_SCHOOL_INFORMATION_START = \"get_school_information_start\";\nexport const GET_SCHOOL_INFORMATION_SUCCESS = \"get_school_information_success\";\nexport const GET_SCHOOL_INFORMATION_FAILED = \"get_school_information_failed\";\n\n// checkin by parent\n\nexport const SUBMIT_CHECKIN_PARENT_START = \"submit_checkin_parent_start\";\nexport const SUBMIT_CHECKIN_PARENT_SUCCESS = \"submit_checkin_parent_success\";\nexport const SUBMIT_CHECKIN_PARENT_FAILED = \"submit_checkin_parent_failed\";\nexport const SUBMIT_CHECKIN_PARENT_CLEAR = \"submit_checkin_parent_clear\";\n\n// checkin get questions\n\nexport const GET_CHECKIN_QUESTIONS_START = \"get_checkin_questions_start\";\nexport const GET_CHECKIN_QUESTIONS_SUCCESS = \"get_checkin_questions_success\";\nexport const GET_CHECKIN_QUESTIONS_FAILED = \"get_checkin_questions_failed\";\nexport const GET_CHECKIN_QUESTIONS_CLEAR = \"get_checkin_questions_clear\";\n\n// checkin get parent questions\n\nexport const GET_CHECKIN_PARENT_QUESTIONS_START =\n \"get_checkin_parent_questions_start\";\nexport const GET_CHECKIN_PARENT_QUESTIONS_SUCCESS =\n \"get_checkin_parent_questions_success\";\nexport const GET_CHECKIN_PARENT_QUESTIONS_FAILED =\n \"get_checkin_parent_questions_failed\";\nexport const GET_CHECKIN_PARENT_QUESTIONS_CLEAR =\n \"get_checkin_parent_questions_clear\";\n\n// SchoolAllowCheckIn\n\nexport const GET_SCHOOL_ALLOW_CHECKIN_START = \"get_school_allow_checkin_start\";\nexport const GET_SCHOOL_ALLOW_CHECKIN_SUCCESS =\n \"get_school_allow_checkin_success\";\nexport const GET_SCHOOL_ALLOW_CHECKIN_FAILED =\n \"get_school_allow_checkin_failed\";\nexport const GET_SCHOOL_ALLOW_CHECKIN_CLEAR = \"get_school_allow_checkin_clear\";\n\n// can checkIn\n\nexport const GET_SCHOOL_STUDENT_CHECKIN_START =\n \"get_school_student_checkin_start\";\nexport const GET_SCHOOL_STUDENT_CHECKIN_SUCCESS =\n \"get_school_student_checkin_success\";\nexport const GET_SCHOOL_STUDENT_CHECKIN_FAILED =\n \"get_school_student_checkin_failed\";\nexport const GET_SCHOOL_STUDENT_CHECKIN_CLEAR =\n \"get_school_student_checkin_clear\";\n\n// who can check-in today\n\nexport const WHO_CAN_CHECKIN_TODAY_START = \"who_can_checkin_today_start\";\nexport const WHO_CAN_CHECKIN_TODAY_SUCCESS = \"who_can_checkin_today_success\";\nexport const WHO_CAN_CHECKIN_TODAY_FAILED = \"who_can_checkin_today_failed\";\nexport const WHO_CAN_CHECKIN_TODAY_CLEAR = \"who_can_checkin_today_clear\";\n","import {\n GET_SCHOOL_CHECKIN_START,\n GET_SCHOOL_CHECKIN_SUCCESS,\n GET_SCHOOL_CHECKIN_FAILED,\n GET_SCHOOL_CHECKIN_CLEAR,\n GET_SCHOOL_INFORMATION_START,\n GET_SCHOOL_INFORMATION_SUCCESS,\n GET_SCHOOL_INFORMATION_FAILED,\n SUBMIT_CHECKIN_PARENT_START,\n SUBMIT_CHECKIN_PARENT_SUCCESS,\n SUBMIT_CHECKIN_PARENT_FAILED,\n SUBMIT_CHECKIN_PARENT_CLEAR,\n GET_CHECKIN_QUESTIONS_START,\n GET_CHECKIN_QUESTIONS_SUCCESS,\n GET_CHECKIN_QUESTIONS_FAILED,\n GET_CHECKIN_QUESTIONS_CLEAR,\n GET_CHECKIN_PARENT_QUESTIONS_START,\n GET_CHECKIN_PARENT_QUESTIONS_SUCCESS,\n GET_CHECKIN_PARENT_QUESTIONS_FAILED,\n GET_CHECKIN_PARENT_QUESTIONS_CLEAR,\n GET_SCHOOL_ALLOW_CHECKIN_START,\n GET_SCHOOL_ALLOW_CHECKIN_SUCCESS,\n GET_SCHOOL_ALLOW_CHECKIN_FAILED,\n GET_SCHOOL_ALLOW_CHECKIN_CLEAR,\n GET_SCHOOL_STUDENT_CHECKIN_START,\n GET_SCHOOL_STUDENT_CHECKIN_SUCCESS,\n GET_SCHOOL_STUDENT_CHECKIN_FAILED,\n GET_SCHOOL_STUDENT_CHECKIN_CLEAR,\n WHO_CAN_CHECKIN_TODAY_START,\n WHO_CAN_CHECKIN_TODAY_SUCCESS,\n WHO_CAN_CHECKIN_TODAY_FAILED,\n WHO_CAN_CHECKIN_TODAY_CLEAR,\n} from \"../actions/checkin/checkinActionType\";\n\nimport { LOGOUT_USER } from \"../actions/userAccount/userActionType\";\n\nexport const INITIAL_STATE = {\n schoolParentCheckIn: null,\n schoolCheckInResponse: null,\n schoolGeoFenceInformation: {},\n CheckInByParentResponse: null,\n getCheckInQuestionsResponse: null,\n canCheckin: null,\n whoCanCheckInToday: null,\n error: null,\n};\n\nexport default (state = INITIAL_STATE, action) => {\n switch (action.type) {\n case LOGOUT_USER:\n return {\n ...INITIAL_STATE,\n };\n case GET_SCHOOL_CHECKIN_START:\n return { ...state, error: null };\n case GET_SCHOOL_CHECKIN_SUCCESS:\n return {\n ...state,\n schoolParentCheckIn: action.payload,\n error: null,\n };\n case GET_SCHOOL_CHECKIN_FAILED:\n return {\n ...state,\n schoolParentCheckIn: null,\n error: action.payload,\n };\n case GET_SCHOOL_CHECKIN_CLEAR:\n return {\n ...state,\n schoolParentCheckIn: null,\n error: null,\n };\n case GET_SCHOOL_INFORMATION_START:\n return {\n ...state,\n error: null,\n };\n case GET_SCHOOL_INFORMATION_SUCCESS: {\n // console.log(\"GET_SCHOOL_INFORMATION_SUCCESS\");\n const schoolGeoFenceInformation = { ...state.schoolGeoFenceInformation };\n // console.log(\"GET_SCHOOL_INFORMATION_SUCCESS \", schoolGeoFenceInformation);\n schoolGeoFenceInformation[action.payload.schoolId] = action.payload.data;\n return {\n ...state,\n schoolGeoFenceInformation,\n error: null,\n };\n }\n case GET_SCHOOL_INFORMATION_FAILED:\n return {\n ...state,\n error: action.payload,\n };\n\n case SUBMIT_CHECKIN_PARENT_START:\n return {\n ...state,\n error: null,\n CheckInByParentResponse: null,\n };\n case SUBMIT_CHECKIN_PARENT_SUCCESS:\n return {\n ...state,\n CheckInByParentResponse: action.payload,\n error: null,\n };\n case SUBMIT_CHECKIN_PARENT_FAILED:\n return {\n ...state,\n CheckInByParentResponse: null,\n error: action.payload,\n };\n case SUBMIT_CHECKIN_PARENT_CLEAR:\n return {\n ...state,\n CheckInByParentResponse: null,\n error: action.payload,\n };\n case GET_CHECKIN_QUESTIONS_START:\n return {\n ...state,\n error: null,\n getCheckInQuestionsResponse: null,\n };\n case GET_CHECKIN_QUESTIONS_SUCCESS:\n return {\n ...state,\n getCheckInQuestionsResponse: action.payload,\n error: null,\n };\n case GET_CHECKIN_QUESTIONS_FAILED:\n return {\n ...state,\n getCheckInQuestionsResponse: null,\n error: action.payload,\n };\n case GET_CHECKIN_QUESTIONS_CLEAR:\n return {\n ...state,\n getCheckInQuestionsResponse: null,\n error: action.payload,\n };\n case GET_CHECKIN_PARENT_QUESTIONS_START:\n return {\n ...state,\n error: null,\n getCheckInQuestionsResponse: null,\n };\n case GET_CHECKIN_PARENT_QUESTIONS_SUCCESS:\n return {\n ...state,\n getCheckInQuestionsResponse: action.payload,\n error: null,\n };\n case GET_CHECKIN_PARENT_QUESTIONS_FAILED:\n return {\n ...state,\n getCheckInQuestionsResponse: null,\n error: action.payload,\n };\n case GET_CHECKIN_PARENT_QUESTIONS_CLEAR:\n return {\n ...state,\n getCheckInQuestionsResponse: null,\n error: action.payload,\n };\n case GET_SCHOOL_ALLOW_CHECKIN_START:\n return {\n ...state,\n error: null,\n schoolAllowcheckInResponse: null,\n };\n case GET_SCHOOL_ALLOW_CHECKIN_SUCCESS:\n return {\n ...state,\n schoolAllowcheckInResponse: action.payload,\n error: null,\n };\n case GET_SCHOOL_ALLOW_CHECKIN_FAILED:\n return {\n ...state,\n schoolAllowcheckInResponse: null,\n error: action.payload,\n };\n case GET_SCHOOL_ALLOW_CHECKIN_CLEAR:\n return {\n ...state,\n schoolAllowcheckInResponse: null,\n error: action.payload,\n };\n case GET_SCHOOL_STUDENT_CHECKIN_START:\n return {\n ...state,\n error: null,\n canCheckin: null,\n };\n case GET_SCHOOL_STUDENT_CHECKIN_SUCCESS:\n return {\n ...state,\n canCheckin: action.payload,\n error: null,\n };\n case GET_SCHOOL_STUDENT_CHECKIN_FAILED:\n return {\n ...state,\n canCheckin: null,\n error: action.payload,\n };\n case GET_SCHOOL_STUDENT_CHECKIN_CLEAR:\n return {\n ...state,\n canCheckin: null,\n error: action.payload,\n };\n case WHO_CAN_CHECKIN_TODAY_START:\n return {\n ...state,\n error: null,\n whoCanCheckInToday: null,\n };\n case WHO_CAN_CHECKIN_TODAY_SUCCESS:\n return {\n ...state,\n whoCanCheckInToday: action.payload,\n error: null,\n };\n case WHO_CAN_CHECKIN_TODAY_FAILED:\n return {\n ...state,\n whoCanCheckInToday: null,\n error: action.payload,\n };\n case WHO_CAN_CHECKIN_TODAY_CLEAR:\n return {\n ...state,\n whoCanCheckInToday: null,\n error: action.payload,\n };\n\n default:\n return state;\n }\n};\n","// get parent advert list\nexport const GET_ADVERT_LIST_START = 'get_advert_list_start';\nexport const GET_ADVERT_LIST_SUCCESS = 'get_advert_list_success';\nexport const GET_ADVERT_LIST_FAILED = 'get_advert_list_failed';\nexport const GET_ADVERT_LIST_CLEAR = 'get_advert_list_clear';\n\n// get log advert serve\nexport const GET_ADVERT_SERVE_START = 'get_advert_serve_start';\nexport const GET_ADVERT_SERVE_SUCCESS = 'get_advert_serve_success';\nexport const GET_ADVERT_SERVE_FAILED = 'get_advert_serve_failed';\nexport const GET_ADVERT_SERVE_CLEAR = 'get_advert_serve_clear';\n\n// get log advert click\nexport const GET_ADVERT_CLICK_START = 'get_advert_click_start';\nexport const GET_ADVERT_CLICK_SUCCESS = 'get_advert_click_success';\nexport const GET_ADVERT_CLICK_FAILED = 'get_advert_click_failed';\nexport const GET_ADVERT_CLICK_CLEAR = 'get_advert_click_clear';\n\n// get parent advert photo\nexport const GET_ADVERT_PHOTO_START = 'get_advert_photo_start';\nexport const GET_ADVERT_PHOTO_SUCCESS = 'get_advert_photo_success';\nexport const GET_ADVERT_PHOTO_FAILED = 'get_advert_photo_failed';\nexport const GET_ADVERT_PHOTO_CLEAR = 'get_advert_photo_clear';\n\n","import {\n GET_ADVERT_LIST_START,\n GET_ADVERT_LIST_SUCCESS,\n GET_ADVERT_LIST_FAILED,\n GET_ADVERT_LIST_CLEAR,\n GET_ADVERT_SERVE_START,\n GET_ADVERT_SERVE_SUCCESS,\n GET_ADVERT_SERVE_FAILED,\n GET_ADVERT_SERVE_CLEAR,\n GET_ADVERT_CLICK_START,\n GET_ADVERT_CLICK_SUCCESS,\n GET_ADVERT_CLICK_FAILED,\n GET_ADVERT_CLICK_CLEAR,\n GET_ADVERT_PHOTO_START,\n GET_ADVERT_PHOTO_SUCCESS,\n GET_ADVERT_PHOTO_FAILED,\n GET_ADVERT_PHOTO_CLEAR,\n} from '../actions/ads/adsActionType';\nimport { LOGOUT_USER } from '../actions/userAccount/userActionType';\n\nexport const INITIAL_STATE = {\n adsList: null,\n logAdvertServe: null,\n logAdvertClick: null,\n parentAdvertPhoto: null,\n error: null,\n};\n\nexport default (state = INITIAL_STATE, action) => {\n switch (action.type) {\n case LOGOUT_USER:\n return {\n ...INITIAL_STATE,\n };\n case GET_ADVERT_LIST_START:\n return { ...state, error: null, adsList: null };\n case GET_ADVERT_LIST_SUCCESS:\n return {\n ...state,\n adsList: action.payload,\n error: null,\n };\n case GET_ADVERT_LIST_FAILED:\n return {\n ...state,\n adsList: null,\n error: action.payload,\n };\n case GET_ADVERT_LIST_CLEAR:\n return {\n ...state,\n adsList: null,\n error: null,\n };\n\n case GET_ADVERT_SERVE_START:\n return { ...state, error: null, logAdvertServe: null };\n case GET_ADVERT_SERVE_SUCCESS:\n return {\n ...state,\n logAdvertServe: action.payload,\n error: null,\n };\n case GET_ADVERT_SERVE_FAILED:\n return {\n ...state,\n logAdvertServe: null,\n error: action.payload,\n };\n case GET_ADVERT_SERVE_CLEAR:\n return {\n ...state,\n logAdvertServe: null,\n error: null,\n };\n case GET_ADVERT_CLICK_START:\n return { ...state, error: null, logAdvertClick: null };\n case GET_ADVERT_CLICK_SUCCESS:\n return {\n ...state,\n logAdvertClick: action.payload,\n error: null,\n };\n case GET_ADVERT_CLICK_FAILED:\n return {\n ...state,\n logAdvertClick: null,\n error: action.payload,\n };\n case GET_ADVERT_CLICK_CLEAR:\n return {\n ...state,\n logAdvertClick: null,\n error: null,\n };\n case GET_ADVERT_PHOTO_START:\n return { ...state, error: null, parentAdvertPhoto: null };\n case GET_ADVERT_PHOTO_SUCCESS:\n return {\n ...state,\n parentAdvertPhoto: action.payload,\n error: null,\n };\n case GET_ADVERT_PHOTO_FAILED:\n return {\n ...state,\n parentAdvertPhoto: null,\n error: action.payload,\n };\n case GET_ADVERT_PHOTO_CLEAR:\n return {\n ...state,\n parentAdvertPhoto: null,\n error: null,\n };\n\n default:\n return state;\n }\n};\n","import userAccountReducer from \"./userAccountReducer\";\nimport loadingReducer from \"./loadingReducer\";\nimport schoolReducer from \"./schoolReducer\";\nimport studentReducer from \"./studentReducer\";\nimport checkinReducer from \"./checkinReducer\";\nimport adsReducer from \"./adsReducer\";\nimport { connectRouter } from \"connected-react-router\";\nimport { combineReducers } from \"redux\";\n\nconst createRootReducer = (history) =>\n combineReducers({\n userAccount: userAccountReducer,\n loading: loadingReducer,\n school: schoolReducer,\n student: studentReducer,\n checkin: checkinReducer,\n ads: adsReducer,\n router: connectRouter(history),\n });\n\nexport default createRootReducer;\n","import { persistStore, persistReducer } from \"redux-persist\";\nimport storage from \"redux-persist/lib/storage\"; // defaults to localStorage for web\nimport thunk from \"redux-thunk\";\nimport createRootReducer from \"../reducers\";\nimport { createBrowserHistory } from \"history\";\nimport { applyMiddleware, combineReducers, compose, createStore } from \"redux\";\nimport { routerMiddleware } from \"connected-react-router\";\n\nconst history = createBrowserHistory();\nconst expireReducer = require('redux-persist-expire');\n\nconst persistConfig = {\n key: \"pmk\",\n storage,\n whitelist: [\"userAccount\"],\n transforms: [\n expireReducer('preference', {\n expireSeconds: 3600\n })]\n};\n\nconst persistedReducer = persistReducer(\n persistConfig,\n createRootReducer(history)\n);\n\n// // Create persisted reducers using redux-persist\n// const persistedReducer = persistReducer({\n// transforms: [\n// expireReducer('preference', {\n// expireSeconds: 3600\n// })\n// ]\n// },\n// persistConfig,\n// createRootReducer(history)\n// );\n\nexport function configureStore(preloadedState) {\n const composeEnhancer =\n window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;\n const store = createStore(\n persistedReducer,\n preloadedState,\n composeEnhancer(applyMiddleware(routerMiddleware(history), thunk))\n );\n\n return store;\n}\n\nconst store = configureStore();\nconst persistor = persistStore(store);\n\nexport { history, store, persistor };\n","import axios from \"axios\";\n\nimport { store } from \"../store/configureStore\";\n\nconst STAGE = \"https://stagingparent.pikmykid.com/api/\";\nconst PROD = \"https://parentv3api.pikmykid.com/api/\";\nconst DEVELOP = 'https://developparent.pikmykid.com/api/';\nconst LOCALHOST = 'http://localhost:54947/api/';\n\nexport const getHTTPHeader = () => {\n\tconst state = store.getState();\n\tlet AuthTokenID;\n\t// console.log(\"getHTTPHeader state \", state);\n\tconst { userAccount } = state;\n\tif (userAccount) {\n\t\tconst { userLoginInfo } = userAccount;\n\t\tif (userLoginInfo) {\n\t\t\tAuthTokenID = userLoginInfo.AuthTokenID;\n\t\t}\n\t}\n\tconst headers = {\n\t\t\"Content-Type\": \"application/json\",\n\t\tAuthTokenID: `${AuthTokenID}`,\n\t};\n\t// console.log(`headers ${JSON.stringify(headers)}`);\n\treturn headers;\n};\n\nexport const getEnvironment = () => {\n\tconst state = store.getState();\n\tconst { userAccount } = state;\n\tconst { environment } = userAccount;\n\t// console.log(\"getEnvironment \", environment);\n\tif (environment === \"staging\") {\n\t\treturn STAGE;\n\t} if (environment === \"develop\") {\n\t\treturn DEVELOP;\n\t} if (environment === \"localhost\") {\n\t\treturn LOCALHOST;\n\t}\n\treturn PROD;\n};\n\nexport const getEnvironmentURL = (environment) => {\n\tif (environment === \"staging\") {\n\t\treturn STAGE;\n\t} if (environment === \"develop\") {\n\t\treturn DEVELOP;\n\t} if (environment === \"localhost\") {\n\t\treturn LOCALHOST;\n\t}\n\treturn PROD;\n};\n\nexport const getAxios = () => {\n\tconst defaults = {\n\t\ttimeout: 10000,\n\t\ttimeoutErrorMessage: \"Please check your internet connection.\",\n\t\tvalidateStatus: function (status) {\n\t\t\treturn status < 500; // Resolve only if the status code is less than 500\n\t\t},\n\t\theaders: getHTTPHeader(),\n\t};\n\treturn axios.create(defaults);\n};\n","/* -----------------------------------------------------------------------------\n Theme Colors\n----------------------------------------------------------------------------- */\n\nexport default {\n blue: \"#3fa9f5\",\n blueSecondary: \"#3A65C7\",\n blueMild: \"#53a5e0\",\n blueShadow: \"#86B6D8\",\n blueMild2: \"#77A0E0\",\n green: \"#7AC943\",\n orange: \"#EFAF1E\",\n orangeSecondary: \"#EF861E\",\n black: \"#333E48\",\n gray: \"#BEC8DE\",\n graySubtle: \"#F0F4FA\",\n graySoft: \"#dbd6e0\",\n grayDark: \"#525c72\",\n grayLabel: \"#5B6781\",\n white: \"#FDFEFE\",\n errorRed: \"#A82323\",\n warningOrange: \"#EFAF1E\",\n successGreen: \"#7AC943\",\n grayShadowColor: \"rgba(51, 62, 77, 0.10)\",\n brown: \"#6f2f2f\",\n red: \"#d44a4a\",\n lightOrange: \"#F1AD86\",\n};\n","const GLOBAL_CONST = {\n PICKUP_STATUS: {\n NOT_DISMISSED: 5,\n ANNOUNCED: 3,\n DISMISSED: 6,\n ABSENT: 7,\n },\n SCREEN_NAMES: {\n LOGIN: \"Login\",\n FORGOT_PASSWORD: \"Forgot_Password\",\n DASHBOARD: \"Dashboard\",\n PICKUP: \"Pickup\",\n REGISTRATION_NAME: \"Registration_Name\",\n REGISTRATION_EMAIL: \"Registration_Email\",\n REGISTRATION_CONFIRM_EMAIL: \"Registration_Confirm_Email\",\n REGISTRATION_PHONE: \"Registration_Phone\",\n REGISTRATION_CONFIRM_PHONE: \"Registration_Confirm_Phone\",\n REGISTRATION_PASSWORD: \"Registration_Password\",\n REGISTRATION_SUCCESS: \"Registration_Success\",\n REGISTRATION_CHOOSE_ROLE: \"Registration_Choose_Role\",\n REGISTRATION_SUBMIT_FEEDBACK: \"Registration_Submit_Feedback\",\n SCHOOL_DETAILS: \"School_Details\",\n SCHOOL_DISMISSAL_TIME: \"School_Dismissal_Time\",\n CHECKIN_FOR: \"CheckIn_For\",\n CHECKIN_QUESTIONS: \"CheckIn_Questions\",\n NOTIFICATIONS_SCREEN: \"Notifications_Screen\",\n MANAGE_CHILDREN_TAB: \"Manage_Children_Tab\",\n CHILD_DETAILS: \"Child_Details\",\n DEFAULT_PICKUP_MODE: \"Default_Pickup_Mode\",\n MARK_ABSENT: \"Mark_Absent\",\n SET_CHILD_PHOTO: \"Set_Child_Photo\",\n SELECT_WHEN: \"Select_When\",\n DISMISSAL_HOW: \"Dismissal_How\",\n CONTACT_SCREEN: \"Contact_Screen\",\n CHANGE_PASSWORD: \"Change_Password\",\n SETTING_NOTIFICATION: \"Setting_Notification\",\n ADD_CONTACT: \"Add_Contact\",\n FUTURE_DELEGATIONS: \"Future_Delegations\",\n CONTACT_SUPPORT: \"Contact_Support\",\n FAQ: \"Faq\",\n TERM_CONDITIONS: \"Term_Conditions\",\n PROFILE_SCREEN: \"Profile_Screen\",\n DISMISSAL_HISTORY: \"Dismissal_history\",\n },\n DAYS_EN: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n DAYS_FULL_EN: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],\n DAYS_ES: ['D', 'L', 'M', 'X', 'J', 'V', 'S'],\n DAYS_FULL_ES: ['domingo', 'lunes', 'martes', 'miércoles', 'jueves', 'viernes', 'sábado'],\n \n VERSION: \"2.1.14\",\n};\n\nexport default GLOBAL_CONST;\n","import { store } from \"../common/store/configureStore\";\nimport { Colors } from \"../theme\";\nimport moment from \"moment\";\nimport GLOBAL_CONST from \"./AppConstants\";\nimport i18next from \"i18next\";\nimport LanguageDetector from \"i18next-browser-languagedetector\";\nimport { extendWith } from \"lodash\";\nimport { Callbacks } from \"jquery\";\nimport { Slide, toast } from \"react-toastify\";\n\nexport const isAnnounceTimeStarted = (DismissalTime) => {\n let AnnounceTimeStarted = false;\n const AnnounceStartTime = new Date(`1/1/2015 ${DismissalTime}`);\n const todaysDate = new Date();\n const LocalDateTime = new Date(\n `1/1/2015 ${todaysDate.getHours()}:${todaysDate.getMinutes()}`\n );\n\n if (AnnounceStartTime <= LocalDateTime) {\n AnnounceTimeStarted = true;\n }\n // // console.log(\n // '******** AnnounceTimeStarted && canAnnounce ',\n // AnnounceTimeStarted,\n // );\n return AnnounceTimeStarted;\n};\nexport const isAnnounceAllowed = (\n DismissalTime,\n PickupModeAllowsAnnounce,\n Status,\n isLastDayOfSchoolPast\n) => {\n if (isLastDayOfSchoolPast && isLastDayOfSchoolPast === true) return false;\n const AnnounceTimeStarted = isAnnounceTimeStarted(DismissalTime);\n let canAnnounce = false;\n let isNotDismissed = true;\n // const canAnnounce = !((dismissalType === 'Bus') || (dismissalType === 'After School'));\n isNotDismissed = Status == 0 || Status == 5;\n canAnnounce = PickupModeAllowsAnnounce;\n // console.log(\n // '******** AnnounceTimeStarted && canAnnounce ',\n // AnnounceTimeStarted,\n // canAnnounce,\n // );\n return AnnounceTimeStarted && canAnnounce && isNotDismissed;\n};\nexport const isKidAnnounceable = (\n DismissalTime,\n PickupModeAllowsAnnounce,\n isLastDayOfSchoolPast\n) => {\n if (isLastDayOfSchoolPast && isLastDayOfSchoolPast === true) return false;\n const AnnounceTimeStarted = isAnnounceTimeStarted(DismissalTime);\n let canAnnounce = false;\n canAnnounce = PickupModeAllowsAnnounce;\n // console.log(\n // '******** AnnounceTimeStarted && canAnnounce ',\n // AnnounceTimeStarted,\n // canAnnounce,\n // );\n return AnnounceTimeStarted && canAnnounce;\n};\n\nexport const getRegistrationToken = () => {\n const state = store.getState();\n let RegistrationTokenID = \"\";\n\n const { userAccount } = state;\n if (userAccount) {\n const { registeredResultCache } = userAccount;\n RegistrationTokenID = registeredResultCache.RegistrationTokenID;\n }\n // console.log(` getRegistrationToken ${RegistrationTokenID}`);\n return RegistrationTokenID;\n};\nexport const validateResponse = async (response) => {\n if (response.status === 200) {\n return response.data;\n }\n // console.log(`validateResponse ${JSON.stringify(response)}`);\n let msg = \"Unable to process request\";\n if (typeof response.data === \"string\") {\n msg = response.data.toString();\n } else if (response.Message) {\n msg = response.Message.toString();\n } else if (response.message) {\n msg = response.message.toString();\n } else if (response.error) {\n msg = response.error.toString();\n } else if (response.data && response.data.error) {\n msg = response.data.error.toString();\n }\n return {\n status: response.status,\n message: msg,\n error: msg,\n };\n};\n\nexport const isLoggedIn = () => {\n const state = store.getState();\n let AuthTokenID;\n\n const { userAccount } = state;\n if (userAccount) {\n const { registeredResultCache, userLoginInfo } = userAccount;\n if (userLoginInfo) {\n AuthTokenID = userLoginInfo.AuthTokenID;\n }\n }\n return AuthTokenID !== null && AuthTokenID !== undefined && AuthTokenID != \"\";\n};\n\nexport const getAuthToken = () => {\n const state = store.getState();\n let AuthTokenID = \"\";\n\n const { userAccount } = state;\n if (userAccount) {\n const { userLoginInfo } = userAccount;\n if (userLoginInfo) {\n AuthTokenID = userLoginInfo.AuthTokenID;\n }\n }\n return AuthTokenID;\n};\n\n// export const getMarkStyle = (record) => {\n// if (record.MiscellaneousID !== null) {\n// return {\n// selected: true,\n// selectedColor:\n// record.IsApproved === true ? Colors.red : Colors.lightOrange,\n// className: record.IsApproved === true ? \"pickupRed\" : \"pickupLightOrange\",\n// record,\n// };\n// }\n// if (record.Guardian_First !== \"\" && record.Guardian_First !== null) {\n// return {\n// selected: true,\n// selectedColor:\n// record.IsApproved === true ? Colors.green : Colors.lightOrange,\n// className:\n// record.IsApproved === true ? \"pickupGreen\" : \"pickupLightOrange\",\n// record,\n// };\n// }\n// if (record.RecordSource !== \"DefaultPickupEntry\") {\n// return {\n// selected: true,\n// selectedColor:\n// record.IsApproved === true ? Colors.green : Colors.lightOrange, // \"#7AC943\"\n// className:\n// record.IsApproved === true ? \"pickupGreen\" : \"pickupLightOrange\", // \"#7AC943\"\n// record,\n// };\n// }\n// return {\n// record,\n// selectedColor: \"rgba(255, 255, 255, 0)\",\n// className: \"pickupPlain\",\n// };\n// };\n\nexport const getMarkStyle = (record, needColor) => {\n if (record.isEarlyDismissal) {\n return {\n selected: true,\n selectedColor: record.IsApproved === true ? Colors.black : Colors.gray,\n foreGroundColor: record.IsApproved === true ? Colors.white : Colors.black,\n className: record.IsApproved === true ? \"pickupBlack\" : \"pickupGray\",\n record,\n };\n }\n if (record.MiscellaneousID !== null) {\n return {\n selected: true,\n selectedColor:\n record.IsApproved === true ? Colors.red : Colors.lightOrange,\n foreGroundColor: record.IsApproved === true ? Colors.white : Colors.black,\n className: record.IsApproved === true ? \"pickupRed\" : \"pickupLightOrange\",\n record,\n };\n }\n if (record.Guardian_First !== \"\" && record.Guardian_First !== null) {\n return {\n selected: true,\n selectedColor:\n record.IsApproved === true ? Colors.green : Colors.lightOrange,\n foreGroundColor: record.IsApproved === true ? Colors.white : Colors.black,\n className:\n record.IsApproved === true ? \"pickupGreen\" : \"pickupLightOrange\",\n record,\n };\n }\n if (record.RecordSource !== \"DefaultPickupEntry\") {\n return {\n selected: true,\n selectedColor:\n record.IsApproved === true ? Colors.green : Colors.lightOrange, // \"#7AC943\"\n foreGroundColor: record.IsApproved === true ? Colors.white : Colors.black,\n className:\n record.IsApproved === true ? \"pickupGreen\" : \"pickupLightOrange\", // \"#7AC943\"\n record,\n };\n }\n // d44a4a -- absent\n // console.log(\"record \", record);\n // markedDates[day] = {selected: true, marked: true, selectedColor: '#d44a4a'};\n return {\n record,\n selectedColor: needColor ? Colors.graySubtle : Colors.white,\n foreGroundColor: Colors.grayLabel,\n className: \"pickupPlain\",\n };\n};\n\nexport const isTodayAndAnnounced = (selectedDate, ChildInfo) => {\n return (\n moment(selectedDate).isSame(moment(), \"day\") &&\n (ChildInfo.StatusID === GLOBAL_CONST.PICKUP_STATUS.ANNOUNCED ||\n ChildInfo.StatusID === GLOBAL_CONST.PICKUP_STATUS.DISMISSED)\n );\n};\n\nexport const isActionAllowed = (DismissalTime, calendarDate) => {\n let isFuture = moment(calendarDate).isAfter(moment());\n if (isFuture === true) return true;\n\n let caldt = new Date(calendarDate);\n caldt = moment(caldt).format(\"MM/DD/YYYY\");\n caldt = new Date(`${caldt} ${DismissalTime}`);\n isFuture = moment(caldt).isAfter(moment());\n // console.log(`isActionAllowed calendarDate ${calendarDate} caldt ${caldt} isFuture ${isFuture} `);\n return isFuture;\n};\n\nexport const getDismissalInfo = (item) => {\n const currentDate = new Date();\n\n let dismissalText = \"\";\n let dismissalTextSubText = \"\";\n\n const isFuture = moment(item.CalendarDate).isAfter(moment(currentDate));\n\n if (item.MiscellaneousID !== null) {\n dismissalText = item.PM_Name;\n dismissalTextSubText = item.PM_SubName;\n // dismissalTextSubText = item.PM_IconID;\n } else if (item.PM_Name === \"After School\") {\n dismissalText = item.PM_Name;\n dismissalTextSubText = item.PM_SubName;\n if (item.Guardian_First || item.Guardian_Last) {\n dismissalTextSubText += ` ${item.Guardian_First} ${item.Guardian_Last} (${\n item.Guardian_Phone\n }) ${\"will be picking up\"}`;\n }\n } else if (item.Guardian_First !== \"\" && item.Guardian_First !== null) {\n if (isFuture) {\n dismissalText = `${item.Guardian_First} ${item.Guardian_Last} (${\n item.Guardian_Phone\n }) ${\"will be picking up\"} - ${item.PM_Name}`;\n } else {\n dismissalText = `${item.Guardian_First} ${item.Guardian_Last} (${\n item.Guardian_Phone\n }) ${\"Picked up\"} - ${item.PM_Name}`;\n }\n\n dismissalTextSubText = item.PM_SubName;\n } else {\n if (isFuture) {\n if (item.PM_Name === \"Bus\") {\n dismissalText = `${\"Pickup is by\"} - ${item.PM_Name}`;\n } else if (item.StatusID > 0) {\n dismissalText = `${\"Picked up\"} - ${item.PM_Name}`;\n } else {\n dismissalText = `${\"Pickup is by\"} - ${item.PM_Name}`;\n }\n } else if (item.PM_Name === \"Bus\") {\n dismissalText = `${\"Pickup is by\"} - ${item.PM_Name}`;\n } else if (item.StatusID > 0) {\n dismissalText = `${\"Picked up\"} - ${item.PM_Name}`;\n } else {\n dismissalText = `${\"Pickup was by\"} - ${item.PM_Name}`;\n }\n dismissalTextSubText = item.PM_SubName;\n }\n\n // else {\n // if (isFuture) dismissalText = `You are picking up - ${item.PM_Name}`;\n // else dismissalText = `${'Pickup was by'} - ${item.PM_Name}`;\n\n // dismissalTextSubText = item.PM_SubName;\n // }\n\n return {\n dismissalText,\n dismissalTextSubText:\n dismissalTextSubText === null ? \"\" : `-${dismissalTextSubText}`,\n };\n};\n\nexport const getEarlyDismissalInfo = (item) => {\n const currentDate = new Date();\n\n let dismissalText = \"\";\n const dismissalTextSubText = \"\";\n\n const isFuture = moment(item.Date).isAfter(moment(currentDate));\n\n if (item.DelegateName) {\n if (isFuture) {\n dismissalText = `${item.DelegateName}`;\n } else {\n dismissalText = `${item.DelegateName}`;\n }\n } else if (isFuture) {\n dismissalText = `${this.props.t(\"Pickup_Early_By_Text\")}`;\n } else {\n dismissalText = `${this.props.t(\"Pickup_Early_Was_By_Text\")}`;\n }\n\n return {\n dismissalText,\n dismissalTextSubText:\n dismissalTextSubText === null ? \"\" : `-${dismissalTextSubText}`,\n };\n};\n\nexport const filterByTypes = (markedDates) => {\n const pickupRed = [];\n const pickupLightOrange = [];\n const pickupGreen = [];\n\n for (var key in markedDates) {\n if (markedDates[key].className == \"pickupRed\") {\n pickupRed.push(new Date(key));\n } else if (markedDates[key].className == \"pickupLightOrange\") {\n pickupLightOrange.push(new Date(key));\n } else if (markedDates[key].className == \"pickupGreen\") {\n pickupGreen.push(new Date(key));\n }\n }\n return {\n pickupRed,\n pickupLightOrange,\n pickupGreen,\n };\n};\n\nexport const getChildStatus = (childInfo) => {\n //console.log(` ${childInfo.Firstname} getChildStatus ${childInfo.Status_EN} + childInfo.Status_ES ${+childInfo.Status_ES}`);\n const lang = getLanguageCode().toUpperCase();\n let status = childInfo[`Status_${lang}`];\n if (!status) status = childInfo.Status_EN;\n return status;\n};\n\nexport const getLanguageCode = () => {\n let locale = i18next.use(LanguageDetector).language;\n // console.log(\"locale \", i18next.use(LanguageDetector))\n // console.log(\"locale \", locale)\n if (locale.indexOf(\"-\") >= 0) {\n locale = locale.split(\"-\");\n if (locale.length > 0) return locale[0];\n }\n return locale;\n};\n\nexport const validateError = (response) => {\n let msg = \"Unable to process request\";\n if (response.Message) {\n msg = response.Message.toString();\n } else if (response.message) {\n msg = response.message.toString();\n } else if (response.error) {\n msg = response.error.toString();\n } else if (response.data && response.data.error) {\n msg = response.data.error.toString();\n }\n\n if (msg === \"Network Error\") {\n msg = \"Please check your network connection.\";\n }\n const retRes = {\n message: msg,\n error: msg,\n };\n\n return retRes;\n};\n\nexport const getPickupMode = (availableDispatch, selectedItem) => {\n let pickupString = \"\";\n let pickupMode = [];\n let selectedId = 0;\n\n if (availableDispatch.StudentDismissalMethod) {\n const student = availableDispatch.StudentDismissalMethod.filter(\n (item) => item.StudentID === selectedItem.StudentID\n );\n if (student && student.length > 0)\n pickupMode = student[0].Modes.filter(\n (item) => item.PickupModeID === selectedItem.DefaultPickupModeID\n );\n }\n if (availableDispatch.MethodsAvailableToEveryone) {\n if (pickupMode.length === 0)\n pickupMode = availableDispatch.MethodsAvailableToEveryone.filter(\n (item) => item.PickupModeID === selectedItem.DefaultPickupModeID\n );\n }\n // if(selectedItem.StudentID == 11232){\n // console.log(\"getPickupMode student \", availableDispatch.StudentDismissalMethod)\n // console.log(\"getPickupMode selectedItem \", selectedItem)\n // console.log(\"getPickupMode \", pickupMode)\n // }\n\n if (pickupMode.length > 0) {\n const mode = pickupMode[0];\n if (mode.PickupModeID == 4) {\n pickupString = mode.Name + \" \" + selectedItem.DefaultInstituteName;\n } else if (mode.PickupModeID == 1) {\n pickupString = mode.Name + \" \" + selectedItem.DefaultBusRoute;\n } else {\n pickupString = mode.Name;\n }\n }\n return pickupString;\n};\n\nexport const getModifiedPickupMode = (availableDispatch, selectedItem) => {\n let pickupString = \"\";\n let pickupMode = [];\n let selectedId = 0;\n\n if (availableDispatch.StudentDismissalMethod) {\n const student = availableDispatch.StudentDismissalMethod.filter(\n (item) => item.StudentID === selectedItem.StudentID\n );\n if (student && student.length > 0)\n pickupMode = student[0].Modes.filter(\n (item) => item.PickupModeID === selectedItem.fk_pickmodeid\n );\n }\n if (availableDispatch.MethodsAvailableToEveryone) {\n if (pickupMode.length === 0)\n pickupMode = availableDispatch.MethodsAvailableToEveryone.filter(\n (item) => item.PickupModeID === selectedItem.fk_pickmodeid\n );\n }\n // console.log(\"getModifiedPickupMode student \", student)\n // console.log(\"getModifiedPickupMode selectedItem \", selectedItem)\n // console.log(\"getModifiedPickupMode \", pickupMode)\n\n if (pickupMode.length > 0) {\n const mode = pickupMode[0];\n let subPickupMode;\n if (mode.SubOptions)\n subPickupMode = mode.SubOptions.filter(\n (item) => item.ID === selectedItem.fk_institutionid\n );\n // console.log(\"getModifiedPickupMode \", mode)\n let subString = \"\";\n if (subPickupMode && subPickupMode.length > 0)\n subString = subPickupMode[0].Name;\n else if (selectedItem.ChangedToInstitutionName)\n subString = selectedItem.ChangedToInstitutionName;\n if (mode.PickupModeID == 4) {\n pickupString = mode.Name + \" \" + subString;\n } else if (mode.PickupModeID == 1) {\n pickupString = mode.Name + \" \" + subString;\n } else {\n if (selectedItem.guardianfirstname) {\n pickupString = `${selectedItem.guardianfirstname} ${\n selectedItem.guardianlastname\n } (${selectedItem.guardianphonenumber}) ${\"will be picking up\"} - ${\n mode.Name\n }`;\n // pickupString = mode.Name\n } else {\n pickupString = mode.Name;\n }\n }\n }\n return pickupString;\n};\n\nexport const getSiteAccessPermission = async () => {\n try {\n const result = await navigator.permissions.query({ name: \"geolocation\" });\n // console.log(\"result getSiteAccessPermission \", result)\n if (result && result.state) return result.state;\n else return \"prompt\";\n } catch (ex) {\n console.error(ex);\n }\n return \"prompt\";\n};\n\nexport const showLocationError = (msg) => {\n toast.error(msg, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n};\n\nexport const deg2rad = (deg) => deg * (Math.PI / 180);\n\nexport const distance = (lat1, lon1, lat2, lon2) => {\n const R = 6371; // Radius of the earth in km\n const dLat = deg2rad(lat2 - lat1); // deg2rad below\n const dLon = deg2rad(lon2 - lon1);\n const a =\n Math.sin(dLat / 2) * Math.sin(dLat / 2) +\n Math.cos(deg2rad(lat1)) *\n Math.cos(deg2rad(lat2)) *\n Math.sin(dLon / 2) *\n Math.sin(dLon / 2);\n const c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));\n const d = R * c; // Distance in km\n const df = parseFloat(d) * 1093.61;\n return df;\n};\n\nexport const nextField = (event) => {\n const form = event.target.form;\n const index = Array.prototype.indexOf.call(form, event.target);\n if (event.key === \"Enter\") {\n form.elements[index + 1].focus();\n }\n};\n\nexport const formatPhone = function (phone) {\n const AllowedCharacters = [\n \"0\",\n \"1\",\n \"2\",\n \"3\",\n \"4\",\n \"5\",\n \"6\",\n \"7\",\n \"8\",\n \"9\",\n \"(\",\n \")\",\n \"-\",\n \"+\",\n ];\n const tempStr = phone.trim().split(\"\"); // Creates array\n for (let i = phone.length; i >= 0; i--) {\n if (AllowedCharacters.indexOf(tempStr[i]) < 0) {\n // Plus Symbol not included in allowed characters, but it is allowed in position 0\n if (i > 0 || (i == 0 && tempStr[i] != \"+\")) {\n tempStr.splice(i, 1);\n }\n }\n }\n return tempStr.join(\"\");\n};\n\nexport const parseDaytime = (time) => {\n let [hours, minutes] = time\n .substr(0, time.length - 2)\n .split(\":\")\n .map(Number);\n if (time.toLowerCase().includes(\"pm\") && hours !== 12) hours += 12;\n return [hours, minutes];\n};\n\nexport const isEarlyDismissalAvailable = (school, selectedDate, pickedTime,props) => {\n const response = {\n success: false,\n message: '',\n };\n const dayNo = new Date(selectedDate).getDay();\n \n\n const { EarlyDismissalSettings } = school;\n if (EarlyDismissalSettings && EarlyDismissalSettings.AllowParentSameDayScheduling === false && moment(selectedDate).isSame(moment(), 'date')) {\n response.message = `${props.t(\"early_dismissal_allow_today_message\")}`;\n return response;\n }\n const records = EarlyDismissalSettings && EarlyDismissalSettings.EarlyDismissalTimeTable.filter(\n (item) => item.Day.toLowerCase() === moment(selectedDate).format('dddd').toLowerCase(),\n );\n\n if (records && records.length === 0) {\n response.success = true;\n return response;\n }\n const scheduleRecord = records && records[0];\n\n if (scheduleRecord && scheduleRecord.Active === false && moment(selectedDate).isSame(moment(), 'date')) {\n response.message = `${props.t(\"early_dismissal_allow_today_message\")}`\n return response;\n }\n const dayText = getLanguageCode() === 'es' ? GLOBAL_CONST.DAYS_FULL_ES[dayNo] : GLOBAL_CONST.DAYS_FULL_EN[dayNo];\n if (scheduleRecord && scheduleRecord.Active === false) {\n let msg = `${props.t(\"early_dismissal_allow_inActive_message\")}`\n msg = msg.replace('#Day#', dayText);\n response.message = msg;\n return response;\n }\n let StartTime = new Date(`1/1/2015 ${scheduleRecord.StartTime}`);\n let EndTime = new Date(`1/1/2015 ${scheduleRecord.EndTime}`);\n StartTime = moment(StartTime).format('hh:mm A');\n EndTime = moment(EndTime).format('hh:mm A');\n let pickTime = moment(pickedTime).format('hh:mm A');\n const compareDate = moment(pickTime, 'hh:mm A');\n const startDate = moment(StartTime, 'hh:mm A');\n const endDate = moment(EndTime, 'hh:mm A');\n\n if (compareDate.isBetween(startDate, endDate)\n || compareDate.isSame(startDate) || compareDate.isSame(endDate)) {\n response.success = true;\n return response;\n }\n\n let msg = `${props.t(\"early_dismissal_schedule_warning\")}`\n msg = msg.replace('#Day#', dayText);\n msg = msg.replace('#starttime#', moment(startDate).format('hh:mm A'));\n msg = msg.replace('#endtime#', moment(endDate).format('hh:mm A'));\n response.message = msg;\n return response;\n};\n \nexport const canEarlyDismissToday = (school) => {\n const { EarlyDismissalSettings } = school;\n if (school.ReunificationEnabled) return false;\n \n if (!EarlyDismissalSettings) return false;\n if (EarlyDismissalSettings.AllowParentEarlyDismissals === false) return false;\n const timeTable = school.EarlyDismissalSettings.EarlyDismissalTimeTable;\n const daySelectedIndex = moment(new Date()).format('d');\n const todayRecord = timeTable[daySelectedIndex];\n if (!todayRecord || !todayRecord.Active) return false;\n return EarlyDismissalSettings.AllowParentSameDayScheduling;\n};\n\nexport const earlyDismissNeedPassword = (school) => {\n const { EarlyDismissalSettings } = school;\n if (!EarlyDismissalSettings) return false;\n if (EarlyDismissalSettings.RequireParentPasswordForEarlyDismissal === false)\n return false;\n return EarlyDismissalSettings.RequireParentPasswordForEarlyDismissal;\n};\n\nexport const getEarlyDismissalTime = (item) => {\n let caldt = new Date(item.Date);\n caldt = moment(caldt).format(\"MM/DD/YYYY\");\n caldt = new Date(`${caldt} ${item.Time}`);\n return moment(caldt).format(\"hh:mm A\");\n};\nexport const toTitleCase = (value) => {\n if (!value) return \"\";\n return value.charAt(0).toUpperCase() + value.slice(1);\n};\nexport const createImageFileURL = (imageFile) => {\n return URL.createObjectURL(imageFile);\n};\n\nexport const checkIsEmergency = (delegate) => {\n if (\n delegate !== null &&\n delegate !== undefined &&\n delegate.Students !== null &&\n delegate.Students !== undefined &&\n delegate.Students.length > 0\n ) {\n return delegate.Students.find((item) => item.IsEmergency);\n }\n\n return false;\n};\n","import { getEnvironmentURL, getEnvironment, getAxios } from \"./config\";\nimport { validateResponse } from \"../../helper/utility\";\nimport { getRegistrationToken, getAuthToken } from \"../../helper/utility\";\n\n/**\n * API call to http://35.167.52.234/api/registraton/StartRegistration\n * Purpose: Start Registartion\n */\nexport const startRegistration = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}Registration/StartRegistration`;\n const FullUrl = PostURL + param;\n\n // console.log(` startRegistration ${FullUrl}`);\n const response = await getAxios().post(FullUrl, {\n Firstname: params.Firstname,\n Lastname: params.Lastname,\n Email: params.Email,\n Locale: params.Locale,\n // registration_token\n RegistrationTokenID: null,\n });\n\n return validateResponse(response);\n};\n/**\n * API call to http://35.167.52.234/api/registraton/checkEmail\n * Purpose: Email Check\n */\nexport const checkEmail = async ({ Email, locale }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}registration/checkEmail?Email=${Email}&locale=${locale}`;\n const FullUrl = PostURL + param;\n // console.log(` checkEmail ${FullUrl}`);\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\n/**\n * API call to http://35.167.52.234/api/registraton/GetIsEmailVerified\n * Purpose: Email Verification\n */\nexport const getIsEmailVerified = async ({ Email }) => {\n // alert(registration_token);\n\n const param = \"\";\n const PostURL = `${getEnvironment()}Registration/GetIsEmailVerified?RegistrationTokenID=${getRegistrationToken()}&Email=${Email}`;\n const FullUrl = PostURL + param;\n // console.log(` getIsEmailVerified ${FullUrl}`);\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\n/**\n * API call to http://35.167.52.234/api/ResendEmailVerificationMail\n * Purpose: resend link to user email\n */\nexport const ResendEmailVerificationMail = async ({ Email }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}Registration/ResendEmailVerificationMail?RegistrationTokenID=${getRegistrationToken()}&Email=${Email}`;\n const FullUrl = PostURL + param;\n // console.log(`ResendEmailVerificationMail ${FullUrl}`);\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\n/**\n * API call to http://35.167.52.234/api/Registration/UpdatePhone\n * Purpose: add user phone number\n */\nexport const addPhoneNumber = async (params) => {\n // alert(registration_token);\n const param = \"\";\n const PostURL = `${getEnvironment()}Registration/UpdatePhone`;\n const FullUrl = PostURL + param;\n // console.log(` addPhoneNumber ${FullUrl}`);\n const response = await getAxios().post(FullUrl, {\n RegistrationTokenID: getRegistrationToken(),\n PhoneNumber: params.PhoneNumber,\n CountryCode: params.CountryCode,\n ResendOTP: params.ResendOTP,\n });\n\n return validateResponse(response);\n};\n\n/**\n * API call to http://35.167.52.234/api/verify_otp\n * Purpose: verify otp\n */\nexport const verifyOtp = async ({ OTPCode }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}Registration/VerifyPhoneOTP`;\n const FullUrl = PostURL + param;\n // console.log(` verifyOtp ${FullUrl}`);\n const response = await getAxios().post(FullUrl, {\n RegistrationTokenID: getRegistrationToken(),\n OTPCode,\n });\n\n return validateResponse(response);\n};\n\n/**\n * API call to http://35.167.52.234/api/resend_otp\n * Purpose: resend otp\n */\nexport const reSendOtp = async () => {\n const param = \"\";\n const PostURL = `${getEnvironment()}resend_otp`;\n const FullUrl = PostURL + param;\n // console.log(` reSendOtp ${FullUrl}`);\n const response = await getAxios().post(FullUrl);\n\n return validateResponse(response);\n};\n\n/**\n * API call to http://35.167.52.234/api/getUserInfo\n * Purpose: get user information\n */\nexport const getUserInfo = async () => {\n const param = \"\";\n const PostURL = `${getEnvironment()}registration/getUserInfo?RegistrationTokenID=${getRegistrationToken()}`;\n const FullUrl = PostURL + param;\n // console.log(`getUserInfo ${FullUrl}`);\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\n/**\n * API call to http://35.167.52.234/api/registerUser\n * Purpose: user registration\n */\nexport const registerUser = async ({ Password }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}Registration/CompleteRegistration`;\n const FullUrl = PostURL + param;\n // console.log(`registerUser ${FullUrl}`);\n const response = await getAxios().post(FullUrl, {\n RegistrationTokenID: getRegistrationToken(),\n Password,\n });\n\n return validateResponse(response);\n};\n\n/**\n * API call to http://35.167.52.234/api/account/login\n * Purpose: Login api\n */\nexport const userLogin = async ({ email, password, locale, env }) => {\n const param = \"\";\n const PostURL = `${getEnvironmentURL(env)}account/login`;\n const FullUrl = PostURL + param;\n const body = {\n username: email,\n password,\n locale,\n };\n\n // console.log(`userLogin body + ${FullUrl} + ${JSON.stringify(body)}`);\n // console.log(FullUrl);\n const response = await getAxios().post(FullUrl, body);\n\n return validateResponse(response);\n};\n\nexport const getCountryCodesListing = async () => {\n const PostURL = `${getEnvironment()}account/getCountriesAndCountryCodes`;\n\n const FullUrl = PostURL;\n // console.log(`getCountryCodesListing ${FullUrl}`);\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\n/**\n * API call to http://35.167.52.234/api/account/ChangeLocale\n * Purpose: Change language\n */\nexport const ChangeLocale = async ({ Locale }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}account/ChangeLocale`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n Locale,\n });\n\n return validateResponse(response);\n};\n\nexport const updateName = async ({ firstName, lastName }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}account/UpdateName`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n Firstname: firstName,\n Lastname: lastName,\n });\n\n return validateResponse(response);\n};\n\n/**\n * API call to http://35.167.52.234/api/account/forgotpassword\n * Purpose: forgotpassword\n */\nexport const forgotPassword = async ({ email, locale }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}account/ForgotPassword`;\n const FullUrl = PostURL + param;\n // console.log(`forgotPassword URL ${FullUrl}`);\n\n const response = await getAxios().post(FullUrl, {\n Email: email,\n Locale: locale,\n });\n\n return validateResponse(response);\n};\n\n/**\n * API call to http://35.167.52.234/api/RegistrationValid\n * Purpose: RegistrationValid\n */\nexport const registrationValid = async () => {\n const param = \"\";\n const PostURL = `${getEnvironment()}registration/RegistrationValid?RegistrationTokenID=${getRegistrationToken()}`;\n const FullUrl = PostURL + param;\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\nexport const updatePassword = async ({ oldPassword, newPassword }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}account/UpdatePassword`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n OldPassword: oldPassword,\n NewPassword: newPassword,\n });\n\n return validateResponse(response);\n};\n\nexport const submitFeedback = async ({ feedback, token }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}account/SubmitFeedback`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(\n FullUrl,\n {\n Feedback: feedback,\n Reason: null,\n },\n {\n headers: {\n \"Content-Type\": \"application/json\",\n AuthTokenID: `${token}`,\n },\n }\n );\n\n return validateResponse(response);\n};\n\nexport const getDelagates = async ({ fetchAll }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}account/GetApprovedDelegates_Active?FetchAll=${fetchAll}`;\n const FullUrl = PostURL + param;\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\nexport const upsertApprovedDelegate = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}Account/UpsertApprovedDelegate`;\n const FullUrl = PostURL + param;\n console.log(`upsertApprovedDelegate PostURL ${PostURL}`);\n console.log(`upsertApprovedDelegate Param ---> ${JSON.stringify(params)}`);\n const response = await getAxios().post(FullUrl, {\n List_ParentDelegateID: params.list_parentDelegateID,\n PhoneNumber: params.phoneNumber,\n Firstname: params.firstName,\n Lastname: params.lastName,\n Students: params.Students,\n });\n\n return validateResponse(response);\n};\n\nexport const approvedDelegateChange = async ({\n list_parentDelegateID,\n isActive,\n}) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}Account/ApprovedDelegateChangeActiveState`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n List_ParentDelegateID: list_parentDelegateID,\n IsActive: isActive,\n });\n\n return validateResponse(response);\n};\n\nexport const delegateSetDeleted = async ({ list_ParentDelegateId }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}Account/ApprovedDelegateSetDeleted?List_ParentDelegateID=${list_ParentDelegateId}`;\n const FullUrl = PostURL + param;\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\nexport const updateDeviceToken = async ({ deviceType, deviceToken }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}account/UpdateDeviceToken`;\n const FullUrl = PostURL + param;\n\n const body = {\n DeviceType: deviceType,\n DeviceToken: deviceToken,\n };\n const response = await getAxios().post(FullUrl, body);\n\n return validateResponse(response);\n};\n\nexport const isTokenValid = async () => {\n const param = \"\";\n const PostURL = `${getEnvironment()}account/IsTokenValid`;\n const FullUrl = PostURL + param;\n // console.log(\"isTokenValid \" + FullUrl);\n const response = await getAxios().get(FullUrl);\n return validateResponse(response);\n};\nexport const getNotifications = async ({\n LastNotificationID,\n notificationTypeId,\n}) => {\n const param = \"\";\n let PostURL = `${getEnvironment()}account/GetNotifications?PageSize=25`;\n\n if (notificationTypeId > 0) {\n PostURL += `&NotificationTypeID=${notificationTypeId}`;\n }\n\n if (LastNotificationID > 0) {\n PostURL += `&LastNotificationID=${LastNotificationID}`;\n }\n\n const FullUrl = PostURL + param;\n // console.log(`getNotifications FullUrl ${FullUrl}`);\n\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\nexport const getHelpTopics = async ({ schoolIds }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}Account/GetHelpTopics`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n SchoolIds: schoolIds,\n });\n\n return validateResponse(response);\n};\n\nexport const sendFeedbackWithChild = async (params) => {\n // console.log(`submitFeedbackParameters ${JSON.stringify(params)}`);\n const param = \"\";\n const PostURL = `${getEnvironment()}account/SendFeedbackFromParentAppIncludingChildInfo`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n List_HelpTopicID: params.list_HelpTopicId,\n SchoolID: params.schoolId,\n StudentIDs: params.studentIds,\n CustomSchoolName: params.customSchoolName,\n CustomStudentName: params.customStudentName,\n Feedback: params.feedback,\n });\n\n return validateResponse(response);\n};\n\nexport const getNotificationSettings = async () => {\n const param = \"\";\n const PostURL = `${getEnvironment()}account/GetNotificationSettings`;\n const FullUrl = PostURL + param;\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\nexport const updateParentNotificationSettings = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}Account/UpdateParentNotificationSettings`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n ReceiveStatusnnotification: params.receiveStatusnnotification,\n ReceiveDelegationNotification: params.receiveDelegationNotification,\n ReceiveEmailNotification: params.receiveEmailNotification,\n ReceiveNotification: params.receiveNotification,\n ReceiveNotificationForParentCheckInReminder:\n params.receiveNotificationForParentCheckInReminder,\n ReceivePresentNotification: params.receivePresentNotification,\n });\n\n return validateResponse(response);\n};\n\nexport const fetchEta = async (\n deviceLat,\n deviceLon,\n schoolLatitude,\n schoolLongitude\n) => {\n const PostURL = \"https://router.project-osrm.org/route/v1/driving/\";\n // 77.432900000000004,28.6294;79.039158711965868,21.175527110170172?overview=false\n const FullUrl = `${\n PostURL + deviceLon\n },${deviceLat};${schoolLongitude},${schoolLatitude}?overview=false`;\n\n console.log(`fetchEta ${FullUrl}`);\n const response = await getAxios().post(FullUrl);\n\n return validateResponse(response);\n};\n\n/**\n * API call to http://35.167.52.234/api/account/LogErrorsBrowser\n * Purpose: Log Errors Browser\n */\nexport const logErrorsBrowser = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}account/LogErrorsBrowser`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n localtime: params.localtime,\n message: params.message,\n name: params.name,\n stack: params.stack,\n type: params.type,\n url: params.url,\n version: params.version,\n filename: params.filename,\n columnnumber: params.columnnumber,\n linenumber: params.linenumber,\n });\n\n return validateResponse(response);\n};\n\n/**\n * API call to http://35.167.52.234/api/account/LogErrorsBrowserWithFiles\n * Purpose: Log Errors Browser File\n */\nexport const fileLogErrors = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}account/LogErrorsBrowserWithFiles`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n OSversion: params.OSversion,\n AppVersion: params.AppVersion,\n DeviceType: params.DeviceType,\n DeviceVersion: params.DeviceVersion,\n });\n\n return validateResponse(response);\n};\n\n/**\n * API call to http://35.167.52.234/api/account/ConnectStudent\n * Purpose: Connect student\n */\nexport const connectStudent = async (params) => {\n const PostURL = `${getEnvironment()}account/ConnectStudent`;\n const FullUrl = PostURL;\n // console.log(\"connectStudent FullUrl \" + FullUrl);\n const response = await getAxios().post(FullUrl, {\n Code: encodeURI(params.Code),\n });\n\n return validateResponse(response);\n};\n\nexport const getFutureCalendarEntriesByParent = async (params) => {\n const PostURL = `${getEnvironment()}services/GetFutureCalendarEntriesByParent`;\n const FullUrl = PostURL;\n // console.log(\"getFutureCalendarEntriesByParent FullUrl \" + FullUrl);\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\n// Upload Delegate Image\nexport const uploadDelegateImage = async (image, parentDelegateID) => {\n const parameters = [];\n const PostURL = `${getEnvironment()}account/UploadDelegateImage?parentDelegateID=${parentDelegateID}`;\n console.log(\n ` upload Delegate Image Full URL-: ${PostURL} parentDelegateID -: ${JSON.stringify(\n parentDelegateID\n )}`\n );\n console.log(\"image>>>>\", image);\n\n if (image) {\n // const path =\n // Platform.OS === \"ios\" ? image.toString().replace(\"file://\", \"\") : image;\n\n const path = image;\n parameters.push({\n name: \"photo\",\n filename: `${parentDelegateID}.jpg`,\n type: \"image/jpg\",\n data: path,\n });\n }\n console.log(\n `RNFetchBlob updatUserProfilePic ${PostURL} params ${JSON.stringify(\n parameters\n )}`\n );\n console.log(`parameters ${parameters.length}`);\n const formData = new FormData();\n formData.append(\"image\", image);\n\n const headers = {\n \"Content-Type\": \"multipart/form-data\",\n AuthTokenID: `${getAuthToken()}`,\n };\n\n const response = await getAxios().post(PostURL, formData, headers);\n return validateResponse(response);\n};\n// Cancel Manual Review Image\nexport const CancelManualReviewImage = async (parentDelegateID) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}account/CancelManualReview?parentDelegateId=${parentDelegateID}`;\n const FullUrl = PostURL + param;\n const body = {};\n console.log(\n ` Cancel Manual Review Image Full URL-: ${FullUrl} Param body -: ${JSON.stringify(\n body\n )}`\n );\n const response = await getAxios().post(FullUrl, body);\n\n return validateResponse(response);\n};\n// Request Manual Review Image\nexport const RequestManualReviewImage = async (delegateImageId) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}account/RequestManualReview?delegateImageId=${delegateImageId}`;\n const FullUrl = PostURL + param;\n const body = {};\n console.log(\n ` Request Manual Review Image Full URL-: ${FullUrl} Param body -: ${JSON.stringify(\n body\n )}`\n );\n const response = await getAxios().post(FullUrl, body);\n\n return validateResponse(response);\n};\n\n// Get Delegate\nexport const getDelegate = async (delegateId) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}account/GetDelegateById?delegateId=${delegateId}`;\n const FullUrl = PostURL + param;\n const body = {};\n console.log(\n ` Get Delegate Full URL-: ${FullUrl} Param body -: ${JSON.stringify(body)}`\n );\n const response = await getAxios().post(FullUrl, body);\n\n return validateResponse(response);\n};\n\n// Delete User Account\nexport const deleteAccount = async ({ email, password }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}account/deleteAccount`;\n const FullUrl = PostURL + param;\n const body = {\n email,\n password,\n };\n\n console.log(`user Account Delete ${FullUrl} ${JSON.stringify(body)}`);\n console.log(FullUrl);\n const response = await getAxios().post(FullUrl, body);\n\n return validateResponse(response);\n};\n","import { getEnvironment, getAxios } from \"./config\";\nimport { validateResponse } from \"../../helper/utility\";\n\nexport const getStudents = async ({ currenDate }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/getstudents?ParentLocalDate=${currenDate}`;\n const FullUrl = PostURL + param;\n // console.log(`getStudents API ${FullUrl}`);\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\n/**\n * API call to http://35.167.52.234/api/getSchoolInfo\n * Purpose: Get School Details\n */\nexport const getSchoolInfo = async () => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/GetSchoolInfo`;\n const FullUrl = PostURL + param;\n // console.log(`getSchoolInfo API ${FullUrl}`);\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\n/**\n * API call to http://35.167.52.234/api/GetBusRoutes\n * Purpose: Get GetBusRoutes\n */\nexport const GetBusRoutes = async ({ studentID }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/GetBusRoutes?StudentID=${studentID}`;\n const FullUrl = PostURL + param;\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\nexport const getStudentAfterSchools = async ({ studentID }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/GetStudentAfterSchools?StudentID=${studentID}`;\n const FullUrl = PostURL + param;\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\nexport const submitAnnounce = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/announce`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, params);\n return validateResponse(response);\n};\n\nexport const getDelegationsToCurrentParent = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/GetDelegationsToCurrentParent`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n StudentID: params.studentId,\n StartDate: params.startDate,\n LastRecord: params.lastRecord,\n PageSize: params.pageSize,\n });\n return validateResponse(response);\n};\n\nexport const postDefaultPickupModeChange = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/PostDefaultPickupModeChange`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n StudentID: params.studentID,\n PickupModeID: params.pickupModeID,\n PickupModeSubItem: params.pickupModeSubItem,\n });\n return validateResponse(response);\n};\n\nexport const cancelDelegation = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/CancelDelegation`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n calendarId: params.calendarId,\n CancelToDate: params.cancelToDate,\n isCancelAll: params.isCancelAll,\n });\n\n return validateResponse(response);\n};\n\n/**\n * API call to http://35.167.52.234/api/GetOtherChildren\n * Purpose: GetOtherChildren\n */\nexport const getOtherChildren = async () => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/GetOtherChildren`;\n const FullUrl = PostURL + param;\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\nexport const getAbsentEntryForDateRange = async (params) => {\n const PostURL = `${getEnvironment()}student/GetAbsentEntryForDateRange`;\n\n const response = await getAxios().post(PostURL, {\n StudentID: params.studentID,\n StartDate: params.startDate,\n EndDate: params.endDate,\n });\n return validateResponse(response);\n};\n\nexport const getCalendarEntryForDateRange = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/GetAbsentEntryForDateRange`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n StudentID: params.studentID,\n StartDate: params.startDate,\n EndDate: params.endDate,\n });\n return validateResponse(response);\n};\n\nexport const saveAbsentee = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/SaveAbsentee`;\n const FullUrl = PostURL + param;\n const body = {\n AbsenteeDates: params.absenteeDate,\n Reason: params.reason,\n StudentId: params.studentId,\n Password: params.password,\n };\n\n // console.log(`saveAbsentee ${FullUrl} body `, body);\n\n const response = await getAxios().post(FullUrl, body);\n\n return validateResponse(response);\n};\n\nexport const getPickupEntriesForDateRange = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/GetPickupEntriesForDateRange`;\n const FullUrl = PostURL + param;\n\n // console.log(`getPickupEntriesForDateRange called FullUrl ${FullUrl}`);\n const response = await getAxios().post(FullUrl, {\n StudentID: params.studentID,\n StartDate: params.startDate,\n EndDate: params.endDate,\n });\n\n return validateResponse(response);\n};\n\nexport const getAbsentAndCalendarEntriesForDateRange = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/GetAbsentAndCalendarEntriesForDateRange`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n StudentID: params.studentID,\n StartDate: params.startDate,\n EndDate: params.endDate,\n });\n return validateResponse(response);\n};\n\nexport const postDelegationChange = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/PostDelegationChange`;\n const FullUrl = PostURL + param;\n\n const body = {\n StudentID: params.studentID,\n SchoolID: params.schoolID,\n DatesForChange: params.fromDate,\n isDelegated: params.isDelegated,\n isDelegatedToGuardian: params.isDelegatedToGuardian,\n guardianFirstName: params.guardianFirstName,\n guardianLastName: params.guardianLastName,\n guardianPhone: params.guardianPhone,\n institutionId: params.institutionId,\n pickUpModeId: params.pickUpModeId,\n busRouteId: params.busRouteId,\n };\n\n if (params.recurringTypeID) {\n body.RecurringTypeID = params.recurringTypeID;\n }\n\n // console.log(`postDelegationChange URL ${FullUrl} ${JSON.stringify(body)}`);\n const response = await getAxios().post(FullUrl, body);\n return validateResponse(response);\n};\n\nexport const getDelegates = async () => {\n const param = \"\";\n const PostURL = `${getEnvironment()}account/GetApprovedDelegates_Active?FetchAll=true`;\n const FullUrl = PostURL + param;\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\nexport const getDefaultDismissal = async ({ studentId }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/GetDefaultPickupMode?StudentID=${studentId}`;\n const FullUrl = PostURL + param;\n // console.log(\" getDefaultDismissal \", FullUrl);\n\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\nexport const cancelAbsentee = async ({ studentId, absenteeDate }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/CancelAbsentee`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n StudentID: studentId,\n AbsenteeDate: absenteeDate,\n });\n\n return validateResponse(response);\n};\n\nexport const cancelDelegations = async ({ calendarId }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/CancelDelegations`;\n const FullUrl = PostURL + param;\n\n // console.log(\"calendar\", calendarId);\n\n const response = await getAxios().post(FullUrl, calendarId);\n return validateResponse(response);\n};\n\nexport const getRelatedDelegations = async ({ calendarId }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/GetRelatedDelegations`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n CalendarID: calendarId,\n });\n return validateResponse(response);\n};\nexport const getAvailableDispatchMethods = async ({ studentIDs }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/GetAvailableDispatchMethods`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n studentIDs,\n });\n return validateResponse(response);\n};\n\nexport const getDismissalHistory = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/GetDismissalHistory`;\n\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n StudentID: params.StudentID,\n LastDismissalID: params.DispatchID,\n PageSize: 100,\n });\n\n return validateResponse(response);\n};\nexport const getPositionInLine = async ({ pickupModeId, studentId }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}school/GetPositionInLine`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n PickupModeID: pickupModeId,\n StudentID: studentId,\n });\n\n return validateResponse(response);\n};\n\nexport const getPreviousAndFuturePickups = async ({ currenDate }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/getstudents?ParentLocalDate=${currenDate}`;\n const FullUrl = PostURL + param;\n const response = await getAxios().get(FullUrl);\n return validateResponse(response);\n};\n\n// Submit Early Dismissal\nexport const submitEarlyDismissal = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/SubmitEarlyDismissalRequest`;\n\n const FullUrl = PostURL + param;\n console.log(\n ` Submit Early Dismissal Full URL with params ${FullUrl} Param ${JSON.stringify(\n params\n )}`\n );\n const response = await getAxios().post(FullUrl, params);\n\n return validateResponse(response);\n};\n\n// Cancel Early Dismissal\nexport const cancelEarlyDismissal = async (id) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/CancelEarlyDismissal?Id=${id}`;\n\n const FullUrl = PostURL + param;\n console.log(` Cancel Early Dismissal Full URL ${FullUrl} with Id ${id}`);\n const response = await getAxios().post(FullUrl);\n\n return validateResponse(response);\n};\n\n// Date Range Early Dismissal\nexport const dateRangeEarlyDismissal = async (params) => {\n const PostURL = `${getEnvironment()}student/GetEarlyDismissalsForDateRange`;\n\n const FullUrl = PostURL;\n console.log(\n ` Date Range Early Dismissal Full URL ${FullUrl} with ID ${JSON.stringify(\n params\n )}}`\n );\n const response = await getAxios().post(FullUrl, params);\n\n return validateResponse(response);\n};\n\n// Get back to school Info\nexport const getBackToSchoolInfo = async () => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/getBackToSchoolInfo`;\n const FullUrl = PostURL + param;\n console.log(\"Get back to school info full URL -> \", FullUrl);\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\n// save back to school Info\nexport const saveBackToSchoolInfo = async (params) => {\n const PostURL = `${getEnvironment()}student/saveBackToSchoolInfo`;\n const FullUrl = PostURL;\n const passData = {\n Students: [params],\n };\n const response = await getAxios().post(FullUrl, passData);\n console.log(\n \"save back to school parameters ----> \",\n JSON.stringify(passData)\n );\n console.log(\"save back to school Info URL-> \", FullUrl);\n return validateResponse(response);\n};\n\n// Get Relationship type\nexport const getRelationshipType = async () => {\n const param = \"\";\n const PostURL = `${getEnvironment()}SystemData/RelationshipTypes`;\n const FullUrl = PostURL + param;\n console.log(\"Get Relationship type full URL -> \", FullUrl);\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\n\n// Get Fill back to school info\nexport const getFillbacktoschollinfo = async (studentId) => {\n const param = '';\n const PostURL = `${getEnvironment()}student/fillbacktoschoolinfo?studentId=${studentId}`;\n const FullUrl = PostURL + param;\n console.log('Get Fillbacktoschollinfo full URL -> ', FullUrl);\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};","import { getEnvironment, getAxios } from \"./config\";\nimport { validateResponse } from \"../../helper/utility\";\n\n/**\n * API call to http://35.167.52.234/api/GetSchoolPickupTimes\n * Purpose: Get School Details\n */\nexport const GetSchoolPickupTimes = async ({ SchoolID }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}school/GetSchoolPickupTimes?SchoolID=${SchoolID}`;\n const FullUrl = PostURL + param;\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\nexport const GetSchoolPickupModes = async ({ SchoolID }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}school/GetSchoolPickupModes?SchoolID=${SchoolID}`;\n const FullUrl = PostURL + param;\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\nexport const GetReasonsForAbsence = async ({ SchoolID }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}school/GetReasonsForAbsence?SchoolID=${SchoolID}`;\n const FullUrl = PostURL + param;\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\nexport const GetSchoolAfterSchools = async ({ SchoolID }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}school/GetSchoolAfterSchools?SchoolID=${SchoolID}`;\n const FullUrl = PostURL + param;\n // console.log(\"url for after school\", FullUrl);\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\nexport const getSchoolInfo2 = async ({ SchoolID, IncludeDismissalTimes }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}student/GetSchoolInfo?SchoolID=${SchoolID}&IncludeDismissalTimes=${IncludeDismissalTimes}`;\n const FullUrl = PostURL + param;\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\nexport const getHelp = async ({ schoolId, pageName, stackType }) => {\n const param = \"\";\n let PostURL = \"\";\n\n if (stackType === \"AuthStack\" || stackType === \"Registration\") {\n PostURL = `${getEnvironment()}school/GetHelp_Open?PageName=${pageName}`;\n } else {\n PostURL = `${getEnvironment()}school/GetHelp?SchoolID=${schoolId}&PageName=${pageName}`;\n }\n\n const FullUrl = PostURL + param;\n\n // console.log(\"HelpURL- \" + FullUrl);\n\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n","import { getEnvironment, getAxios } from \"./config\";\nimport { validateResponse } from \"../../helper/utility\";\n\nexport const schoolCheckin = async () => {\n const param = \"\";\n const PostURL = `${getEnvironment()}checkin/GetSchoolIDsWhichParentCanCheckIn`;\n const FullUrl = PostURL + param;\n // console.log(\"schoolCheckin \" + FullUrl);\n const response = await getAxios().post(FullUrl);\n return validateResponse(response);\n};\n\nexport const schoolGeoFenceInformation = async ({ schoolId }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}checkin/GetSchoolGeoFenceInformation?SchoolID=${schoolId}`;\n const FullUrl = PostURL + param;\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\nexport const CheckInByParent = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}checkin/CheckInByParent`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n SchoolID: params.schoolID,\n CheckParentIn: params.checkInParent,\n StudentIDs: params.studentIDs,\n QuestionsAndAnswers: params.questionsAndAnswers,\n });\n\n return validateResponse(response);\n};\n\nexport const checkInGetQuestions = async ({ schoolID, studentID }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}checkin/GetQuestions?SchoolID=${schoolID}&StudentID=${studentID}`;\n const FullUrl = PostURL + param;\n\n // console.log(\"checkInGetQuestions \" + FullUrl);\n const response = await getAxios().get(FullUrl);\n\n return validateResponse(response);\n};\n\nexport const CheckInParentQuestions = async ({ schoolID }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}checkin/GetParentQuestions`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n SchoolID: schoolID,\n });\n\n return validateResponse(response);\n};\n\nexport const DoesSchoolAllowCheckIn = async ({ schoolIDs }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}checkin/DoesSchoolAllowCheckIn`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n SchoolIDs: schoolIDs,\n });\n\n return validateResponse(response);\n};\n\nexport const schoolStudentCanCheckIn = async ({ schoolID, studentIDs }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}checkin/CanCheckIn`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n SchoolID: schoolID,\n StudentIDs: studentIDs,\n });\n\n return validateResponse(response);\n};\n\nexport const whoCanCheckInToday = async ({ schoolID, studentIDs }) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}checkin/WhoCanCheckInToday`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n SchoolID: schoolID,\n StudentIDs: studentIDs,\n });\n\n return validateResponse(response);\n};\n","import { getEnvironment, getAxios } from \"./config\";\nimport { validateResponse } from \"../../helper/utility\";\n\nexport const parentAdvertList = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}advert/GetParentAdvertList`;\n const FullUrl = PostURL + param;\n const response = await getAxios().post(FullUrl, {\n SchoolIDs: params.SchoolIDs,\n });\n\n return validateResponse(response);\n};\n\nexport const logAdvertServe = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}advert/LogAdServe?SchoolID=14&ParentAdvertisementID=18`;\n const FullUrl = PostURL + param;\n const response = await getAxios().get(FullUrl, {\n SchoolID: params.schoolID,\n ParentAdvertisementID: params.ParentAdvertisementID,\n });\n\n return validateResponse(response);\n};\n\nexport const logParentAdvertClick = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}advert/LogAdClick`;\n const FullUrl = PostURL + param;\n const response = await getAxios().get(FullUrl, {\n SchoolID: params.schoolID,\n ParentAdvertisementID: params.ParentAdvertisementID,\n });\n\n return validateResponse(response);\n};\n\nexport const parentAdvertPhoto = async (params) => {\n const param = \"\";\n const PostURL = `${getEnvironment()}advert/GetParentAdvertisementPhoto`;\n const FullUrl = PostURL + param;\n const response = await getAxios().get(FullUrl, {\n SchoolID: params.schoolID,\n ParentAdvertisementID: params.ParentAdvertisementID,\n });\n\n return validateResponse(response);\n};\n","import {\n CHECK_EMAIL_START,\n CHECK_EMAIL_SUCCESS,\n CHECK_EMAIL_FAILED,\n CHECK_EMAIL_CLEAR,\n VERIFIED_EMAIL_START,\n VERIFIED_EMAIL_SUCCESS,\n VERIFIED_EMAIL_FAILED,\n VERIFIED_EMAIL_CLEAR,\n ADD_PHONE_NUMBER_USER_START,\n ADD_PHONE_NUMBER_USER_SUCCESS,\n ADD_PHONE_NUMBER_USER_FAILED,\n ADD_PHONE_NUMBER_USER_CLEAR,\n RE_SEND_EMAIL_START,\n RE_SEND_EMAIL_SUCCESS,\n RE_SEND_EMAIL_FAILED,\n RE_SEND_EMAIL_CLEAR,\n SAVE_REGISTRATION_INFO,\n SAVE_REGISTRATION_CLEAR,\n VERIFY_OTP_START,\n VERIFY_OTP_SUCCESS,\n VERIFY_OTP_FAILED,\n VERIFY_OTP_CLEAR,\n RE_SEND_OTP_START,\n RE_SEND_OTP_SUCCESS,\n RE_SEND_OTP_FAILED,\n RE_SEND_OTP_CLEAR,\n GET_USER_INFO_START,\n GET_USER_INFO_SUCCESS,\n GET_USER_INFO_FAILED,\n GET_USER_INFO_CLEAR,\n COMPLETE_REGISTRATION_USER_START,\n COMPLETE_REGISTRATION_USER_SUCCESS,\n COMPLETE_REGISTRATION_USER_FAILED,\n COMPLETE_REGISTRATION_USER_CLEAR,\n START_REGISTARTION_START,\n START_REGISTARTION_SUCCESS,\n START_REGISTARTION_FAILED,\n START_REGISTARTION_CLEAR,\n LOGIN_USER_START,\n LOGIN_USER_SUCCESS,\n LOGIN_USER_FAILED,\n LOGIN_USER_CLEAR,\n COUNTRY_CODE_LIST_START,\n COUNTRY_CODE_LIST_SUCCESS,\n COUNTRY_CODE_LIST_FAILED,\n LOGIN_REGISTERED_USER,\n LOGOUT_USER,\n CHANGE_LOCALE_START,\n CHANGE_LOCALE_SUCCESS,\n CHANGE_LOCALE_FAILED,\n UPDATE_NAME_START,\n UPDATE_NAME_SUCCESS,\n UPDATE_NAME_FAILED,\n UPDATE_NAME_CLEAR,\n FORGOT_PASSWORD_START,\n FORGOT_PASSWORD_SUCCESS,\n FORGOT_PASSWORD_FAILED,\n FORGOT_PASSWORD_CLEAR,\n RAGISTRATION_VALID_START,\n RAGISTRATION_VALID_SUCCESS,\n RAGISTRATION_VALID_FAILED,\n UPDATE_PASSWORD_START,\n UPDATE_PASSWORD_SUCCESS,\n UPDATE_PASSWORD_FAILED,\n UPDATE_PASSWORD_CLEAR,\n GET_NOTIFICATIONS_START,\n GET_NOTIFICATIONS_SUCCESS,\n GET_NOTIFICATIONS_FAILED,\n GET_NOTIFICATIONS_CLEAR,\n SUBMIT_FEEDBACK_START,\n SUBMIT_FEEDBACK_SUCCESS,\n SUBMIT_FEEDBACK_FAILED,\n SUBMIT_FEEDBACK_CLEAR,\n GET_DELEGATES_START,\n GET_DELEGATES_SUCCESS,\n GET_DELEGATES_FAILED,\n GET_DELEGATES_CLEAR,\n APPROVED_DELEGATES_START,\n APPROVED_DELEGATES_SUCCESS,\n APPROVED_DELEGATES_FAILED,\n APPROVED_DELEGATES_CLEAR,\n APPROVED_DELEGATES_CHANGE_START,\n APPROVED_DELEGATES_CHANGE_SUCCESS,\n APPROVED_DELEGATES_CHANGE_FAILED,\n APPROVED_DELEGATES_CHANGE_CLEAR,\n DELEGATES_SET_DELETED_START,\n DELEGATES_SET_DELETED_SUCCESS,\n DELEGATES_SET_DELETED_FAILED,\n DELEGATES_SET_DELETED_CLEAR,\n UPDATE_DEVICE_TOKEN_START,\n UPDATE_DEVICE_TOKEN_SUCCESS,\n UPDATE_DEVICE_TOKEN_FAILED,\n UPDATE_DEVICE_TOKEN_CLEAR,\n GET_TOKEN_VALID_START,\n GET_TOKEN_VALID_SUCCESS,\n GET_TOKEN_VALID_FAILED,\n GET_TOKEN_VALID_CLEAR,\n GET_HELP_TOPICS_START,\n GET_HELP_TOPICS_SUCCESS,\n GET_HELP_TOPICS_FAILED,\n SEND_SUPPORT_REQUEST_START,\n SEND_SUPPORT_REQUEST_SUCCESS,\n SEND_SUPPORT_REQUEST_FAILED,\n SEND_SUPPORT_REQUEST_CLEAR,\n GET_NOTIFICATION_SETTING_START,\n GET_NOTIFICATION_SETTING_SUCCESS,\n GET_NOTIFICATION_SETTING_FAILED,\n GET_NOTIFICATION_SETTING_CLEAR,\n UPDATE_NOTIFICATION_SETTING_START,\n UPDATE_NOTIFICATION_SETTING_SUCCESS,\n UPDATE_NOTIFICATION_SETTING_FAILED,\n UPDATE_NOTIFICATION_SETTING_CLEAR,\n LOG_ERRORS_BROWSER_START,\n LOG_ERRORS_BROWSER_SUCCESS,\n LOG_ERRORS_BROWSER_FAILED,\n LOG_ERRORS_BROWSER_CLEAR,\n LOG_ERRORS_FILE_START,\n LOG_ERRORS_FILE_SUCCESS,\n LOG_ERRORS_FILE_FAILED,\n LOG_ERRORS_FILE_CLEAR,\n CONNECT_STUDENT_START,\n CONNECT_STUDENT_SUCCESS,\n CONNECT_STUDENT_FAILED,\n CONNECT_STUDENT_CLEAR,\n SET_ENVIRONMENT,\n SAVE_LAST_USED_TIMESTAMP,\n SAVE_LOCATION_PERMISSION,\n GET_FUTURE_ENTRIES_START,\n GET_FUTURE_ENTRIES_SUCCESS,\n GET_FUTURE_ENTRIES_FAILURE,\n TOGGLE_MODAL,\n HIDE_MODAL,\n TOGGLE_CHECKIN_QUEST_ANS,\n SET_HELPLIST,\n SET_OLD_HELPLIST,\n HIDE_ADS,\n GET_FUTURE_ENTRIES_CLEAR,\n SAVE_PHOTO,\n SAVE_ALL_PHOTOS,\n UPLOAD_DELEGATE_IMAGE_START,\n UPLOAD_DELEGATE_IMAGE_SUCCESS,\n UPLOAD_DELEGATE_IMAGE_FAILED,\n REQUEST_MANUAL_REVIEW_START,\n REQUEST_MANUAL_REVIEW_SUCCESS,\n REQUEST_MANUAL_REVIEW_FAILED,\n CANCEL_MANUAL_REVIEW_START,\n CANCEL_MANUAL_REVIEW_SUCCESS,\n CANCEL_MANUAL_REVIEW_FAILED,\n UPLOAD_DELEGATE_IMAGE_CLEAR,\n REQUEST_MANUAL_REVIEW_CLEAR,\n CANCEL_MANUAL_REVIEW_CLEAR,\n GET_DELEGATE_START,\n GET_DELEGATE_SUCCESS,\n GET_DELEGATE_FAILED,\n GET_DELEGATE_CLEAR,\n ACCOUNT_DELETE_START,\n ACCOUNT_DELETE_SUCCESS,\n ACCOUNT_DELETE_FAILED,\n ACCOUNT_DELETE_CLEAR,\n SAVE_TERMS_ACCEPTED,\n ASK_ME_LATER_SAVE,\n RESET_USER_LOCATION,\n BACKTOSCHOOL_DATA_FILLED,\n} from \"./userActionType\";\n\nimport {\n fetchEta,\n startRegistration,\n checkEmail,\n getIsEmailVerified,\n addPhoneNumber,\n ResendEmailVerificationMail,\n verifyOtp,\n getUserInfo,\n registerUser,\n userLogin,\n getCountryCodesListing,\n ChangeLocale,\n updateName,\n forgotPassword,\n registrationValid,\n updatePassword,\n getDelagates,\n upsertApprovedDelegate,\n approvedDelegateChange,\n delegateSetDeleted,\n getNotifications,\n submitFeedback,\n updateDeviceToken,\n isTokenValid,\n getHelpTopics,\n sendFeedbackWithChild,\n getNotificationSettings,\n updateParentNotificationSettings,\n logErrorsBrowser,\n fileLogErrors,\n connectStudent,\n getFutureCalendarEntriesByParent,\n uploadDelegateImage,\n RequestManualReviewImage,\n CancelManualReviewImage,\n getDelegate,\n deleteAccount,\n} from \"../../services\";\nimport { validateError } from \"../../../helper/utility\";\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/api/registraton/StartRegistration\n * Purpose: start registration\n */\nexport const startUserRegistration = (params) => (dispatch) => {\n dispatch({ type: START_REGISTARTION_START });\n // console.log(`check registration parameters ${JSON.stringify(params)}`);\n return startRegistration(params)\n .then((response) => {\n // console.log(`check registration response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: START_REGISTARTION_SUCCESS, payload: response.Data });\n else {\n dispatch({ type: START_REGISTARTION_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`check registration error ${JSON.stringify(error)}`);\n dispatch({ type: START_REGISTARTION_FAILED, payload: error });\n });\n};\n\n/**\n * Purpose: start registartion clear\n */\nexport const startRegistrationClear = () => (dispatch) => {\n dispatch({ type: START_REGISTARTION_CLEAR });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/api/registraton/checkEmail\n * Purpose: check User Email Address\n */\nexport const checkUserEmail = ({ Email, locale }) => (dispatch) => {\n dispatch({ type: CHECK_EMAIL_START });\n // console.log(`check Email parameters ${Email} language ${locale} `);\n return checkEmail({ Email, locale })\n .then((response) => {\n // console.log(`check Email${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: CHECK_EMAIL_SUCCESS, payload: response });\n else {\n dispatch({ type: CHECK_EMAIL_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`check Email ${JSON.stringify(error)}`);\n dispatch({ type: CHECK_EMAIL_FAILED, payload: error });\n });\n};\n\n/**\n * Purpose: Clear user Check email\n */\nexport const checkUserEmailClear = () => (dispatch) => {\n dispatch({ type: CHECK_EMAIL_CLEAR });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/Registration/is_email_confirmed\n * Purpose: Verification User Email Address\n */\nexport const verifiedUserEmail = ({ Email }) => (dispatch) => {\n dispatch({ type: VERIFIED_EMAIL_START });\n\n return getIsEmailVerified({ Email })\n .then((response) => {\n // console.log(`verfied Email response ${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: VERIFIED_EMAIL_SUCCESS, payload: response });\n else {\n dispatch({ type: VERIFIED_EMAIL_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`verfied Email error ${JSON.stringify(error)}`);\n dispatch({ type: VERIFIED_EMAIL_FAILED, payload: error });\n });\n};\n\n/**\n * Purpose: Clear user verification email\n */\nexport const verifiedUserEmailClear = () => (dispatch) => {\n dispatch({ type: VERIFIED_EMAIL_CLEAR });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/api/Registration/UpdatePhone\n * Purpose: add phone number\n */\nexport const addUserPhoneNumber = (params) => (dispatch) => {\n dispatch({ type: ADD_PHONE_NUMBER_USER_START });\n // console.log(`phone number parameters new ${JSON.stringify(params)} `);\n return addPhoneNumber(params)\n .then((response) => {\n // console.log(`phone number response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: ADD_PHONE_NUMBER_USER_SUCCESS, payload: response });\n else {\n dispatch({ type: ADD_PHONE_NUMBER_USER_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`phone number error ${JSON.stringify(error)}`);\n dispatch({ type: ADD_PHONE_NUMBER_USER_FAILED, payload: error });\n });\n};\n\n/**\n * Purpose: add user phone number\n */\nexport const userPhoneNumberClear = () => (dispatch) => {\n dispatch({ type: ADD_PHONE_NUMBER_USER_CLEAR });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/api/resend_email\n * Purpose: re send link to email address\n */\nexport const reSendEmailUser = ({ Email }) => (dispatch) => {\n dispatch({ type: RE_SEND_EMAIL_START });\n return ResendEmailVerificationMail({ Email })\n .then((response) => {\n // console.log(`resend Email response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: RE_SEND_EMAIL_SUCCESS, payload: response });\n else {\n dispatch({ type: RE_SEND_EMAIL_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`resend Email error ${JSON.stringify(error)}`);\n dispatch({ type: RE_SEND_EMAIL_FAILED, payload: error });\n });\n};\n\n/**\n * Purpose: clear resend email\n */\nexport const reSendEmailClear = () => (dispatch) => {\n dispatch({ type: RE_SEND_EMAIL_CLEAR });\n};\n\nexport const saveRegistrationInfo = ({\n registeredEmail,\n registeredPassword,\n registeredFirstname,\n registeredLastname,\n registeredPhone,\n registeredCountryCode,\n registeredCountryName,\n registartionResponse,\n verifiedEmail,\n}) => (dispatch) => {\n dispatch({\n type: SAVE_REGISTRATION_INFO,\n payload: {\n registeredEmail,\n registeredPassword,\n registeredFirstname,\n registeredLastname,\n registeredPhone,\n registeredCountryCode,\n registeredCountryName,\n registartionResponse,\n verifiedEmail,\n },\n });\n};\n\nexport const clearRgistrationInfo = () => (dispatch) => {\n dispatch({ type: SAVE_REGISTRATION_CLEAR });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/api/verify_otp\n * Purpose: verify otp\n */\nexport const verifyUserOtp = ({ OTPCode }) => (dispatch) => {\n dispatch({ type: VERIFY_OTP_START });\n // console.log(`OTP code ${OTPCode} `);\n return verifyOtp({ OTPCode })\n .then((response) => {\n // console.log(`verify OTP response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: VERIFY_OTP_SUCCESS, payload: response });\n else {\n dispatch({ type: VERIFY_OTP_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`verify OTP error ${JSON.stringify(error)}`);\n dispatch({ type: VERIFY_OTP_FAILED, payload: error });\n });\n};\n\n/**\n * Purpose: clear verify user otp\n */\nexport const verifyUserOtpClear = () => (dispatch) => {\n dispatch({ type: VERIFY_OTP_CLEAR });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/resend_otp\n * Purpose: Resend Otp\n */\nexport const resendOTP = (params) => (dispatch) => {\n dispatch({ type: RE_SEND_OTP_START });\n\n return addPhoneNumber(params)\n .then((response) => {\n // console.log(`resend otp response${JSON.stringify(response)}`);\n if (response) dispatch({ type: RE_SEND_OTP_SUCCESS, payload: response });\n else {\n dispatch({ type: RE_SEND_OTP_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`resend otp error ${JSON.stringify(error)}`);\n dispatch({ type: RE_SEND_OTP_FAILED, payload: error });\n });\n};\n\n/**\n * Purpose: Resend otp clear\n */\nexport const resendOTPClear = () => (dispatch) => {\n dispatch({ type: RE_SEND_OTP_CLEAR });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/getUserInfo\n * Purpose: get user information\n */\nexport const getUserInformation = () => (dispatch) => {\n dispatch({ type: GET_USER_INFO_START });\n\n return getUserInfo()\n .then((response) => {\n // console.log(`user information response new ${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: GET_USER_INFO_SUCCESS, payload: response });\n else {\n dispatch({ type: GET_USER_INFO_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`user information error ${JSON.stringify(error)}`);\n dispatch({ type: GET_USER_INFO_FAILED, payload: error });\n });\n};\n\n/**\n * Purpose: get user information clear\n */\nexport const getUserInfoClear = () => (dispatch) => {\n dispatch({ type: GET_USER_INFO_CLEAR });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/registerUser\n * Purpose: Get register user details\n */\nexport const completeRegisterUser = ({ Password }) => (dispatch) => {\n dispatch({ type: COMPLETE_REGISTRATION_USER_START });\n\n return registerUser({ Password })\n .then((response) => {\n // console.log(`get register user response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: COMPLETE_REGISTRATION_USER_SUCCESS,\n payload: response.Data,\n });\n else {\n dispatch({\n type: COMPLETE_REGISTRATION_USER_FAILED,\n payload: response,\n });\n }\n })\n .catch((error) => {\n // console.log(`get register user error ${JSON.stringify(error)}`);\n dispatch({ type: COMPLETE_REGISTRATION_USER_FAILED, payload: error });\n });\n};\n\n/**\n * Purpose: get register user clear\n */\nexport const completeRegisterUserClear = () => (dispatch) => {\n dispatch({ type: COMPLETE_REGISTRATION_USER_CLEAR });\n};\n\nexport const loginRegisteredUser = (payload) => (dispatch) => {\n dispatch({ type: LOGIN_REGISTERED_USER, payload });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/loginUser\n * Purpose:loginUser\n */\nexport const loginUser = ({ email, password, locale, env, callback }) => (\n dispatch\n) => {\n dispatch({ type: LOGIN_USER_START, payload: email });\n // console.log(`get user login email ${email} password ${password} locale ${locale}`);\n return userLogin({\n email,\n password,\n locale,\n env,\n })\n .then((response) => {\n // console.log(`get user login response${JSON.stringify(response)}`);\n if (response.Success) {\n dispatch({ type: LOGIN_USER_SUCCESS, payload: response.Data });\n } else {\n dispatch({ type: LOGIN_USER_FAILED, payload: response });\n }\n if (callback) callback(response);\n })\n .catch((error) => {\n // console.log(`get user login error ${error}`);\n const errorMessage = { Message: \"Unable to process request\" };\n dispatch({ type: LOGIN_USER_FAILED, payload: errorMessage });\n if (callback) callback({ Success: false });\n });\n};\n\n/**\n * Purpose: get register user clear\n */\nexport const loginUserClear = () => (dispatch) => {\n dispatch({ type: LOGIN_USER_CLEAR });\n};\n\nexport const getCountryCodes = () => (dispatch) => {\n dispatch({ type: COUNTRY_CODE_LIST_START });\n\n return getCountryCodesListing()\n .then((response) => {\n // console.log(`getCountryCodesListing response ${JSON.stringify(response)}`);\n if (response.Success) {\n const countryList = [];\n for (var i = 0; i < response.Data.length; i++) {\n const element = response.Data[i];\n countryList.push({\n CountryId: element.CountryId,\n CountryName: element.CountryName,\n CountryCode: element.CountryCode,\n label: element.CountryName + \"(\" + element.CountryCode + \")\",\n });\n }\n dispatch({ type: COUNTRY_CODE_LIST_SUCCESS, payload: countryList });\n } else {\n dispatch({ type: COUNTRY_CODE_LIST_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`getCountryCodesListing error ${JSON.stringify(error)}`);\n dispatch({ type: COUNTRY_CODE_LIST_FAILED, payload: error });\n });\n};\n\nexport const logoutUser = () => (dispatch) => {\n dispatch({ type: LOGOUT_USER });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/ChangeLocale\n * Purpose:ChangeLocale\n */\nexport const localeChange = ({ locale }) => (dispatch) => {\n dispatch({ type: CHANGE_LOCALE_START });\n\n return ChangeLocale({ locale })\n .then((response) => {\n // console.log(`change language response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: CHANGE_LOCALE_SUCCESS, payload: response.Data });\n else {\n dispatch({ type: CHANGE_LOCALE_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`change language error ${JSON.stringify(error)}`);\n dispatch({ type: CHANGE_LOCALE_FAILED, payload: error });\n });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/api/registraton/updateName\n * Purpose: updateName\n */\nexport const nameUpdate = ({ firstName, lastName }) => (dispatch) => {\n dispatch({ type: UPDATE_NAME_START });\n return updateName({ firstName, lastName })\n .then((response) => {\n // console.log(`update name response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: UPDATE_NAME_SUCCESS,\n payload: { response, firstName, lastName },\n });\n else {\n dispatch({ type: UPDATE_NAME_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`update name error ${JSON.stringify(error)}`);\n dispatch({ type: UPDATE_NAME_FAILED, payload: error });\n });\n};\n\nexport const nameUpdateClear = () => (dispatch) => {\n dispatch({ type: UPDATE_NAME_CLEAR });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/api/registraton/forgotPassword\n * Purpose: forgotPassword\n */\nexport const userForgotPassword = ({ email, locale }) => (dispatch) => {\n dispatch({ type: FORGOT_PASSWORD_START });\n return forgotPassword({ email, locale })\n .then((response) => {\n // console.log(`forgotPassword response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: FORGOT_PASSWORD_SUCCESS, payload: response });\n else {\n dispatch({ type: FORGOT_PASSWORD_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`forgotPassword error ${JSON.stringify(error)}`);\n dispatch({ type: FORGOT_PASSWORD_FAILED, payload: error });\n });\n};\n\nexport const userForgotPasswordClear = () => (dispatch) => {\n dispatch({ type: FORGOT_PASSWORD_CLEAR });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/getRegistrationValid\n * Purpose: getRegistrationValid\n */\nexport const getRegistrationValid = () => (dispatch) => {\n dispatch({ type: RAGISTRATION_VALID_START });\n\n return registrationValid()\n .then((response) => {\n // console.log(`registration valid response ${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: RAGISTRATION_VALID_SUCCESS, payload: response });\n else {\n dispatch({ type: RAGISTRATION_VALID_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`registration valid error ${JSON.stringify(error)}`);\n dispatch({ type: RAGISTRATION_VALID_FAILED, payload: error });\n });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/api/registraton/passwordUpdate\n * Purpose: passwordUpdate\n */\nexport const passwordUpdate = ({ oldPassword, newPassword }) => (dispatch) => {\n dispatch({ type: UPDATE_PASSWORD_START });\n return updatePassword({ oldPassword, newPassword })\n .then((response) => {\n // console.log(`update password response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: UPDATE_PASSWORD_SUCCESS, payload: response });\n else {\n dispatch({ type: UPDATE_PASSWORD_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`update password error ${JSON.stringify(error)}`);\n dispatch({ type: UPDATE_PASSWORD_FAILED, payload: error });\n });\n};\n\nexport const passwordUpdateClear = () => (dispatch) => {\n dispatch({ type: UPDATE_PASSWORD_CLEAR });\n};\n\nexport const feedbackSubmit = ({ feedback, token }) => (dispatch) => {\n dispatch({ type: SUBMIT_FEEDBACK_START });\n return submitFeedback({ feedback, token })\n .then((response) => {\n // console.log(` Submit Feedback response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: SUBMIT_FEEDBACK_SUCCESS, payload: response });\n else {\n dispatch({ type: SUBMIT_FEEDBACK_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Submit Feedback error ${JSON.stringify(error)}`);\n dispatch({ type: SUBMIT_FEEDBACK_FAILED, payload: error });\n });\n};\n\nexport const feedbackSubmitClear = () => (dispatch) => {\n dispatch({ type: SUBMIT_FEEDBACK_CLEAR });\n};\n\nexport const deviceTokenUpdate = ({ deviceType, deviceToken }) => (\n dispatch\n) => {\n dispatch({ type: UPDATE_DEVICE_TOKEN_START });\n // console.log(`Update Device token deviceType ${deviceType} deviceToken${deviceToken}`);\n return updateDeviceToken({ deviceType, deviceToken })\n .then((response) => {\n // console.log(`Update Device token response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: UPDATE_DEVICE_TOKEN_SUCCESS, payload: response });\n else {\n dispatch({ type: UPDATE_DEVICE_TOKEN_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Update Device toke error ${JSON.stringify(error)}`);\n dispatch({ type: UPDATE_DEVICE_TOKEN_FAILED, payload: error });\n });\n};\n\nexport const deviceTokenUpdateClear = () => (dispatch) => {\n dispatch({ type: UPDATE_DEVICE_TOKEN_CLEAR });\n};\n\nexport const getDelegates = ({ fetchAll }) => (dispatch) => {\n dispatch({ type: GET_DELEGATES_START });\n return getDelagates({ fetchAll })\n .then((response) => {\n // console.log(`Get delegates response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: GET_DELEGATES_SUCCESS, payload: response.Data });\n else {\n dispatch({ type: GET_DELEGATES_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Get delegates error ${JSON.stringify(error)}`);\n dispatch({ type: GET_DELEGATES_FAILED, payload: error });\n });\n};\n\nexport const getDelegatesClear = () => (dispatch) => {\n dispatch({ type: GET_DELEGATES_CLEAR });\n};\n\nexport const addApprovedDelegates = (params) => (dispatch) => {\n dispatch({ type: APPROVED_DELEGATES_START });\n return upsertApprovedDelegate(params)\n .then((response) => {\n // console.log(`addApprovedDelegates response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: APPROVED_DELEGATES_SUCCESS, payload: response.Data });\n else {\n dispatch({ type: APPROVED_DELEGATES_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`addApprovedDelegates error ${JSON.stringify(error)}`);\n dispatch({ type: APPROVED_DELEGATES_FAILED, payload: error });\n });\n};\n\nexport const addApprovedDelegatesClear = () => (dispatch) => {\n dispatch({ type: APPROVED_DELEGATES_CLEAR });\n};\n\nexport const updateApprovedDelegatesChange = ({\n list_parentDelegateID,\n isActive,\n}) => (dispatch) => {\n dispatch({ type: APPROVED_DELEGATES_CHANGE_START });\n return approvedDelegateChange({ list_parentDelegateID, isActive })\n .then((response) => {\n // console.log(`updateApprovedDelegatesChange response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: APPROVED_DELEGATES_CHANGE_SUCCESS,\n payload: response,\n });\n else {\n dispatch({ type: APPROVED_DELEGATES_CHANGE_FAILED, payload: response });\n }\n })\n .catch((error) => {\n dispatch({ type: APPROVED_DELEGATES_CHANGE_FAILED, payload: error });\n });\n};\n\nexport const updateApprovedDelegatesChangeClear = () => (dispatch) => {\n dispatch({ type: APPROVED_DELEGATES_CHANGE_CLEAR });\n};\n\nexport const deleteDelegate = ({ list_ParentDelegateId }) => (dispatch) => {\n dispatch({ type: DELEGATES_SET_DELETED_START });\n return delegateSetDeleted({ list_ParentDelegateId })\n .then((response) => {\n // console.log(`Delegates deleted response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: DELEGATES_SET_DELETED_SUCCESS,\n payload: response.Data,\n });\n else {\n dispatch({ type: DELEGATES_SET_DELETED_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Delegates deleted error ${JSON.stringify(error)}`);\n dispatch({ type: DELEGATES_SET_DELETED_FAILED, payload: error });\n });\n};\n\nexport const deleteDelegateClear = () => (dispatch) => {\n dispatch({ type: DELEGATES_SET_DELETED_CLEAR });\n};\n\nexport const getIsTokenValid = () => (dispatch) => {\n dispatch({ type: GET_TOKEN_VALID_START });\n return isTokenValid()\n .then((response) => {\n // console.log(`Get is token valid response${JSON.stringify(response)}`);\n dispatch({ type: GET_TOKEN_VALID_SUCCESS, payload: response });\n })\n .catch((error) => {\n // console.log(`Get is token valid error ${JSON.stringify(error)}`);\n dispatch({ type: GET_TOKEN_VALID_FAILED, payload: error });\n });\n};\n\nexport const getIsTokenValidClear = () => (dispatch) => {\n dispatch({ type: GET_TOKEN_VALID_CLEAR });\n};\n\nexport const getNotificationsList = ({\n LastNotificationID,\n notificationTypeId,\n}) => (dispatch) => {\n dispatch({ type: GET_NOTIFICATIONS_START });\n return getNotifications({ LastNotificationID, notificationTypeId })\n .then((response) => {\n if (response.Success)\n dispatch({ type: GET_NOTIFICATIONS_SUCCESS, payload: response.Data });\n else {\n dispatch({ type: GET_NOTIFICATIONS_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Get Notifications paging error ${JSON.stringify(error)}`);\n dispatch({ type: GET_NOTIFICATIONS_FAILED, payload: error });\n });\n};\n\nexport const notificationsListClear = () => (dispatch) => {\n dispatch({ type: GET_NOTIFICATIONS_CLEAR });\n};\n\nexport const getTopics = ({ schoolIds }) => (dispatch) => {\n dispatch({ type: GET_HELP_TOPICS_START });\n return getHelpTopics({ schoolIds })\n .then((response) => {\n const topics = [];\n const allTopics = response.Data;\n topics.push({\n label: \"Select\",\n value: 0,\n });\n for (let i = 0; i < allTopics.length; i++) {\n topics.push({\n label: `${allTopics[i].Description}`,\n value: `${allTopics[i].ListHelpTopicID}`,\n });\n }\n // console.log(\"Get help topics response\", JSON.stringify(response));\n\n if (response.Success)\n dispatch({ type: GET_HELP_TOPICS_SUCCESS, payload: topics });\n else {\n dispatch({ type: GET_HELP_TOPICS_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(\"Get help topics error\", JSON.stringify(error));\n dispatch({ type: GET_HELP_TOPICS_FAILED, payload: error });\n });\n};\n\nexport const sendSupportRequest = (params) => (dispatch) => {\n dispatch({ type: SEND_SUPPORT_REQUEST_START });\n return sendFeedbackWithChild(params)\n .then((response) => {\n // console.log(`SendSupport request response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: SEND_SUPPORT_REQUEST_SUCCESS,\n payload: response.Data,\n });\n else {\n dispatch({ type: SEND_SUPPORT_REQUEST_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`SendSupport request error ${JSON.stringify(error)}`);\n dispatch({ type: SEND_SUPPORT_REQUEST_FAILED, payload: error });\n });\n};\n\nexport const sendSupportRequestClear = () => (dispatch) => {\n dispatch({ type: SEND_SUPPORT_REQUEST_CLEAR });\n};\n\nexport const notificationSetting = () => (dispatch) => {\n dispatch({ type: GET_NOTIFICATION_SETTING_START });\n return getNotificationSettings()\n .then((response) => {\n // console.log(\"Get Notifications setting response\",JSON.stringify(response));\n\n if (response.Success)\n dispatch({\n type: GET_NOTIFICATION_SETTING_SUCCESS,\n payload: response.Data,\n });\n else {\n dispatch({ type: GET_NOTIFICATION_SETTING_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(\"Get Notifications setting error\", JSON.stringify(error));\n dispatch({ type: GET_NOTIFICATION_SETTING_FAILED, payload: error });\n });\n};\nexport const notificationSettingClear = () => (dispatch) => {\n dispatch({ type: GET_NOTIFICATION_SETTING_CLEAR });\n};\nexport const notificationSettingUpdate = (params) => (dispatch) => {\n dispatch({ type: UPDATE_NOTIFICATION_SETTING_START });\n return updateParentNotificationSettings(params)\n .then((response) => {\n if (response)\n dispatch({\n type: UPDATE_NOTIFICATION_SETTING_SUCCESS,\n payload: response,\n });\n else {\n dispatch({\n type: UPDATE_NOTIFICATION_SETTING_FAILED,\n payload: response,\n });\n }\n })\n .catch((error) => {\n // console.log(`update notification setting error ${JSON.stringify(error)}`);\n dispatch({ type: UPDATE_NOTIFICATION_SETTING_FAILED, payload: error });\n });\n};\nexport const notificationSettingUpdateClear = () => (dispatch) => {\n dispatch({ type: UPDATE_NOTIFICATION_SETTING_CLEAR });\n};\n\nexport const setEnvironment = ({ env, callback }) => (dispatch) => {\n dispatch({ type: SET_ENVIRONMENT, payload: env });\n if (callback) callback();\n};\n\nexport const saveLastUsedTimeStamp = () => (dispatch) => {\n dispatch({ type: SAVE_LAST_USED_TIMESTAMP, payload: {} });\n};\n\nexport const saveLocationPermission = (permission) => (dispatch) => {\n dispatch({ type: SAVE_LOCATION_PERMISSION, payload: permission });\n};\n\nexport const fetchDistance = ({\n deviceLat,\n deviceLon,\n schoolLatitude,\n schoolLongitude,\n callback,\n}) => (dispatch) => {\n console.log(\n `fetchDistance request ${JSON.stringify({\n deviceLat,\n deviceLon,\n schoolLatitude,\n schoolLongitude,\n })}`\n );\n return fetchEta(deviceLat, deviceLon, schoolLatitude, schoolLongitude)\n .then((response) => {\n console.log(`fetchDistance response ${JSON.stringify(response)}`);\n if (callback) callback(response);\n })\n .catch((error) => {\n if (callback) callback({ code: \"Failed\" });\n });\n};\n/**\n * API: // http://35.167.52.234/api/account/logErrrors\n * Purpose: logErrors\n */\nexport const errorsLogBrowser = (params) => (dispatch) => {\n dispatch({ type: LOG_ERRORS_BROWSER_START });\n return logErrorsBrowser(params)\n .then((response) => {\n // console.log(`logErrorsBrowser response ${JSON.stringify(response)}`);\n if (response)\n dispatch({ type: LOG_ERRORS_BROWSER_SUCCESS, payload: response });\n else {\n dispatch({ type: LOG_ERRORS_BROWSER_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`logErrorsBrowser error ${JSON.stringify(error)}`);\n dispatch({ type: LOG_ERRORS_BROWSER_FAILED, payload: error });\n });\n};\n\nexport const errorsLogBrowserClear = () => (dispatch) => {\n dispatch({ type: LOG_ERRORS_BROWSER_CLEAR });\n};\n\n/**\n * API: // http://35.167.52.234/api/account/logErrrorsFile\n * Purpose: logErrorsFile\n */\nexport const errorsLogBrowserFile = (params) => (dispatch) => {\n dispatch({ type: LOG_ERRORS_FILE_START });\n return fileLogErrors(params)\n .then((response) => {\n // console.log(`logErrorsBrowserFile response ${JSON.stringify(response)}`);\n if (response)\n dispatch({ type: LOG_ERRORS_FILE_SUCCESS, payload: response });\n else {\n dispatch({ type: LOG_ERRORS_FILE_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`logErrorsBrowserFile error ${JSON.stringify(error)}`);\n dispatch({ type: LOG_ERRORS_FILE_FAILED, payload: error });\n });\n};\n\nexport const errorsLogBrowserFileClear = () => (dispatch) => {\n dispatch({ type: LOG_ERRORS_FILE_CLEAR });\n};\n\n/**\n * API: // http://35.167.52.234/api/account/ConnectStudent\n * Purpose: connectStudent\n */\nexport const studentWithConnect = (params) => (dispatch) => {\n // console.log(`studentWithConnect params ${JSON.stringify(params)}`);\n dispatch({ type: CONNECT_STUDENT_START });\n return connectStudent(params)\n .then((response) => {\n // console.log(`studentWithConnect response ${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: CONNECT_STUDENT_SUCCESS, payload: response });\n else {\n dispatch({ type: CONNECT_STUDENT_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`studentWithConnect error ${JSON.stringify(error)}`);\n dispatch({ type: CONNECT_STUDENT_FAILED, payload: error });\n });\n};\n\nexport const studentWithConnectClear = () => (dispatch) => {\n dispatch({ type: CONNECT_STUDENT_CLEAR });\n};\n\nexport const getFutureEntries = (params) => (dispatch) => {\n // console.log(`getFutureEntries params ${JSON.stringify(params)}`);\n dispatch({ type: GET_FUTURE_ENTRIES_START });\n return getFutureCalendarEntriesByParent(params)\n .then((response) => {\n // console.log(`getFutureEntries response ${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: GET_FUTURE_ENTRIES_SUCCESS,\n payload: response.Result,\n });\n else {\n dispatch({ type: GET_FUTURE_ENTRIES_FAILURE, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`getFutureEntries error ${JSON.stringify(error)}`);\n dispatch({ type: GET_FUTURE_ENTRIES_FAILURE, payload: error });\n });\n};\nexport const getFutureEntriesClear = () => (dispatch) => {\n dispatch({ type: GET_FUTURE_ENTRIES_CLEAR });\n};\n\nexport const showModal = ({\n status,\n modalLevel,\n modalScreenName,\n modalClassName,\n params,\n}) => (dispatch) => {\n dispatch({\n type: TOGGLE_MODAL,\n payload: { status, modalLevel, modalScreenName, modalClassName, params },\n });\n};\n\nexport const hideModal = () => (dispatch) => {\n dispatch({ type: HIDE_MODAL });\n};\n\nexport const showCheckinQuestAns = ({\n status,\n showSchoolChildrenList,\n params,\n}) => (dispatch) => {\n dispatch({\n type: TOGGLE_CHECKIN_QUEST_ANS,\n payload: { status, showSchoolChildrenList, params },\n });\n};\n\nexport const setHelpList = ({ stackType, screen, title, modalLevel }) => (\n dispatch\n) => {\n dispatch({\n type: SET_HELPLIST,\n payload: { stackType, screen, title, modalLevel },\n });\n};\n\nexport const setOldHelpSetting = () => (dispatch) => {\n // dispatch({ type: SET_OLD_HELPLIST });\n};\n\nexport const hideAds = ({ displayAds }) => (dispatch) => {\n dispatch({\n type: HIDE_ADS,\n payload: { displayAds },\n });\n};\n\nexport const saveAvatar = ({ id, filename }) => (dispatch) => {\n dispatch({ type: SAVE_PHOTO, payload: { id, filename } });\n};\n\nexport const saveAllAvatar = (avatars) => (dispatch) => {\n dispatch({ type: SAVE_ALL_PHOTOS, payload: avatars });\n};\n\n// Upload delegate image\nexport const delegateImageUpload = ({ image, parentDelegateID, file }) => (\n dispatch\n) => {\n dispatch({ type: UPLOAD_DELEGATE_IMAGE_START });\n console.log(\n `Upload delegate image Param ${JSON.stringify(image, parentDelegateID)} `\n );\n return uploadDelegateImage(image, parentDelegateID)\n .then((response) => {\n console.log(`Upload delegate image Response ${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: UPLOAD_DELEGATE_IMAGE_SUCCESS, payload: response });\n else {\n dispatch({ type: UPLOAD_DELEGATE_IMAGE_FAILED, payload: response });\n }\n })\n .catch((error) => {\n console.log(`Upload delegate image error ${JSON.stringify(error)}`);\n dispatch({\n type: UPLOAD_DELEGATE_IMAGE_FAILED,\n payload: validateError(error),\n });\n });\n};\nexport const delegateImageUploadErrorClear = () => (dispatch) => {\n dispatch({ type: UPLOAD_DELEGATE_IMAGE_CLEAR });\n};\n\n// Request manual review image\nexport const manualReviewRequest = (delegateImageId) => (dispatch) => {\n dispatch({ type: REQUEST_MANUAL_REVIEW_START });\n console.log(\n `Request manual review param ${JSON.stringify(delegateImageId)} `\n );\n return RequestManualReviewImage(delegateImageId)\n .then((response) => {\n console.log(`Request manual review response ${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: REQUEST_MANUAL_REVIEW_SUCCESS, payload: response });\n else {\n dispatch({ type: REQUEST_MANUAL_REVIEW_FAILED, payload: response });\n }\n })\n .catch((error) => {\n console.log(`Request manual review error ${JSON.stringify(error)}`);\n dispatch({\n type: REQUEST_MANUAL_REVIEW_FAILED,\n payload: validateError(error),\n });\n });\n};\n\nexport const manualRequestClear = () => (dispatch) => {\n dispatch({ type: REQUEST_MANUAL_REVIEW_CLEAR });\n};\n\n// Cancel manual review image\nexport const manualReviewCancel = (parentDelegateID) => (dispatch) => {\n dispatch({ type: CANCEL_MANUAL_REVIEW_START });\n console.log(`Cancel manual review ${JSON.stringify(parentDelegateID)} `);\n return CancelManualReviewImage(parentDelegateID)\n .then((response) => {\n console.log(`Cancel manual review ${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: CANCEL_MANUAL_REVIEW_SUCCESS, payload: response });\n else {\n dispatch({ type: CANCEL_MANUAL_REVIEW_FAILED, payload: response });\n }\n })\n .catch((error) => {\n console.log(`Cancel manual review ${JSON.stringify(error)}`);\n dispatch({\n type: CANCEL_MANUAL_REVIEW_FAILED,\n payload: validateError(error),\n });\n });\n};\n\nexport const manualReviewCancelClear = () => (dispatch) => {\n dispatch({ type: CANCEL_MANUAL_REVIEW_CLEAR });\n};\n\n// Get Delegate Action\nexport const getDelegateByID = (delegateId) => (dispatch) => {\n dispatch({ type: GET_DELEGATE_START });\n console.log(`Get Delegate Action param ${JSON.stringify(delegateId)} `);\n return getDelegate(delegateId)\n .then((response) => {\n console.log(`Get Delegate Action Success ${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: GET_DELEGATE_SUCCESS, payload: response });\n else {\n dispatch({ type: GET_DELEGATE_FAILED, payload: response });\n }\n })\n .catch((error) => {\n console.log(`Get Delegate Action error ${JSON.stringify(error)}`);\n dispatch({ type: GET_DELEGATE_FAILED, payload: validateError(error) });\n });\n};\n\n// Account Delete Action\nexport const accountDelete = (email, password) => (dispatch) => {\n dispatch({ type: ACCOUNT_DELETE_START });\n console.log(\n `Account Delete Action param ${JSON.stringify(email, password)} `\n );\n return deleteAccount(email, password)\n .then((response) => {\n console.log(`Account Delete Action Success ${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: ACCOUNT_DELETE_SUCCESS, payload: response });\n else {\n dispatch({ type: ACCOUNT_DELETE_FAILED, payload: response });\n }\n })\n .catch((error) => {\n console.log(`Account Delete Action error ${JSON.stringify(error)}`);\n dispatch({ type: ACCOUNT_DELETE_FAILED, payload: validateError(error) });\n });\n};\n\nexport const accountDeleteClear = () => (dispatch) => {\n dispatch({ type: ACCOUNT_DELETE_CLEAR });\n};\n\nexport const saveTermsAccepted = (params) => (dispatch) => {\n dispatch({\n type: SAVE_TERMS_ACCEPTED,\n payload: params,\n });\n};\n\n// Ask me later save and clear\nexport const saveNextAskMeDate = (type) => (dispatch) => {\n const nextAskMeLater = new Date();\n if (type === 1) {\n nextAskMeLater.setDate(nextAskMeLater.getDate() + 1);\n } else if (type === 2) {\n nextAskMeLater.setFullYear(nextAskMeLater.getFullYear() + 1);\n }\n\n dispatch({ type: ASK_ME_LATER_SAVE, payload: nextAskMeLater });\n};\n\nexport const backtoschoolDataInfo = () => (dispatch) => {\n console.log('backtoschool_data_info Action');\n dispatch({\n type: BACKTOSCHOOL_DATA_FILLED,\n });\n};\n","import React from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { withTranslation } from \"react-i18next\";\nimport moment from \"moment\";\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\nclass RegisterFooter extends React.Component {\n render() {\n const copyRightfromYear = \"2015\";\n return (\n
\n

\n {this.props.t(\"regNameScr-needHelp\")}{\" \"}\n {this.props.t(\"footer-message-us-at\")}{\" \"}\n \n support@pikmykid.com\n \n

\n

\n {this.props.t(\"footer-view-our\")}{\" \"}\n \n Terms of Service\n \n

\n

\n {this.props.t(\"footer-copyright\")} {copyRightfromYear} -{\" \"}\n {moment().format(\"YYYY\")}\n

\n

{\"Ver. \" + GLOBAL_CONST.VERSION}

\n
\n );\n }\n}\n\nexport default withTranslation()(withRouter(RegisterFooter));\n","export default __webpack_public_path__ + \"static/media/pmk-logo.a35b589e.svg\";","import React from \"react\";\nimport logo from \"../assets/registerImages/pmk-logo.svg\";\nimport { withTranslation } from \"react-i18next\";\nimport appStoreIcon from \"../assets/commonImages/appStoreIcon.png\";\nimport googlePlayIcon from \"../assets/commonImages/googlePlayIcon.png\";\nclass RegisterHeader extends React.Component {\n render() {\n return (\n
\n
\n
\n \n \"PikMyKid\"\n \n
\n
\n
\n

\n {this.props.t(\"landingScreen-welcome-to\")} Pikmykid!\n

\n
\n
\n
\n
\n

\n Our apps are available in App store and Google playstore for\n download\n

\n
\n \n \n \n \n \"App\n \n
\n
\n
\n
\n
\n );\n }\n}\n\nexport default withTranslation()(RegisterHeader);\n","export default \"data:image/png;base64,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\"","export default \"data:image/png;base64,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\"","import React from \"react\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport { withTranslation } from \"react-i18next\";\nclass RegisterWizard extends React.Component {\n back = (event) => {\n event.preventDefault();\n event.stopPropagation();\n\tif(this.props.webPage === \"/registerPassword\"){\n\t\tthis.props.history.replace(\"/confirmPhone\");\n\t}else if(this.props.webPage === \"/confirmPhone\"){\n\t\tthis.props.history.replace(\"/registerPhone\");\n\t}else if(this.props.webPage === \"/registerPhone\"){\n\t\tthis.props.history.replace(\"/confirmEmail\");\n\t}else if(this.props.webPage === \"/confirmEmail\"){\n\t\tthis.props.history.replace(\"/registerEmail\");\n\t}else if(this.props.webPage === \"/registerEmail\"){\n\t\tthis.props.history.replace(\"/registerName\");\n\t}else{\n\t\tthis.props.history.goBack();\n\t}\n \n };\n\n render() {\n const { webPage } = this.props;\n return (\n <>\n
\n {this.back(event)}} className=\"previous-steps\">\n \n {this.props.t(\"regCardScr-preStep\")}\n \n \n
\n \n \n );\n }\n}\n\nexport default withTranslation()(withRouter(RegisterWizard));\n","import React from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport { validate } from \"schema-utils\";\nimport { Colors } from \"../../theme\";\n\nclass SubmitButton extends React.Component {\n render() {\n const { nextAction, buttonText, loading ,validateForm} = this.props;\n return (\n
\n \n
\n );\n }\n}\n\nexport default withTranslation()(SubmitButton);\n","import React from \"react\";\nimport { withRouter } from \"react-router-dom\";\nclass UserHeader extends React.Component {\n render() {\n return (\n
\n

user Header

\n
\n );\n }\n}\n\nexport default withRouter(UserHeader);\n","import React from \"react\";\nimport { withRouter } from \"react-router-dom\";\nclass UserFooter extends React.Component {\n render() {\n return (\n
\n

user Footer

\n
\n );\n }\n}\n\nexport default withRouter(UserFooter);\n","export default __webpack_public_path__ + \"static/media/settingsIcon.efd73638.svg\";","import _ from \"lodash\";\n\nexport const createLoadingSelector = (actions) => (state) =>\n _(actions).some((action) => _.get(state, `loading.${action}`));\n","import {\n GET_SCHOOL_CHECKIN_START,\n GET_SCHOOL_CHECKIN_SUCCESS,\n GET_SCHOOL_CHECKIN_FAILED,\n GET_SCHOOL_CHECKIN_CLEAR,\n GET_SCHOOL_INFORMATION_START,\n GET_SCHOOL_INFORMATION_SUCCESS,\n GET_SCHOOL_INFORMATION_FAILED,\n SUBMIT_CHECKIN_PARENT_START,\n SUBMIT_CHECKIN_PARENT_SUCCESS,\n SUBMIT_CHECKIN_PARENT_FAILED,\n SUBMIT_CHECKIN_PARENT_CLEAR,\n GET_CHECKIN_QUESTIONS_START,\n GET_CHECKIN_QUESTIONS_SUCCESS,\n GET_CHECKIN_QUESTIONS_FAILED,\n GET_CHECKIN_QUESTIONS_CLEAR,\n GET_CHECKIN_PARENT_QUESTIONS_START,\n GET_CHECKIN_PARENT_QUESTIONS_SUCCESS,\n GET_CHECKIN_PARENT_QUESTIONS_FAILED,\n GET_CHECKIN_PARENT_QUESTIONS_CLEAR,\n GET_SCHOOL_ALLOW_CHECKIN_START,\n GET_SCHOOL_ALLOW_CHECKIN_SUCCESS,\n GET_SCHOOL_ALLOW_CHECKIN_FAILED,\n GET_SCHOOL_ALLOW_CHECKIN_CLEAR,\n GET_SCHOOL_STUDENT_CHECKIN_START,\n GET_SCHOOL_STUDENT_CHECKIN_SUCCESS,\n GET_SCHOOL_STUDENT_CHECKIN_FAILED,\n GET_SCHOOL_STUDENT_CHECKIN_CLEAR,\n WHO_CAN_CHECKIN_TODAY_START,\n WHO_CAN_CHECKIN_TODAY_SUCCESS,\n WHO_CAN_CHECKIN_TODAY_FAILED,\n WHO_CAN_CHECKIN_TODAY_CLEAR,\n} from \"./checkinActionType\";\n\nimport {\n schoolCheckin,\n schoolGeoFenceInformation,\n CheckInByParent,\n checkInGetQuestions,\n CheckInParentQuestions,\n DoesSchoolAllowCheckIn,\n schoolStudentCanCheckIn,\n whoCanCheckInToday,\n} from \"../../services\";\n\nexport const getSchoolCheckIn = ({ callback }) => (dispatch) => {\n dispatch({ type: GET_SCHOOL_CHECKIN_START });\n return schoolCheckin()\n .then((response) => {\n // console.log(`Get school checkin response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: GET_SCHOOL_CHECKIN_SUCCESS, payload: response.Data });\n if (callback) callback(response.Data);\n else {\n dispatch({ type: GET_SCHOOL_CHECKIN_FAILED, payload: response });\n if (callback) callback([]);\n }\n })\n .catch((error) => {\n if (callback) callback([]);\n // console.log(`getSchoolCheckIn ${JSON.stringify(error)}`);\n dispatch({ type: GET_SCHOOL_CHECKIN_FAILED, payload: error });\n });\n};\n\nexport const getSchoolCheckInClear = () => (dispatch) => {\n dispatch({ type: GET_SCHOOL_CHECKIN_CLEAR });\n};\n\nexport const getSchoolGeoFenceInformation = ({ schoolId }) => (dispatch) => {\n dispatch({ type: GET_SCHOOL_INFORMATION_START });\n return schoolGeoFenceInformation({ schoolId })\n .then((response) => {\n //console.log(`getSchoolGeoFenceInformation response${JSON.stringify(response)}`);\n if (response.Success) {\n // console.log(`getSchoolGeoFenceInformation inside success`);\n dispatch({\n type: GET_SCHOOL_INFORMATION_SUCCESS,\n payload: { data: response.Data, schoolId },\n });\n } else {\n dispatch({ type: GET_SCHOOL_INFORMATION_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`getSchoolGeoFenceInformation ${JSON.stringify(error)}`);\n dispatch({ type: GET_SCHOOL_INFORMATION_FAILED, payload: error });\n });\n};\n\nexport const submitCheckInByParent = (params) => (dispatch) => {\n dispatch({ type: SUBMIT_CHECKIN_PARENT_START });\n return CheckInByParent(params)\n .then((response) => {\n // console.log(`submit checkin by parent response${JSON.stringify(response)}`);\n if (response)\n dispatch({ type: SUBMIT_CHECKIN_PARENT_SUCCESS, payload: response });\n else {\n dispatch({ type: SUBMIT_CHECKIN_PARENT_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`submit checkin by parent error ${JSON.stringify(error)}`);\n dispatch({ type: SUBMIT_CHECKIN_PARENT_FAILED, payload: error });\n });\n};\n\nexport const submitCheckInByParentClear = () => (dispatch) => {\n dispatch({ type: SUBMIT_CHECKIN_PARENT_CLEAR });\n};\n\nexport const getcheckInQuestions = ({ schoolID, studentID }) => (dispatch) => {\n dispatch({ type: GET_CHECKIN_QUESTIONS_START });\n // console.log(`Get checkin questions request ${JSON.stringify({ schoolID, studentID })}`);\n return checkInGetQuestions({ schoolID, studentID })\n .then((response) => {\n // console.log(`Get checkin questions response ${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: GET_CHECKIN_QUESTIONS_SUCCESS,\n payload: response.Data,\n });\n else {\n dispatch({ type: GET_CHECKIN_QUESTIONS_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Get checkin questions error ${JSON.stringify(error)}`);\n dispatch({ type: GET_CHECKIN_QUESTIONS_FAILED, payload: error });\n });\n};\n\nexport const getcheckInQuestionsClear = () => (dispatch) => {\n dispatch({ type: GET_CHECKIN_QUESTIONS_CLEAR });\n};\n\nexport const getCheckInParentQuestions = ({ schoolID }) => (dispatch) => {\n dispatch({ type: GET_CHECKIN_PARENT_QUESTIONS_START });\n return CheckInParentQuestions({ schoolID })\n .then((response) => {\n // console.log(`Get checkin parent questions response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: GET_CHECKIN_PARENT_QUESTIONS_SUCCESS,\n payload: response.Data,\n });\n else {\n dispatch({\n type: GET_CHECKIN_PARENT_QUESTIONS_FAILED,\n payload: response,\n });\n }\n })\n .catch((error) => {\n // console.log(`Get checkin parent questions error ${JSON.stringify(error)}`);\n dispatch({ type: GET_CHECKIN_PARENT_QUESTIONS_FAILED, payload: error });\n });\n};\n\nexport const getCheckInParentQuestionsClear = () => (dispatch) => {\n dispatch({ type: GET_CHECKIN_PARENT_QUESTIONS_CLEAR });\n};\n\nexport const getSchoolAllowCheckIn = ({ schoolIDs }) => (dispatch) => {\n dispatch({ type: GET_SCHOOL_ALLOW_CHECKIN_START });\n return DoesSchoolAllowCheckIn({ schoolIDs })\n .then((response) => {\n // console.log(`Get school allow checkin presponse${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: GET_SCHOOL_ALLOW_CHECKIN_SUCCESS,\n payload: response.Data,\n });\n else {\n dispatch({ type: GET_SCHOOL_ALLOW_CHECKIN_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Get school allow checkin error ${JSON.stringify(error)}`);\n dispatch({ type: GET_SCHOOL_ALLOW_CHECKIN_FAILED, payload: error });\n });\n};\n\nexport const getSchoolAllowCheckInClear = () => (dispatch) => {\n dispatch({ type: GET_SCHOOL_ALLOW_CHECKIN_CLEAR });\n};\n\nexport const getSchoolStudentCheckIn = ({ schoolID, studentIDs }) => (\n dispatch\n) => {\n dispatch({ type: GET_SCHOOL_STUDENT_CHECKIN_START });\n return schoolStudentCanCheckIn({ schoolID, studentIDs })\n .then((response) => {\n // console.log(`Get school student checkin response ${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: GET_SCHOOL_STUDENT_CHECKIN_SUCCESS,\n payload: response.Data,\n });\n else {\n dispatch({\n type: GET_SCHOOL_STUDENT_CHECKIN_FAILED,\n payload: response,\n });\n }\n })\n .catch((error) => {\n // console.log(`Get school student checkin error ${JSON.stringify(error)}`);\n dispatch({ type: GET_SCHOOL_STUDENT_CHECKIN_FAILED, payload: error });\n });\n};\n\nexport const getSchoolStudentCheckInClear = () => (dispatch) => {\n dispatch({ type: GET_SCHOOL_STUDENT_CHECKIN_CLEAR });\n};\n\nexport const canTodayCheckIn = ({ schoolID, studentIDs }) => (dispatch) => {\n dispatch({ type: WHO_CAN_CHECKIN_TODAY_START });\n return whoCanCheckInToday({ schoolID, studentIDs })\n .then((response) => {\n // console.log(`Who can today checkin response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: WHO_CAN_CHECKIN_TODAY_SUCCESS,\n payload: response.Data,\n });\n else {\n dispatch({ type: WHO_CAN_CHECKIN_TODAY_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Who can today checkin error ${JSON.stringify(error)}`);\n dispatch({ type: WHO_CAN_CHECKIN_TODAY_FAILED, payload: error });\n });\n};\n\nexport const canTodayCheckInClear = () => (dispatch) => {\n dispatch({ type: WHO_CAN_CHECKIN_TODAY_CLEAR });\n};\n","import React from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport { BootstrapModal } from \"../CommonComponents\";\nimport { Line } from \"rc-progress\";\nimport settingsIcon from \"../assets/dashboard/settingsIcon.svg\";\nimport { connect } from \"react-redux\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\n\nimport { showModal, hideModal, setHelpList } from \"../../common/actions/userAccount\";\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\nimport moment from \"moment\";\n\nimport {\n getcheckInQuestions,\n getCheckInParentQuestionsClear,\n getCheckInParentQuestions,\n getSchoolStudentCheckIn,\n submitCheckInByParent,\n submitCheckInByParentClear,\n} from \"../../common/actions/checkin\";\n\nimport RingLoader from \"react-spinners/ClipLoader\";\n\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport { confirmAlert } from \"react-confirm-alert\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\ntoast.configure();\n\nconst loadingSelector = createLoadingSelector(\n [\"get_school_student_checkin\", \"submit_checkin_parent\"]\n);\n\nclass CheckinQuestions extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n SchoolStudentList: [],\n selectForCheckin: 0,\n showQuestionScreen: true,\n selectAnswer: 0,\n questionOption: 0,\n selectedOption: -1,\n userAnswers: {},\n checkInQuestions: null,\n disabledNext: true,\n completedPer: 0,\n alreadyCheckedInMessage: this.props.t(\"Downloading_checkinQestion\"),\n };\n this.getQuestions();\n }\n\n componentDidMount() {\n this.dosetHelpList();\n }\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"CheckIn\",\n screen: GLOBAL_CONST.SCREEN_NAMES.CHECKIN_QUESTIONS,\n title: this.props.t(\"checkin-help\"),\n });\n }\n\n getQuestions = () => {\n const { record, schoolId, parentCheckIn } = this.props;\n const { doGetcheckInQuestions, doGetCheckInParentQuestions } = this.props;\n\n if (parentCheckIn === true) {\n doGetCheckInParentQuestions({ schoolID: schoolId });\n } else {\n doGetcheckInQuestions({\n schoolID: record.SchoolID,\n studentID: record.StudentID,\n });\n }\n };\n\n selectedItem = (item) => {\n const { record, parentCheckIn } = this.props;\n const { checkInQuestions } = this.state;\n const { questionOption } = this.state;\n let schoolQuestionId =\n checkInQuestions.Questions[questionOption].SchoolQuestionID;\n let isParenFlag, studentID;\n if (record != undefined) {\n studentID = record.StudentID;\n } else {\n studentID = null;\n }\n if (parentCheckIn === true) {\n isParenFlag = true;\n } else {\n isParenFlag = false;\n }\n let { userAnswers } = this.state;\n userAnswers[schoolQuestionId] = {\n ...item,\n SchoolQuestionID: schoolQuestionId,\n Skipped: false,\n IsParentQuestion: isParenFlag,\n studentID,\n };\n\n this.setState({ userAnswers, selectedOption: item.QuestionAnswerID });\n\n setTimeout(\n function () {\n this.setState({ disabledNext: false });\n if (checkInQuestions.Questions.length - 1 != questionOption) {\n this.showNextQuestion();\n }\n }.bind(this),\n 200\n );\n };\n\n\n closeModal = () => {\n this.props.doHideModal();\n };\n\n showNextQuestion = () => {\n const { checkInQuestions } = this.state;\n const { userAnswers } = this.state;\n let { questionOption, selectedOption } = this.state;\n\n if (\n questionOption >= 0 &&\n questionOption < checkInQuestions.Questions.length\n ) {\n questionOption += 1;\n let schoolQuestionId =\n checkInQuestions.Questions[questionOption].SchoolQuestionID;\n\n const selectedAnswer = userAnswers[schoolQuestionId];\n\n if (selectedAnswer) {\n selectedOption = selectedAnswer.QuestionAnswerID;\n } else {\n selectedOption = -1;\n }\n } else {\n selectedOption = -1;\n }\n\n this.setState({ questionOption, selectedOption });\n\n this.nextButtonDisabled(questionOption);\n };\n\n showPreviousQuestion = () => {\n const { checkInQuestions } = this.state;\n const { userAnswers } = this.state;\n let { questionOption, selectedOption } = this.state;\n\n if (questionOption > 0) {\n questionOption -= 1;\n let schoolQuestionId =\n checkInQuestions.Questions[questionOption].SchoolQuestionID;\n\n const selectedAnswer = userAnswers[schoolQuestionId];\n\n if (selectedAnswer) {\n selectedOption = selectedAnswer.QuestionAnswerID;\n } else {\n selectedOption = -1;\n }\n } else {\n selectedOption = -1;\n }\n\n this.setState({ questionOption, selectedOption });\n this.nextButtonDisabled(questionOption);\n };\n\n nextButtonDisabled = (currentQuestion) => {\n const { checkInQuestions } = this.state;\n const { userAnswers } = this.state;\n let disabledFlag = false;\n let selectedQuestion;\n\n if (currentQuestion === undefined) {\n selectedQuestion = 0;\n } else {\n selectedQuestion = currentQuestion;\n }\n\n let schoolQuestionId =\n checkInQuestions.Questions[selectedQuestion].SchoolQuestionID;\n if (\n currentQuestion === 0 &&\n checkInQuestions.Questions[selectedQuestion].ParentsCanSkip === false\n ) {\n disabledFlag = true;\n this.setState({ disabledNext: disabledFlag });\n } else if (\n userAnswers[schoolQuestionId] === undefined &&\n checkInQuestions.Questions[selectedQuestion].ParentsCanSkip === false\n ) {\n disabledFlag = true;\n this.setState({ disabledNext: disabledFlag });\n } else {\n disabledFlag = false;\n this.setState({ disabledNext: disabledFlag });\n }\n };\n\n checkIsQuestionAnswered = () => {\n const { userAnswers, questionOption } = this.state;\n const { checkInQuestions } = this.state;\n const question = checkInQuestions.Questions[questionOption];\n\n return userAnswers[question.SchoolQuestionID];\n };\n\n submitForm = () => {\n const { record, parentCheckIn, schoolId } = this.props;\n const { doSubmitCheckInByParent } = this.props;\n const { userAnswers } = this.state;\n let isParenFlag, schoolID, studentID;\n if (record != undefined) {\n studentID = record.StudentID;\n } else {\n studentID = null;\n }\n if (parentCheckIn === true) {\n isParenFlag = true;\n schoolID = schoolId;\n } else {\n isParenFlag = false;\n schoolID = record.SchoolID;\n }\n\n const selectedQuestionAnswers = Object.values(userAnswers);\n\n let submitQuestionAndAnswers = [];\n for (let i = 0; i < selectedQuestionAnswers.length; i++) {\n submitQuestionAndAnswers.push({\n IsParentQuestion: selectedQuestionAnswers[i].IsParentQuestion,\n StudentID: selectedQuestionAnswers[i].studentID,\n SchoolQuestionID: selectedQuestionAnswers[i].SchoolQuestionID,\n SchoolQuestionAnswerID: selectedQuestionAnswers[i].QuestionAnswerID,\n Skipped: selectedQuestionAnswers[i].Skipped,\n });\n }\n\n doSubmitCheckInByParent({\n schoolID,\n checkInParent: isParenFlag,\n studentIDs: [studentID],\n questionsAndAnswers: submitQuestionAndAnswers,\n });\n };\n\n submitWithoutQuestion = () => {\n const { doSubmitCheckInByParent } = this.props;\n const { record } = this.props;\n let isParenFlag, schoolID, studentID;\n schoolID = record.schoolId;\n\n if (record != undefined) {\n studentID = [record.StudentID];\n isParenFlag = false;\n } else {\n studentID = [];\n isParenFlag = true;\n }\n\n doSubmitCheckInByParent({\n schoolID,\n checkInParent: isParenFlag,\n studentIDs: studentID,\n questionsAndAnswers: [],\n });\n };\n\n renderItem = ({ item }) => {\n const { selectedOption } = this.state;\n const isSelected = selectedOption === item.QuestionAnswerID;\n\n return (\n {\n this.selectedItem(item);\n }}\n className={\n isSelected\n ? \"selectedForCheckn selected-data custom-select-bx\"\n : \"custom-select-bx\"\n }\n >\n \n\n {item.AnswerText_EN}\n \n \n );\n };\n\n buildAnswers = () => {\n const { questionOption, checkInQuestions } = this.state;\n let answers = [];\n if (\n checkInQuestions &&\n checkInQuestions.Questions &&\n checkInQuestions.Questions[questionOption] &&\n checkInQuestions.Questions[questionOption].Answers\n ) {\n answers = checkInQuestions.Questions[questionOption].Answers;\n }\n\n const views = [];\n for (var i = 0; i < answers.length; i++) {\n views.push(this.renderItem({ item: answers[i] }));\n }\n return views;\n };\n componentDidUpdate() {\n const {\n getCheckInQuestionsResponse,\n CheckInByParentResponse,\n error,\n doGetCheckInParentQuestionsClear,\n doSubmitCheckInByParentClear,\n } = this.props;\n const { doCallbackRefresh } = this.props;\n\n if (\n getCheckInQuestionsResponse != null &&\n getCheckInQuestionsResponse.Questions.length > 0\n ) {\n this.setState(\n { checkInQuestions: getCheckInQuestionsResponse },\n this.nextButtonDisabled\n );\n doGetCheckInParentQuestionsClear();\n } else if (\n getCheckInQuestionsResponse != null &&\n getCheckInQuestionsResponse.Questions.length === 0\n ) {\n this.setState({ alreadyCheckedInMessage: this.props.t(\"Submitting_checkin\") });\n doGetCheckInParentQuestionsClear();\n this.submitForm();\n }\n\n if (error) {\n toast.error(error.Message || error.message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n\n doSubmitCheckInByParentClear();\n } else if (CheckInByParentResponse) {\n toast.success(this.props.t(\"Submit_Checkin\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n\n doSubmitCheckInByParentClear();\n doCallbackRefresh();\n }\n }\n\n buildFooter = () => {\n const { questionOption, disabledNext, checkInQuestions } = this.state;\n const { isFetching } = this.props;\n let questionCount = 0;\n if (\n checkInQuestions &&\n checkInQuestions.Questions &&\n checkInQuestions.Questions[questionOption] &&\n checkInQuestions.Questions[questionOption].Answers\n ) {\n questionCount = checkInQuestions.Questions.length;\n }\n\n if (questionCount > 0 && questionOption >= 0) {\n let completedQ = questionOption;\n if (this.checkIsQuestionAnswered()) {\n completedQ += 1;\n }\n let completedPer = completedQ / questionCount;\n }\n\n const views = [];\n if (questionOption > 0) {\n views.push(\n {\n this.showPreviousQuestion();\n }}\n >\n {this.props.t(\"Previous\")}\n \n );\n }\n if (questionCount - 1 === questionOption) {\n views.push(\n \n {isFetching ? (\n \n ) : null}{\" \"}{this.props.t(\"settingsScr-submit\")}\n \n );\n } else {\n views.push(\n {\n this.showNextQuestion(questionCount);\n }}\n disabled={disabledNext === true}\n >\n {this.props.t(\"regNameScr-next\")}\n \n );\n }\n\n return views;\n };\n render() {\n const { isFetching } = this.props;\n const {\n questionOption,\n checkInQuestions,\n alreadyCheckedInMessage,\n } = this.state;\n let questionCount = 0;\n let questionText = \"\";\n let completedPer = 0;\n if (\n checkInQuestions &&\n checkInQuestions.Questions &&\n checkInQuestions.Questions[questionOption] &&\n checkInQuestions.Questions[questionOption].Answers\n ) {\n questionText = checkInQuestions.Questions[questionOption].QuestionText_EN;\n questionCount = checkInQuestions.Questions.length;\n }\n\n if (questionCount > 0 && questionOption >= 0) {\n let completedQ = questionOption;\n if (this.checkIsQuestionAnswered()) {\n completedQ += 1;\n }\n completedPer = (completedQ * 100) / questionCount;\n }\n\n return (\n
\n
\n \n {questionOption + 1} of {questionCount}\n \n
\n \n
\n
\n\n
\n \n
\n
\n {this.buildAnswers()}\n {this.buildAnswers.length === 0 && isFetching && (\n
\n \n
\n )}\n
\n
{this.buildFooter()}
\n
\n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n getCheckInQuestionsResponse: state.checkin.getCheckInQuestionsResponse,\n userLoginInfo: state.userAccount.userLoginInfo,\n canCheckin: state.checkin.canCheckin,\n isFetching: loadingSelector(state),\n CheckInByParentResponse: state.checkin.CheckInByParentResponse,\n error: state.checkin.error,\n\n setHelpListData: state.userAccount.setHelpListData,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doGetcheckInQuestions: (data) => dispatch(getcheckInQuestions(data)),\n doGetCheckInParentQuestions: (data) =>\n dispatch(getCheckInParentQuestions(data)),\n doSubmitCheckInByParent: (data) => dispatch(submitCheckInByParent(data)),\n doSubmitCheckInByParentClear: () => dispatch(submitCheckInByParentClear()),\n doGetCheckInParentQuestionsClear: () =>\n dispatch(getCheckInParentQuestionsClear()),\n\n doeGetSchoolStudentCheckIn: (data) =>\n dispatch(getSchoolStudentCheckIn(data)),\n\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n };\n}\n\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(CheckinQuestions)\n);\n","import {\n GET_STUDENTS_START,\n GET_STUDENTS_SUCCESS,\n GET_STUDENTS_FAILED,\n GET_SCHOOL_STUDENT_INFO_CLEAR,\n GET_SCHOOL_INFO_START,\n GET_SCHOOL_INFO_SUCCESS,\n GET_SCHOOL_INFO_FAILED,\n GET_SCHOOL_AND_KIDS_DONE,\n GET_BUS_ROUTE_START,\n GET_BUS_ROUTE_SUCCESS,\n GET_BUS_ROUTE_FAILED,\n GET_STUDENT_AFTER_SCHOOL_START,\n GET_STUDENT_AFTER_SCHOOL_SUCCESS,\n GET_STUDENT_AFTER_SCHOOL_FAILED,\n IS_ANNOUNCE_START,\n IS_ANNOUNCE_SUCCESS,\n IS_ANNOUNCE_FAILED,\n IS_ANNOUNCE_CLEAR,\n GET_DELEGATIONS_START,\n GET_DELEGATIONS_SUCCESS,\n GET_DELEGATIONS_FAILED,\n GET_DELEGATIONS_CLEAR,\n CHANGE_DEFAULT_PICKUP_MODE_START,\n CHANGE_DEFAULT_PICKUP_MODE_SUCCESS,\n CHANGE_DEFAULT_PICKUP_MODE_FAILED,\n CHANGE_DEFAULT_PICKUP_MODE_CLEAR,\n CANCEL_DELEGATION_START,\n CANCEL_DELEGATION_SUCCESS,\n CANCEL_DELEGATION_FAILED,\n CANCEL_DELEGATION_CLEAR,\n GET_OTHER_CHILDREN_START,\n GET_OTHER_CHILDREN_SUCCESS,\n GET_OTHER_CHILDREN_FAILED,\n GET_ABSENT_DATE_RANGE_START,\n GET_ABSENT_DATE_RANGE_SUCCESS,\n GET_ABSENT_DATE_RANGE_FAILED,\n GET_CALENDAR_DATE_RANGE_START,\n GET_CALENDAR_DATE_RANGE_SUCCESS,\n GET_CALENDAR_DATE_RANGE_FAILED,\n SAVE_ABSENTEE_START,\n SAVE_ABSENTEE_SUCCESS,\n SAVE_ABSENTEE_FAILED,\n SAVE_ABSENTEE_CLEAR,\n GET_PICKUP_ENTRIES_START,\n GET_PICKUP_ENTRIES_SUCCESS,\n GET_PICKUP_ENTRIES_FAILED,\n GET_PICKUP_ENTRIES_CLEAR,\n GET_ABSENT_CALENDAR_ENTRIES_RANGE_START,\n GET_ABSENT_CALENDAR_ENTRIES_RANGE_SUCCESS,\n GET_ABSENT_CALENDAR_ENTRIES_RANGE_FAILED,\n GET_ABSENT_CALENDAR_ENTRIES_RANGE_CLEAR,\n CHANGE_DELEGATION_START,\n CHANGE_DELEGATION_SUCCESS,\n CHANGE_DELEGATION_FAILED,\n CHANGE_DELEGATION_CLEAR,\n GET_PICKUP_ENTRIES_MONTH_START,\n GET_PICKUP_ENTRIES_MONTH_SUCCESS,\n GET_PICKUP_ENTRIES_MONTH_FAILED,\n GET_DELEGATE_LIST_START,\n GET_DELEGATE_LIST_SUCCESS,\n GET_DELEGATE_LIST_FAILED,\n GET_DEFAULT_DISMISSAL_START,\n GET_DEFAULT_DISMISSAL_SUCCESS,\n GET_DEFAULT_DISMISSAL_FAILED,\n GET_DEFAULT_DISMISSAL_CLEAR,\n CANCEL_ABSENTEE_START,\n CANCEL_ABSENTEE_SUCCESS,\n CANCEL_ABSENTEE_FAILED,\n CANCEL_ABSENTEE_CLEAR,\n GET_RELATED_DELEGATIONS_START,\n GET_RELATED_DELEGATIONS_SUCCESS,\n GET_RELATED_DELEGATIONS_FAILED,\n CANCEL_MULTIPLE_DELEGATIONS_START,\n CANCEL_MULTIPLE_DELEGATIONS_SUCCESS,\n CANCEL_MULTIPLE_DELEGATIONS_FAILED,\n CANCEL_MULTIPLE_DELEGATIONS_CLEAR,\n GET_AVAILABLE_DISPATCH_START,\n GET_AVAILABLE_DISPATCH_SUCCESS,\n GET_AVAILABLE_DISPATCH_FAILED,\n GET_AVAILABLE_DISPATCH_CLEAR,\n SAVE_SELECTED_GAURDIAN_DETAILS_START,\n GET_DISMISSAL_HISTORY_START,\n GET_DISMISSAL_HISTORY_SUCCESS,\n GET_DISMISSAL_HISTORY_FAILED,\n GET_DISMISSAL_HISTORY_CLEAR,\n GET_POSITION_IN_LINE_START,\n GET_POSITION_IN_LINE_SUCCESS,\n GET_POSITION_IN_LINE_FAILED,\n GET_POSITION_IN_LINE_CLEAR,\n GET_DELEGATIONS_ENTRIES_START,\n GET_DELEGATIONS_ENTRIES_SUCCESS,\n GET_DELEGATIONS_ENTRIES_FAILED,\n GET_DELEGATIONS_ENTRIES_CLEAR,\n TODAYS_KIDS_ANNOUNCED_LIST,\n GET_OTHER_KIDS_DONE,\n GET_OTHER_KIDS_CLEAR,\n GET_RELATED_DELEGATIONS_CLEAR,\n EARLY_DISMISSAL_START,\n EARLY_DISMISSAL_SUCCESS,\n EARLY_DISMISSAL_FAILED,\n EARLY_DISMISSAL_CLEAR,\n CANCEL_EARLY_DISMISSAL_START,\n CANCEL_EARLY_DISMISSAL_SUCCESS,\n CANCEL_EARLY_DISMISSAL_FAILED,\n CANCEL_EARLY_DISMISSAL_CLEAR,\n GET_EARLY_DISMISSAL_DATE_RANGE_START,\n GET_EARLY_DISMISSAL_DATE_RANGE_SUCCESS,\n GET_EARLY_DISMISSAL_DATE_RANGE_FAILED,\n GET_EARLY_DISMISSAL_DATE_RANGE_CLEAR,\n GET_BACK_SCHOOL_START,\n GET_BACK_SCHOOL_SUCCESS,\n GET_BACK_SCHOOL_FAILED,\n SAVE_BACK_SCHOOL_START,\n SAVE_BACK_SCHOOL_SUCCESS,\n SAVE_BACK_SCHOOL_FAILED,\n SAVE_BACK_SCHOOL_CLEAR,\n GET_RELATIONSHIP_START,\n GET_RELATIONSHIP_SUCCESS,\n GET_RELATIONSHIP_FAILED,\n GET_FILL_BACKTOSCHOOL_START, \n GET_FILL_BACKTOSCHOOL_SUCCESS, \n GET_FILL_BACKTOSCHOOL_FAILED,\n} from \"./studentActionType\";\n\nimport {\n getStudents,\n getSchoolInfo,\n GetBusRoutes,\n getStudentAfterSchools,\n submitAnnounce,\n getDelegationsToCurrentParent,\n postDefaultPickupModeChange,\n cancelDelegation,\n getOtherChildren,\n getAbsentEntryForDateRange,\n getCalendarEntryForDateRange,\n saveAbsentee,\n getPickupEntriesForDateRange,\n getDefaultDismissal,\n getAbsentAndCalendarEntriesForDateRange,\n postDelegationChange,\n getDelegates,\n cancelAbsentee,\n getRelatedDelegations,\n cancelDelegations,\n getAvailableDispatchMethods,\n getDismissalHistory,\n getPositionInLine,\n getPreviousAndFuturePickups,\n submitEarlyDismissal,\n dateRangeEarlyDismissal,\n cancelEarlyDismissal,\n getBackToSchoolInfo,\n saveBackToSchoolInfo,\n getRelationshipType,\n getFillbacktoschollinfo\n} from \"../../services\";\nimport { validateError } from \"../../../helper/utility\";\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/api/getStudents\n * Purpose: Get Students List\n */\nexport const getStudentsList = ({ currenDate, callback }) => (dispatch) => {\n dispatch({ type: GET_STUDENTS_START });\n return getStudents({ currenDate })\n .then((response) => {\n // console.log(`Students List response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: GET_STUDENTS_SUCCESS, payload: response.Data });\n else {\n dispatch({ type: GET_STUDENTS_FAILED, payload: response });\n }\n if (callback) callback();\n })\n .catch((error) => {\n if (callback) callback();\n // console.log(`Students List error ${JSON.stringify(error)}`);\n dispatch({ type: GET_STUDENTS_FAILED, payload: error });\n });\n};\n\nexport const schoolAndKidsFetchDone = () => (dispatch) => {\n dispatch({ type: GET_SCHOOL_AND_KIDS_DONE });\n};\n/**\n * Purpose: student List clear\n */\nexport const studentsSchoolListClear = () => (dispatch) => {\n dispatch({ type: GET_SCHOOL_STUDENT_INFO_CLEAR });\n};\n\nexport const otherChildrenFetchDone = () => (dispatch) => {\n dispatch({ type: GET_OTHER_KIDS_DONE });\n};\n\nexport const otherChildrenListClear = () => (dispatch) => {\n dispatch({ type: GET_OTHER_KIDS_CLEAR });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/api/getSchoolInfo\n * Purpose: Get Students List\n */\nexport const getSchoolDetails = () => (dispatch) => {\n dispatch({ type: GET_SCHOOL_INFO_START });\n return getSchoolInfo()\n .then((response) => {\n // console.log(`School details response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: GET_SCHOOL_INFO_SUCCESS, payload: response.Data });\n else {\n dispatch({ type: GET_SCHOOL_INFO_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`School details error ${JSON.stringify(error)}`);\n dispatch({ type: GET_SCHOOL_INFO_FAILED, payload: error });\n });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/api/GetBusRoutes\n * Purpose: Get GetBusRoutes\n */\nexport const busRouteDetails = ({ studentID }) => (dispatch) => {\n dispatch({ type: GET_BUS_ROUTE_START });\n return GetBusRoutes({ studentID })\n .then((response) => {\n const busRouteNumber = [];\n const getBusRouteNumber = response.Data;\n busRouteNumber.push({\n label: \"Select\",\n value: 0,\n });\n for (let i = 0; i < getBusRouteNumber.length; i++) {\n busRouteNumber.push({\n label: `${getBusRouteNumber[i].RouteNumber}`,\n value: `${getBusRouteNumber[i].BusRouteID}`,\n });\n }\n // console.log(`BusRoute details response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: GET_BUS_ROUTE_SUCCESS, payload: busRouteNumber });\n else {\n dispatch({ type: GET_BUS_ROUTE_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`BusRoute details error ${JSON.stringify(error)}`);\n dispatch({ type: GET_BUS_ROUTE_FAILED, payload: error });\n });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/api/getStudentAfterSchools\n * Purpose: Get getStudentAfterSchools\n */\nexport const studentAfterSchool = ({ studentID }) => (dispatch) => {\n dispatch({ type: GET_STUDENT_AFTER_SCHOOL_START });\n return getStudentAfterSchools({ studentID })\n .then((response) => {\n const afterSchool = [];\n const afterSchoolRecord = response.Data;\n afterSchool.push({\n label: \"Select\",\n value: 0,\n });\n for (let i = 0; i < afterSchoolRecord.length; i++) {\n afterSchool.push({\n label: `${afterSchoolRecord[i].Name}`,\n value: `${afterSchoolRecord[i].AfterSchoolID}`,\n });\n }\n // console.log(`student after school response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: GET_STUDENT_AFTER_SCHOOL_SUCCESS,\n payload: afterSchool,\n });\n else {\n dispatch({ type: GET_STUDENT_AFTER_SCHOOL_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`student after school error ${JSON.stringify(error)}`);\n dispatch({ type: GET_STUDENT_AFTER_SCHOOL_FAILED, payload: error });\n });\n};\n\nexport const announceSubmit = (params) => (dispatch) => {\n dispatch({ type: IS_ANNOUNCE_START });\n // console.log(`Submit Announce announceSubmit param ${JSON.stringify(params)}`);\n return submitAnnounce(params)\n .then((response) => {\n // console.log(`Submit Announce response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: IS_ANNOUNCE_SUCCESS, payload: response });\n else {\n dispatch({ type: IS_ANNOUNCE_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Submit Announce error ${JSON.stringify(error)}`);\n dispatch({ type: IS_ANNOUNCE_FAILED, payload: error });\n });\n};\n\nexport const announceSubmitClear = () => (dispatch) => {\n dispatch({ type: IS_ANNOUNCE_CLEAR });\n};\n\nexport const getDelegationToParent = (params) => (dispatch) => {\n // console.log(\"GetParams\", JSON.stringify(params));\n dispatch({ type: GET_DELEGATIONS_START });\n return getDelegationsToCurrentParent(params)\n .then((response) => {\n // console.log(`get delegation response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: GET_DELEGATIONS_SUCCESS,\n payload: response.Data.Delegations,\n });\n else {\n dispatch({ type: GET_DELEGATIONS_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`get delegation error ${JSON.stringify(error)}`);\n dispatch({ type: GET_DELEGATIONS_FAILED, payload: error });\n });\n};\n\nexport const getDelegationToParentClear = () => (dispatch) => {\n dispatch({ type: GET_DELEGATIONS_CLEAR });\n};\n\nexport const changeDefaultPickupMode = (params) => (dispatch) => {\n dispatch({ type: CHANGE_DEFAULT_PICKUP_MODE_START });\n // console.log(`change deafult pickup mode request ${JSON.stringify(params)}`);\n return postDefaultPickupModeChange(params)\n .then((response) => {\n // console.log(\n // `change deafult pickup mode response${JSON.stringify(response)}`\n // );\n if (response.Success)\n dispatch({\n type: CHANGE_DEFAULT_PICKUP_MODE_SUCCESS,\n payload: response,\n });\n else {\n dispatch({\n type: CHANGE_DEFAULT_PICKUP_MODE_FAILED,\n payload: response,\n });\n }\n })\n .catch((error) => {\n // console.log(`change deafult pickup mode error ${JSON.stringify(error)}`);\n dispatch({ type: CHANGE_DEFAULT_PICKUP_MODE_FAILED, payload: error });\n });\n};\n\nexport const changeDefaultPickupModeClear = () => (dispatch) => {\n dispatch({ type: CHANGE_DEFAULT_PICKUP_MODE_CLEAR });\n};\n\nexport const delegationCancel = (params) => (dispatch) => {\n dispatch({ type: CANCEL_DELEGATION_START });\n return cancelDelegation(params)\n .then((response) => {\n // console.log(`cancel delegation response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: CANCEL_DELEGATION_SUCCESS, payload: response });\n else {\n dispatch({ type: CANCEL_DELEGATION_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`cancel delegation error ${JSON.stringify(error)}`);\n dispatch({ type: CANCEL_DELEGATION_FAILED, payload: error });\n });\n};\n\nexport const delegationCancelClear = () => (dispatch) => {\n dispatch({ type: CANCEL_DELEGATION_CLEAR });\n};\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/api/getOtherChildren\n * Purpose: getOtherChildren\n */\nexport const getOtherChildrenDetails = () => (dispatch) => {\n dispatch({ type: GET_OTHER_CHILDREN_START });\n return getOtherChildren()\n .then((response) => {\n // console.log(\n // `Get other children List response${JSON.stringify(response)}`\n // );\n if (response.Success)\n dispatch({ type: GET_OTHER_CHILDREN_SUCCESS, payload: response.Data });\n else {\n dispatch({ type: GET_OTHER_CHILDREN_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Get other children List error ${JSON.stringify(error)}`);\n dispatch({ type: GET_OTHER_CHILDREN_FAILED, payload: error });\n });\n};\n\nexport const getAbsentDateRange = (params) => (dispatch) => {\n dispatch({ type: GET_ABSENT_DATE_RANGE_START });\n return getAbsentEntryForDateRange(params)\n .then((response) => {\n // console.log(\n // `Get absent date range response${JSON.stringify(response)}`\n // );\n if (response.Success)\n dispatch({\n type: GET_ABSENT_DATE_RANGE_SUCCESS,\n payload: response.Data,\n });\n else {\n dispatch({ type: GET_ABSENT_DATE_RANGE_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Get absent date range error ${JSON.stringify(error)}`);\n dispatch({ type: GET_ABSENT_DATE_RANGE_FAILED, payload: error });\n });\n};\n\nexport const getCalendarDateRange = (params) => (dispatch) => {\n dispatch({ type: GET_CALENDAR_DATE_RANGE_START });\n return getCalendarEntryForDateRange(params)\n .then((response) => {\n // console.log(\n // `Get calendar date range response${JSON.stringify(response)}`\n // );\n if (response.Success)\n dispatch({\n type: GET_CALENDAR_DATE_RANGE_SUCCESS,\n payload: response.Data,\n });\n else {\n dispatch({ type: GET_CALENDAR_DATE_RANGE_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Get calendar date range error ${JSON.stringify(error)}`);\n dispatch({ type: GET_CALENDAR_DATE_RANGE_FAILED, payload: error });\n });\n};\n\nexport const submitAbsentee = (params) => (dispatch) => {\n dispatch({ type: SAVE_ABSENTEE_START });\n // console.log(`submitAbsentee params ${JSON.stringify(params)}`);\n return saveAbsentee(params)\n .then((response) => {\n // console.log(`submitAbsentee response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: SAVE_ABSENTEE_SUCCESS, payload: response.Data });\n else {\n dispatch({ type: SAVE_ABSENTEE_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`submitAbsentee error ${JSON.stringify(error)}`);\n dispatch({ type: SAVE_ABSENTEE_FAILED, payload: error });\n });\n};\n\nexport const submitAbsenteeClear = () => (dispatch) => {\n dispatch({ type: SAVE_ABSENTEE_CLEAR });\n};\n\nexport const getPickupEntries = (params) => (dispatch) => {\n dispatch({ type: GET_PICKUP_ENTRIES_START });\n // console.log(`getPickupEntries called params ${JSON.stringify(params)}`);\n return getPickupEntriesForDateRange(params)\n .then((response) => {\n // console.log(`Get pickup entries response refresh${response.Success}`);\n if (response.Success === true)\n dispatch({\n type: GET_PICKUP_ENTRIES_SUCCESS,\n payload: { response: response.Data, params },\n });\n else {\n dispatch({ type: GET_PICKUP_ENTRIES_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Get pickup entries error ${JSON.stringify(error)}`);\n dispatch({ type: GET_PICKUP_ENTRIES_FAILED, payload: error });\n });\n};\n\nexport const getPickupEntriesClear = (params) => (dispatch) => {\n dispatch({ type: GET_PICKUP_ENTRIES_CLEAR, payload: { params } });\n};\n\nexport const AbsentAndCalendarEntriesForDateRange = (params) => (dispatch) => {\n dispatch({ type: GET_ABSENT_CALENDAR_ENTRIES_RANGE_START });\n return getAbsentAndCalendarEntriesForDateRange(params)\n .then((response) => {\n // console.log(\n // `Get absent calendar entires response${JSON.stringify(response)}`\n // );\n if (response.Success)\n dispatch({\n type: GET_ABSENT_CALENDAR_ENTRIES_RANGE_SUCCESS,\n payload: response.Data.AbsenteeData,\n });\n else {\n dispatch({\n type: GET_ABSENT_CALENDAR_ENTRIES_RANGE_FAILED,\n payload: response,\n });\n }\n })\n .catch((error) => {\n // console.log(\n // `Get absent calendar entires error ${JSON.stringify(error)}`\n // );\n dispatch({\n type: GET_ABSENT_CALENDAR_ENTRIES_RANGE_FAILED,\n payload: error,\n });\n });\n};\nexport const AbsentAndCalendarEntriesForDateRangeClear = () => (dispatch) => {\n dispatch({ type: GET_ABSENT_CALENDAR_ENTRIES_RANGE_CLEAR });\n};\n\nexport const changeDelegation = (params) => (dispatch) => {\n // console.log(\n // \"****************** change delegations parameters ******************\",\n // JSON.stringify(params)\n // );\n dispatch({ type: CHANGE_DELEGATION_START });\n // console.log(`Change Delegations request ${JSON.stringify(params)}`);\n return postDelegationChange(params)\n .then((response) => {\n // console.log(`Change Delegations response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: CHANGE_DELEGATION_SUCCESS, payload: response.Data });\n else {\n dispatch({ type: CHANGE_DELEGATION_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Change Delegations error ${JSON.stringify(error)}`);\n dispatch({ type: CHANGE_DELEGATION_FAILED, payload: error });\n });\n};\n\nexport const changeDelegationClear = () => (dispatch) => {\n dispatch({ type: CHANGE_DELEGATION_CLEAR });\n};\n\nexport const getPickupEntriesMonth = (params) => (dispatch) => {\n dispatch({ type: GET_PICKUP_ENTRIES_MONTH_START });\n return getPickupEntriesForDateRange(params)\n .then((response) => {\n // console.log(`Get pickup entries for a month response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: GET_PICKUP_ENTRIES_MONTH_SUCCESS,\n payload: response.Data,\n });\n else {\n dispatch({ type: GET_PICKUP_ENTRIES_MONTH_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(\n // `Get pickup entries for a month error ${JSON.stringify(error)}`\n // );\n dispatch({ type: GET_PICKUP_ENTRIES_MONTH_FAILED, payload: error });\n });\n};\n\nexport const getDelegateList = () => (dispatch) => {\n dispatch({ type: GET_DELEGATE_LIST_START });\n // console.log(\"Get getDelegateList details params\");\n return getDelegates()\n .then((response) => {\n // console.log(`Get getDelegateList response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: GET_DELEGATE_LIST_SUCCESS, payload: response.Data });\n else {\n dispatch({ type: GET_DELEGATE_LIST_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Get getDelegateList error ${JSON.stringify(error)}`);\n dispatch({ type: GET_DELEGATE_LIST_FAILED, payload: error });\n });\n};\n\n// GET_DEFAULT_DISMISSAL_START, GET_DEFAULT_DISMISSAL_SUCCESS, GET_DEFAULT_DISMISSAL_FAILED, GET_DEFAULT_DISMISSAL_CLEAR\n\nexport const getKidDefaultDismissal = ({ studentId }) => (dispatch) => {\n dispatch({ type: GET_DEFAULT_DISMISSAL_START });\n // console.log(`getDefaultDismissal param ${studentId}`);\n return getDefaultDismissal({ studentId })\n .then((response) => {\n // console.log(`getDefaultDismissal response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: GET_DEFAULT_DISMISSAL_SUCCESS,\n payload: {\n response: response.Data,\n params: { studentID: studentId },\n },\n });\n else {\n dispatch({ type: GET_DEFAULT_DISMISSAL_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`getDefaultDismissal error ${JSON.stringify(error)}`);\n dispatch({ type: GET_DEFAULT_DISMISSAL_FAILED, payload: error });\n });\n};\n\nexport const getKidDefaultDismissalClear = (params) => (dispatch) => {\n dispatch({ type: GET_DEFAULT_DISMISSAL_CLEAR, payload: { params } });\n};\n\nexport const absenteeCancel = ({ studentId, absenteeDate }) => (dispatch) => {\n dispatch({ type: CANCEL_ABSENTEE_START });\n return cancelAbsentee({ studentId, absenteeDate })\n .then((response) => {\n // console.log(`cancel Absentee response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: CANCEL_ABSENTEE_SUCCESS, payload: response });\n else {\n dispatch({ type: CANCEL_ABSENTEE_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`cancel Absentee error ${JSON.stringify(error)}`);\n dispatch({ type: CANCEL_ABSENTEE_FAILED, payload: error });\n });\n};\n\nexport const absenteeCancelClear = () => (dispatch) => {\n dispatch({ type: CANCEL_ABSENTEE_CLEAR });\n};\n\nexport const relatedDelegationsDetails = ({ calendarId }) => (dispatch) => {\n dispatch({ type: GET_RELATED_DELEGATIONS_START });\n return getRelatedDelegations({ calendarId })\n .then((response) => {\n // console.log(\n // `Get related Delegations response${JSON.stringify(response)}`\n // );\n if (response.Success)\n dispatch({\n type: GET_RELATED_DELEGATIONS_SUCCESS,\n payload: response.Data,\n });\n else {\n dispatch({ type: GET_RELATED_DELEGATIONS_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Get related Delegations error ${JSON.stringify(error)}`);\n dispatch({ type: GET_RELATED_DELEGATIONS_FAILED, payload: error });\n });\n};\n\nexport const relatedDelegationsClear = () => (dispatch) => {\n dispatch({ type: GET_RELATED_DELEGATIONS_CLEAR });\n};\n\nexport const removeMultipleDelegations = ({ calendarId }) => (dispatch) => {\n // console.log(\"calendarIDS\", JSON.stringify({ calendarId }));\n dispatch({ type: CANCEL_MULTIPLE_DELEGATIONS_START });\n return cancelDelegations({ calendarId })\n .then((response) => {\n // console.log(\n // `cancel Multiple delegations response${JSON.stringify(response)}`\n // );\n if (response.Success)\n dispatch({\n type: CANCEL_MULTIPLE_DELEGATIONS_SUCCESS,\n payload: response,\n });\n else {\n dispatch({\n type: CANCEL_MULTIPLE_DELEGATIONS_FAILED,\n payload: response,\n });\n }\n })\n .catch((error) => {\n // console.log(\n // `cancel Multiple delegations error ${JSON.stringify(error)}`\n // );\n dispatch({ type: CANCEL_MULTIPLE_DELEGATIONS_FAILED, payload: error });\n });\n};\n\nexport const removeMultipleDelegationsClear = () => (dispatch) => {\n dispatch({ type: CANCEL_MULTIPLE_DELEGATIONS_CLEAR });\n};\n\nexport const getAvailableDispatch = ({ studentIDs }) => (dispatch) => {\n dispatch({ type: GET_AVAILABLE_DISPATCH_START });\n // console.log(`Available dispatch param studentIDs${studentIDs}`);\n return getAvailableDispatchMethods({ studentIDs })\n .then((response) => {\n // console.log(`Available dispatch response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: GET_AVAILABLE_DISPATCH_SUCCESS,\n payload: response.Data,\n });\n else {\n dispatch({ type: GET_AVAILABLE_DISPATCH_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Available dispatch error ${JSON.stringify(error)}`);\n dispatch({ type: GET_AVAILABLE_DISPATCH_FAILED, payload: error });\n });\n};\n\nexport const getAvailableDispatchClear = () => (dispatch) => {\n dispatch({ type: GET_AVAILABLE_DISPATCH_CLEAR });\n};\nexport const savegaurdianInfo = ({ item }) => (dispatch) => {\n dispatch({ type: SAVE_SELECTED_GAURDIAN_DETAILS_START, payload: { item } });\n};\n\nexport const getDismissalHistoryList = (params) => (dispatch) => {\n dispatch({ type: GET_DISMISSAL_HISTORY_START });\n // console.log(`Get Dimissal History params ${JSON.stringify(params)}`);\n return getDismissalHistory(params)\n .then((response) => {\n // console.log(`Get Dimissal History response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: GET_DISMISSAL_HISTORY_SUCCESS,\n payload: { response: response.Data.CalendarEntries, params },\n });\n else {\n dispatch({ type: GET_DISMISSAL_HISTORY_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Get Dimissal History error ${JSON.stringify(error)}`);\n dispatch({ type: GET_DISMISSAL_HISTORY_FAILED, payload: error });\n });\n};\n\nexport const getDismissalHistoryListClear = (params) => (dispatch) => {\n dispatch({ type: GET_DISMISSAL_HISTORY_CLEAR, payload: { params } });\n};\n\nexport const positionInLineGet = ({ pickupModeId, studentId }) => (\n dispatch\n) => {\n dispatch({ type: GET_POSITION_IN_LINE_START });\n return getPositionInLine({ pickupModeId, studentId })\n .then((response) => {\n // console.log(`Get Position Line response${JSON.stringify(response)}`);\n if (response)\n dispatch({ type: GET_POSITION_IN_LINE_SUCCESS, payload: response });\n else {\n dispatch({ type: GET_POSITION_IN_LINE_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Get Position Line error ${JSON.stringify(error)}`);\n dispatch({ type: GET_POSITION_IN_LINE_FAILED, payload: error });\n });\n};\n\nexport const positionInLineGetClear = () => (dispatch) => {\n dispatch({ type: GET_POSITION_IN_LINE_CLEAR });\n};\n\nexport const getDelatesPreviousAndFuturePickups = ({ currenDate }) => (\n dispatch\n) => {\n dispatch({ type: GET_DELEGATIONS_ENTRIES_START });\n return getPreviousAndFuturePickups({ currenDate })\n .then((response) => {\n // console.log(\n // `Get future and previus delegations response${JSON.stringify(response)}`\n // );\n if (response.Success)\n dispatch({\n type: GET_DELEGATIONS_ENTRIES_SUCCESS,\n payload: response.Data.PriorAndFutureDelegations,\n });\n else {\n dispatch({ type: GET_DELEGATIONS_ENTRIES_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(\n // `Get future and previus delegations error ${JSON.stringify(error)}`\n // );\n dispatch({ type: GET_DELEGATIONS_ENTRIES_FAILED, payload: error });\n });\n};\nexport const getDelatesPreviousAndFuturePickupsClear = () => (dispatch) => {\n dispatch({ type: GET_DELEGATIONS_ENTRIES_CLEAR });\n};\n\nexport const saveTodaysKidsAnnouncedList = (kidsAnnouncedToday) => (\n dispatch\n) => {\n dispatch({ type: TODAYS_KIDS_ANNOUNCED_LIST, payload: kidsAnnouncedToday });\n};\n\n// Submit Early Dismissal\nexport const earlyDismissalSubmit = (params) => (dispatch) => {\n dispatch({ type: EARLY_DISMISSAL_START });\n console.log(\"Early dismissal submit Action param-->\", params);\n return submitEarlyDismissal(params)\n .then((response) => {\n console.log(`Submit Early Dismissal response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: EARLY_DISMISSAL_SUCCESS, payload: response });\n else {\n dispatch({ type: EARLY_DISMISSAL_FAILED, payload: response });\n }\n })\n .catch((error) => {\n console.log(`Submit Early Dismissal error ${JSON.stringify(error)}`);\n dispatch({ type: EARLY_DISMISSAL_FAILED, payload: validateError(error) });\n });\n};\n\nexport const earlyDismissalClear = () => (dispatch) => {\n dispatch({ type: EARLY_DISMISSAL_CLEAR });\n};\n\n// Cancel Early Dismissal\nexport const earlyDismissalCancel = ({ id }) => (dispatch) => {\n dispatch({ type: CANCEL_EARLY_DISMISSAL_START });\n console.log(\"Cancel dismissal submit Action param-->\", id);\n return cancelEarlyDismissal(id)\n .then((response) => {\n console.log(`Cancel Early Dismissal response${JSON.stringify(response)}`);\n if (response.Success) {\n dispatch({ type: CANCEL_EARLY_DISMISSAL_SUCCESS, payload: response });\n } else {\n dispatch({ type: CANCEL_EARLY_DISMISSAL_FAILED, payload: response });\n }\n })\n .catch((error) => {\n console.log(`Cancel Early Dismissal error ${JSON.stringify(error)}`);\n dispatch({\n type: CANCEL_EARLY_DISMISSAL_FAILED,\n payload: validateError(error),\n });\n });\n};\n\nexport const cancelEarlyDismissalClear = () => (dispatch) => {\n dispatch({ type: CANCEL_EARLY_DISMISSAL_CLEAR });\n};\n\n// Early Dismissal Date Range\nexport const getEarlyDismissalsForDateRange = (params) => (dispatch) => {\n dispatch({ type: GET_EARLY_DISMISSAL_DATE_RANGE_START });\n return dateRangeEarlyDismissal(params)\n .then((response) => {\n console.log(\n `Early Dismissal Date Range response${JSON.stringify(response)}`\n );\n if (response.Success) {\n dispatch({\n type: GET_EARLY_DISMISSAL_DATE_RANGE_SUCCESS,\n payload: response.Data,\n });\n } else {\n dispatch({\n type: GET_EARLY_DISMISSAL_DATE_RANGE_FAILED,\n payload: response,\n });\n }\n })\n .catch((error) => {\n console.log(`Early Dismissal Date Range error ${JSON.stringify(error)}`);\n dispatch({\n type: GET_EARLY_DISMISSAL_DATE_RANGE_FAILED,\n payload: validateError(error),\n });\n });\n};\n\nexport const getEarlyDismissalsForDateRangeClear = () => (dispatch) => {\n dispatch({ type: GET_EARLY_DISMISSAL_DATE_RANGE_CLEAR });\n};\n\n// Get back to school info\nexport const getBackToSchoolInformation = ({ callback }) => (dispatch) => {\n dispatch({ type: GET_BACK_SCHOOL_START });\n return getBackToSchoolInfo()\n .then((response) => {\n //console.log(`Get back to school info response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: GET_BACK_SCHOOL_SUCCESS, payload: response.Data });\n else {\n dispatch({ type: GET_BACK_SCHOOL_FAILED, payload: response });\n }\n if (callback) callback(response.Data);\n })\n .catch((error) => {\n console.log(`Get back to school info error ${JSON.stringify(error)}`);\n dispatch({ type: GET_BACK_SCHOOL_FAILED, payload: validateError(error) });\n if (callback) callback([]);\n });\n};\n\n// Save back to school info\nexport const saveBackToSchoolInformation = (backToSchoolInfoData) => (\n dispatch\n) => {\n console.log(\n `Save back to school info ACTION PARAM **** ${JSON.stringify(\n backToSchoolInfoData\n )}`\n );\n dispatch({ type: SAVE_BACK_SCHOOL_START });\n return saveBackToSchoolInfo(backToSchoolInfoData)\n .then((response) => {\n console.log(\n `Save back to school info response${JSON.stringify(response)}`\n );\n if (response.Success)\n dispatch({ type: SAVE_BACK_SCHOOL_SUCCESS, payload: response });\n else {\n dispatch({ type: SAVE_BACK_SCHOOL_FAILED, payload: response });\n }\n })\n .catch((error) => {\n console.log(`Save back to school info error ${JSON.stringify(error)}`);\n dispatch({\n type: SAVE_BACK_SCHOOL_FAILED,\n payload: validateError(error),\n });\n });\n};\n\nexport const saveBackToSchoolInformationClear = () => (dispatch) => {\n dispatch({ type: SAVE_BACK_SCHOOL_CLEAR });\n};\n\n// Get Relationship Type\nexport const getRelationship = () => (dispatch) => {\n dispatch({ type: GET_RELATIONSHIP_START });\n return getRelationshipType()\n .then((response) => {\n console.log(`Get Relationship Type response${JSON.stringify(response)}`);\n if (response)\n dispatch({ type: GET_RELATIONSHIP_SUCCESS, payload: response.Data });\n else {\n dispatch({ type: GET_RELATIONSHIP_FAILED, payload: response });\n }\n })\n .catch((error) => {\n console.log(`Get Relationship Type error ${JSON.stringify(error)}`);\n dispatch({\n type: GET_RELATIONSHIP_FAILED,\n payload: validateError(error),\n });\n });\n};\n\n// Get Fill back to school info\nexport const getfillBacktoschoolinfoData = ({ studentId, callback }) => (dispatch) => {\n dispatch({ type: GET_FILL_BACKTOSCHOOL_START });\n return getFillbacktoschollinfo(studentId)\n .then((response) => {\n console.log(`Get Fill back to school info response${JSON.stringify(response)}`);\n if (response.Success) {\n dispatch({ type: GET_FILL_BACKTOSCHOOL_SUCCESS, payload: response.Data });\n if (callback) callback(response.Data);\n }\n else { dispatch({ type: GET_FILL_BACKTOSCHOOL_FAILED, payload: response }); \n if (callback) callback([]);\n }\n }).catch((error) => {\n console.log(`Get Fill back to school info error ${JSON.stringify(error)}`);\n dispatch({ type: GET_FILL_BACKTOSCHOOL_FAILED, payload: validateError(error) });\n });\n};","import React from \"react\";\nimport { connect } from \"react-redux\";\n\nimport {\n getSchoolStudentCheckIn,\n submitCheckInByParent,\n submitCheckInByParentClear,\n} from \"../../common/actions/checkin\";\n\nimport { withTranslation } from \"react-i18next\";\nimport { showCheckinQuestAns, setHelpList } from \"../../common/actions/userAccount\";\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\n\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport { confirmAlert } from \"react-confirm-alert\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport CheckinQuestions from \"./CheckinQuestions\";\nimport moment from \"moment\";\nimport {\n getSchoolDetails,\n} from \"../../common/actions/students\";\ntoast.configure();\n\nlet params = {};\nclass SelectCheckInFor extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n showCheckinView: false,\n showSchoolChildrenList: true,\n canCheckInSchoolChild: null\n };\n }\n\n componentDidMount() {\n setTimeout(this.checkCanCheckin, 100);\n this.dosetHelpList();\n }\n\n getStudents = () => {\n const { doGetStudentsList } = this.props;\n let currenDate = moment().format(\"MM-DD-YYYY\");\n doGetStudentsList({ currenDate });\n };\n getSchool = (callback) => {\n const { doGetSchoolDetails } = this.props;\n doGetSchoolDetails().then(() => {\n callback();\n });\n };\n\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"CheckIn\",\n screen: GLOBAL_CONST.SCREEN_NAMES.CHECKIN_FOR,\n title: this.props.t('selectCheckScr-schoolCheck'),\n });\n }\n\n checkCanCheckin = () => {\n const { doeGetSchoolStudentCheckIn } = this.props;\n const childInfo = this.props.school;\n const children = childInfo.data;\n const studentIds = [];\n\n for (let i = 0; i < children.length; i++) {\n studentIds.push(children[i].StudentID);\n }\n doeGetSchoolStudentCheckIn({\n schoolID: childInfo.schoolId,\n studentIDs: studentIds,\n });\n };\n\n refreshFunction = () => {\n this.hideQuestionAnswerView();\n this.checkCanCheckin();\n };\n hideQuestionAnswerView = () => {\n this.props.doShowCheckinQuestAnsView({\n status: false,\n showSchoolChildrenList: true,\n params: {},\n });\n };\n showQuestionAnswerView = (params) => {\n this.props.doShowCheckinQuestAnsView({\n status: true,\n showSchoolChildrenList: false,\n params: params,\n });\n };\n\n renderChildren = () => {\n const checkInChild = [];\n let childrenList = [];\n const {canCheckInSchoolChild } = this.state;\n let childInfo = this.props.school.data;\n const questionsForChildren = canCheckInSchoolChild && canCheckInSchoolChild.QuestionsForChildren;\n if (!canCheckInSchoolChild || !canCheckInSchoolChild.CanCheckInStudentIDs) {\n return
;\n }\n\n let canCheckInStudentIDs = canCheckInSchoolChild.CanCheckInStudentIDs;\n console.log(\"canCheckInSchoolChild \", canCheckInSchoolChild);\n childrenList = childInfo.filter((item) => item.IsDelegation === false);\n\n for (let i = 0; i < childrenList.length; i++) {\n const kidCheckedIn = canCheckInStudentIDs.includes(\n parseInt(childrenList[i].StudentID)\n );\n const styleC = kidCheckedIn?\"list-item child-title\":\"list-item child-title checkedIn\";\n console.log(`ID ${childrenList[i].StudentID} kidname ${childrenList[i].Firstname} kidCheckedIn=${kidCheckedIn} check=${kidCheckedIn?`available`:`no`} ${styleC} `)\n \n checkInChild.push(\n {\n this.showQuestionAnswerView(\n (params = {\n record: childrenList[i],\n parentCheckIn: false,\n doCallbackRefresh: this.refreshFunction,\n })\n );\n\n }\n : kidCheckedIn === true && questionsForChildren === false\n ? () => {\n this.submitForm(childrenList[i]);\n }\n : () => {\n toast.error(\n `${childrenList[i].Firstname} ${childrenList[i].Lastname\n } ${this.props.t(\"Already_Check-in_Alert\")}`,\n {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n }\n );\n }\n }\n >\n {`${childrenList[i].Firstname}${\" \"}${childrenList[i].Lastname\n }`}\n \n\n );\n }\n return checkInChild;\n };\n\n submitForm = (record) => {\n const { doSubmitCheckInByParent } = this.props;\n let childInfo = this.props.school;\n let isParenFlag, schoolID, studentID;\n schoolID = childInfo.schoolId;\n\n if (record != undefined) {\n studentID = [record.StudentID];\n isParenFlag = false;\n } else {\n studentID = [];\n isParenFlag = true;\n }\n\n doSubmitCheckInByParent({\n schoolID,\n checkInParent: isParenFlag,\n studentIDs: studentID,\n questionsAndAnswers: [],\n });\n };\n\n componentDidUpdate() {\n const {canCheckin } = this.props;\n const { canCheckInSchoolChild } = this.state;\n if(!canCheckInSchoolChild && canCheckin){\n this.setState({canCheckInSchoolChild: canCheckin})\n }\n \n const {\n CheckInByParentResponse,\n error,\n doSubmitCheckInByParentClear,\n } = this.props;\n\n if (error) {\n toast.error(error.Message || error.message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n doSubmitCheckInByParentClear();\n } else if (CheckInByParentResponse) {\n toast.error(this.props.t(\"Submit_Checkin\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n\n doSubmitCheckInByParentClear();\n }\n }\n\n render() {\n const { showCheckinView, showSchoolChildrenList } = this.state;\n const { userLoginInfo } = this.props;\n let childInfo = this.props.school;\n let parentCanCheckIn = false,\n studentCanCheckIn = false,\n parentCurrentlyCheckedIn = false;\n let questionsForParents = false;\n\n const {canCheckInSchoolChild} = this.state;\n\n\n if (canCheckInSchoolChild) {\n parentCanCheckIn = canCheckInSchoolChild.ParentsCanCheckIn;\n studentCanCheckIn = canCheckInSchoolChild.StudentsCanCheckIn;\n parentCurrentlyCheckedIn = canCheckInSchoolChild.ParentCurrentlyCheckedIn;\n questionsForParents = canCheckInSchoolChild.QuestionsForParents;\n }\n return (\n
\n {showSchoolChildrenList === true && (\n
\n {parentCanCheckIn === true ? (\n {\n toast.error(\n ` ${userLoginInfo.firstName} ${userLoginInfo.lastName} ${this.props.t(\"Already_Check-in_Alert\")}`,\n {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n }\n );\n }\n : questionsForParents === true\n ? () => {\n this.showQuestionAnswerView(\n (params = {\n schoolId: childInfo.schoolId,\n parentCheckIn: true,\n parentData: userLoginInfo,\n doCallbackRefresh: this.refreshFunction,\n })\n );\n\n }\n : () => {\n this.submitForm();\n }\n }\n >\n \n {this.props.t(\"selectCheckScr-visit\")}\n \n
\n ) : null}\n
\n \n {this.props.t(\"selectCheckScr-children\")}\n \n
\n\n {studentCanCheckIn === true\n ? this.renderChildren()\n : null}\n
\n )}\n
\n {showCheckinView === true && }\n
\n \n\n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n userLoginInfo: state.userAccount.userLoginInfo,\n canCheckin: state.checkin.canCheckin,\n CheckInByParentResponse: state.checkin.CheckInByParentResponse,\n error: state.checkin.error,\n\n checkInQuestAnsView: state.userAccount.checkInQuestAnsView,\n setHelpListData: state.userAccount.setHelpListData,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doeGetSchoolStudentCheckIn: (data) =>\n dispatch(getSchoolStudentCheckIn(data)),\n doGetSchoolDetails: () => dispatch(getSchoolDetails()),\n doSubmitCheckInByParent: (data) => dispatch(submitCheckInByParent(data)),\n doSubmitCheckInByParentClear: () => dispatch(submitCheckInByParentClear()),\n\n doShowCheckinQuestAnsView: (data) => dispatch(showCheckinQuestAns(data)),\n\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(SelectCheckInFor)\n);\n","import React from \"react\";\nimport \"./styles/style.css\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faSchool } from \"@fortawesome/free-solid-svg-icons\";\nimport _ from \"lodash\";\nimport { connect } from \"react-redux\";\nimport { MainHeader, MainFooter } from \"../CommonComponents\";\nimport { distance, showLocationError } from \"../../helper/utility\";\n\nimport settingsIcon from \"../assets/dashboard/settingsIcon.svg\";\n\nimport moment from \"moment\";\nimport CheckinQuestions from \"./CheckinQuestions\";\nimport {\n getSchoolCheckIn,\n getSchoolGeoFenceInformation,\n} from \"../../common/actions/checkin\";\n\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\nimport RingLoader from \"react-spinners/ClipLoader\";\n\nimport {\n showModal,\n hideModal,\n showCheckinQuestAns,\n setHelpList,\n} from \"../../common/actions/userAccount\";\n\nimport {\n getStudentsList,\n getSchoolDetails,\n schoolAndKidsFetchDone,\n} from \"../../common/actions/students\";\n\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\nimport SelectCheckInFor from \"./SelectCheckInFor\";\n\nimport { withTranslation } from \"react-i18next\";\nconst loadingSelector = createLoadingSelector([\n \"get_school_student_checkin\",\n \"submit_checkin_parent\",\n \"get_school_checkin\",\n \"get_school_information\",\n \"get_students\",\n \"get_school_info\",\n \"get_school_student_checkin\",\n]);\n\nclass Checkin extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n showCheckinView: false,\n showSchoolList: true,\n permissionResult: \"denied\",\n isFirstGPSInProgress: true,\n latitude: null,\n longitude: null,\n IsSchoolLocationInCheckIn: [],\n schoolGeoInfo: {},\n };\n }\n\n componentDidMount() {\n this.enableGeo();\n this.getSchool(this.getStudents);\n this.hideQuestionAnswerView();\n this.dosetHelpList();\n }\n\n componentWillUnmount() {\n if (this.watchId) navigator.geolocation.clearWatch(this.watchId);\n }\n\n enableGeo = () => {\n const mythis = this;\n navigator.geolocation.getCurrentPosition(\n (position) => {\n this.setState({ isFirstGPSInProgress: false });\n mythis.processGeoLocation(position);\n mythis.watchLocation();\n },\n (error) => {\n this.setState({ isFirstGPSInProgress: false, geoError: error.message });\n console.error(error);\n },\n {\n enableHighAccuracy: false,\n maximumAge: 0,\n }\n );\n };\n\n watchLocation = () => {\n const mythis = this;\n this.watchId = navigator.geolocation.watchPosition(\n (position) => {\n mythis.processGeoLocation(position);\n },\n (error) => {\n console.error(\"watchLocation error \", error);\n //this.setState({ error: error.message });\n showLocationError(this.props.t(\"Location_Error_Text\"));\n },\n {\n enableHighAccuracy: true,\n timeout: 90000,\n maximumAge: 1000,\n distanceFilter: 100,\n }\n );\n //console.log(\"watchlocation called \" + this.watchId);\n };\n\n processGeoLocation = (position) => {\n //console.log(\"*** position: \" + JSON.stringify(position));\n if (!position || !position.coords) return;\n //console.log(\"*** position: \" + JSON.stringify(position.coords));\n this.setState(\n {\n latitude: position.coords.latitude,\n longitude: position.coords.longitude,\n },\n this.checkSchoolInGeo\n );\n\n //console.log(\" IsSchoolLocationInCheckIn \" + JSON.stringify(IsSchoolLocationInCheckIn))\n };\n\n checkSchoolInGeo = () => {\n // Check for CheckIn Distance\n const { latitude, longitude } = this.state;\n const { schoolGeoFenceInformation } = this.props;\n const IsSchoolLocationInCheckIn = [];\n //console.log(\"*** position: schoolGeoFenceInformation \" + JSON.stringify(schoolGeoFenceInformation));\n for (var key in schoolGeoFenceInformation) {\n const schoolGeoInfo = schoolGeoFenceInformation[key];\n if (\n schoolGeoInfo &&\n schoolGeoInfo.GeoFenceForCheckIn &&\n schoolGeoInfo.GeoFenceData.length > 0\n ) {\n const checkInLat = schoolGeoInfo.GeoFenceData[0].Latitude;\n const checkInLong = schoolGeoInfo.GeoFenceData[0].Longitude;\n const checkInDistance = schoolGeoInfo.GeoFenceData[0].RadiusYards;\n const Unit = \"K\";\n const distCheckin = distance(\n latitude,\n longitude,\n checkInLat,\n checkInLong,\n Unit\n );\n //console.log(\"*** school check in lat lng school \", key, \" geo = \", checkInLat, \" long \" + checkInLong);\n //console.log(\"*** checkIn Distance: \", checkInDistance);\n //console.log(\"*** Parent Distance: \", distCheckin);\n //console.log(\"*** checkin Parent Distance: \", distCheckin <= checkInDistance);\n //console.log(\"MyLat \" + MyLat + \" MyLong = \" + MyLong);\n if (distCheckin <= checkInDistance) {\n IsSchoolLocationInCheckIn.push(key);\n }\n }\n }\n this.setState({ IsSchoolLocationInCheckIn });\n };\n getSchool = (callback) => {\n const { doGetSchoolDetails } = this.props;\n doGetSchoolDetails().then(() => {\n callback();\n });\n };\n\n getStudents = () => {\n const { doGetStudentsList } = this.props;\n let currenDate = moment().format(\"MM-DD-YYYY\");\n doGetStudentsList({ currenDate }).then(() => {\n this.checkInForSchool();\n });\n };\n\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"CheckIn\",\n screen: GLOBAL_CONST.SCREEN_NAMES.CHECKIN_FOR,\n title: this.props.t(\"selectCheckScr-schoolCheck\"),\n });\n };\n\n getGeofenceDetails = (schoolID) => {\n const { doSchoolGeoFenceInformation } = this.props;\n doSchoolGeoFenceInformation({ schoolId: schoolID });\n };\n\n checkInForSchool = () => {\n const { doGetSchoolCheckIn } = this.props;\n\n doGetSchoolCheckIn({\n callback: (data) => {\n const schools = data.Schools;\n if (schools) {\n for (var i = 0; i < schools.length; i++) {\n this.getGeofenceDetails(schools[i]);\n }\n }\n },\n });\n };\n\n isSchoolCheckIn = (school) => {\n const { schoolParentCheckIn, schoolGeoFenceInformation } = this.props;\n let checkInPermission = false;\n let checkInAllowedForParent = false;\n let isGeoConditionPass = false;\n\n if (\n schoolParentCheckIn &&\n schoolParentCheckIn.Schools &&\n schoolParentCheckIn !== null &&\n schoolParentCheckIn.Schools !== null &&\n schoolParentCheckIn.Schools.includes(school.SchoolID)\n ) {\n checkInAllowedForParent = true;\n }\n //console.log('schoolGeoFenceInformation isSchoolCheckIn '+ JSON.stringify(schoolGeoFenceInformation))\n //console.log('schoolGeoFenceInformation school ', school)\n const schoolGeoInfo = schoolGeoFenceInformation[school.SchoolID];\n //console.log('schoolGeoInfo ', schoolGeoInfo)\n if (schoolGeoInfo && schoolGeoInfo.GeoFenceForCheckIn === false) {\n isGeoConditionPass = true;\n } else if (schoolGeoInfo && schoolGeoInfo.GeoFenceForCheckIn === true) {\n //console.log(\"this.state.IsSchoolLocationInCheckIn \",this.state.IsSchoolLocationInCheckIn)\n //console.log(\"check for geo \" + school.SchoolID + \" exists \" + this.state.IsSchoolLocationInCheckIn.includes(school.SchoolID));\n isGeoConditionPass = this.state.IsSchoolLocationInCheckIn.includes(\n \"\" + school.SchoolID\n );\n }\n checkInPermission = checkInAllowedForParent && isGeoConditionPass;\n //console.log('checkInPermission ', checkInPermission , ' school ', school.SchoolID)\n // console.log(\n // \"this.state.IsSchoolLocationInCheckIn \",\n // this.state.IsSchoolLocationInCheckIn\n // );\n return checkInPermission;\n };\n\n viewSchoolDetails = (school) => {\n this.openSchoolDetails(school);\n };\n openContactSupport = () => {\n this.props.doShowModal({\n modalScreenName: \"ContactSupport\",\n modalClassName: \"contactSupportModal sidebar-modal right\",\n });\n };\n getEmptyView = () => {\n return (\n
\n

\n {this.props.t(\"CheckInNoRecord_Title\")}\n

\n

\n {this.props.t(\"CheckInNoRecord_SubTitle\")}\n {\n this.openContactSupport();\n }}\n >\n {this.props.t(\"CheckInNoRecord_Link\")}\n \n

\n
\n );\n };\n getCheckViews = () => {\n const { studentsList, schoolInfo, isFetching } = this.props;\n const schools = schoolInfo;\n const students = studentsList && studentsList.TodaysStudents;\n const { isFirstGPSInProgress } = this.state;\n // if (\n // !isFetching && isFirstGPSInProgress &&\n // (!schools || !students || schools.length === 0 || students.length === 0)\n // ) {\n // return this.getEmptyView();\n // }\n const kids = [];\n\n for (let i = 0; i < schools.length; i++) {\n let schoolstudents = [];\n let schoolStudentIDs = [];\n\n if (!this.isSchoolCheckIn(schools[i])) {\n continue;\n }\n\n for (let j = 0; j < students.length; j++) {\n if (schools[i].SchoolID === students[j].SchoolID) {\n schoolstudents.push(students[j]);\n schoolStudentIDs.push(students[j].StudentID);\n }\n }\n\n schoolstudents = schoolstudents.sort((a, b) =>\n a.Firstname.toLowerCase() > b.Firstname.toLowerCase()\n ? 1\n : b.Firstname.toLowerCase() > a.Firstname.toLowerCase()\n ? -1\n : 0\n );\n\n if (schoolstudents.length > 0) {\n let sectiondata = {\n schoolId: schools[i].SchoolID,\n address: schools[i].Address,\n title: schools[i].Name,\n ReunificationEnabled: schools[i].ReunificationEnabled,\n schoolLat: schools[i].Coordinates.latitude,\n schoolLong: schools[i].Coordinates.longitude,\n school: schools[i],\n data: schoolstudents,\n schoolStudentIDs,\n };\n kids.push(sectiondata);\n }\n }\n const sortedSchoolStudentList = kids.sort((a, b) =>\n a.title.toLowerCase() > b.title.toLowerCase()\n ? 1\n : b.title.toLowerCase() > a.title.toLowerCase()\n ? -1\n : 0\n );\n\n const views = [];\n for (var i = 0; i < sortedSchoolStudentList.length; i++) {\n const school = sortedSchoolStudentList[i];\n views.push(\n
\n
\n {\n this.viewSchoolDetails(school);\n }}\n >\n

\n {school.title}\n {/* {school.ReunificationEnabled && (\n \n {this.props.t(\"emergency_reunification\")}\n \n )} */}\n

\n\n \n
\n \n
\n \n );\n }\n\n // if (isFirstGPSInProgress) {\n // return (
\n //

{this.props.t(\"fetching_location\")}

\n //
\n // \n //
\n //
)\n // }\n if (views.length === 0 && isFetching) {\n return this.getLoaderView();\n }\n if (!isFetching && views.length === 0) {\n return this.getEmptyView();\n }\n\n return views;\n };\n\n getLoaderView = () => {\n const { isFetching } = this.props;\n return (\n
\n \n
\n );\n };\n\n getCheckinView = () => {\n return ;\n };\n openCheckinWindow = () => {\n this.props.doShowModal({\n modalScreenName: \"CheckInQuestions\",\n modalClassName: \"checkInQuestionsModal\",\n });\n };\n openSchoolDetails = (schoolStudentDetials) => {\n this.props.doShowModal({\n modalScreenName: \"schoolDetails\",\n params: { school: schoolStudentDetials },\n modalClassName: \"schoolDetails sidebar-modal right\",\n });\n };\n\n hideQuestionAnswerView = () => {\n this.props.doShowCheckinQuestAnsView({\n status: false,\n showSchoolChildrenList: true,\n params: {},\n });\n };\n\n back = () => {\n this.hideQuestionAnswerView();\n this.checkInForSchool();\n };\n\n componentDidUpdate() {\n const {\n fetchStudentListDone,\n fetchSchoolInfoDone,\n doSchoolAndKidsFetchDone,\n schoolGeoFenceInformation,\n } = this.props;\n\n if (fetchStudentListDone === true && fetchSchoolInfoDone === true) {\n doSchoolAndKidsFetchDone();\n }\n if (!_.isEqual(schoolGeoFenceInformation, this.state.schoolGeoInfo)) {\n this.setState(\n { schoolGeoInfo: schoolGeoFenceInformation },\n this.checkSchoolInGeo\n );\n }\n }\n\n render() {\n //console.log(\"schoolGeoFenceInformation \", this.props.schoolGeoFenceInformation)\n const { isFirstGPSInProgress } = this.state;\n //console.log(\"isFirstGPSInProgress \", isFirstGPSInProgress)\n return (\n
\n \n\n
\n
\n
\n
\n
\n

\n {this.props.t(\"selectCheckScr-schoolCheck\")}\n

\n {/*

\n {this.props.t(\"checkInScr_fill_checkInForm\")}\n

*/}\n
\n
\n
\n
\n {moment().format(\"MMM DD, YYYY\")}\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \"Mandatory\n
\n
\n {this.props.t(\"checkInScr_mandatory_checkin\")}\n
\n

\n {this.props.t(\"selectCheckScr-mandatory\")}\n

\n
\n
\n
\n {this.props.checkInQuestAnsView.status === true && (\n

\n \n \n {this.props.t(\"supportNoScr-back\")}\n \n

\n )}\n {isFirstGPSInProgress === false && (\n
\n {this.props.checkInQuestAnsView.showSchoolChildrenList ===\n true && (\n
\n
\n

\n {this.props.t(\"checkInScr_selectwhos_visiting\")}:\n

\n
\n
\n {this.getCheckViews()}\n
\n
\n )}\n {this.props.checkInQuestAnsView.status === true && (\n \n )}\n
\n )}\n {isFirstGPSInProgress && (\n
\n

{this.props.t(\"fetching_location\")}

\n
\n \n
\n
\n )}\n
\n
\n
\n
\n
\n\n \n
\n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n userLoginInfo: state.userAccount.userLoginInfo,\n fetchStudentListDone: state.student.fetchStudentListDone,\n fetchSchoolInfoDone: state.student.fetchSchoolInfoDone,\n checkInQuestAnsView: state.userAccount.checkInQuestAnsView,\n error: state.checkin.error,\n studentsList: state.student.studentsList,\n schoolInfo: state.student.schoolInfo,\n schoolParentCheckIn: state.checkin.schoolParentCheckIn,\n isFetching: loadingSelector(state),\n setHelpListData: state.userAccount.setHelpListData,\n schoolGeoFenceInformation: state.checkin.schoolGeoFenceInformation,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n doShowCheckinQuestAnsView: (data) => dispatch(showCheckinQuestAns(data)),\n doGetSchoolCheckIn: (data) => dispatch(getSchoolCheckIn(data)),\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doGetStudentsList: (data) => dispatch(getStudentsList(data)),\n doGetSchoolDetails: () => dispatch(getSchoolDetails()),\n doSchoolAndKidsFetchDone: () => dispatch(schoolAndKidsFetchDone()),\n doSchoolGeoFenceInformation: (data) =>\n dispatch(getSchoolGeoFenceInformation(data)),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(Checkin)\n);\n","import React from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport { BootstrapModal } from \"../CommonComponents\";\nimport \"../../../node_modules/bootstrap/dist/css/bootstrap.min.css\";\nimport { connect } from \"react-redux\";\nimport {\n getNotificationsList,\n notificationsListClear,\n} from \"../../common/actions/userAccount\";\nimport { showModal, hideModal, setHelpList, setOldHelpSetting } from \"../../common/actions/userAccount\";\nimport GLOBAL_CONST from '../../helper/AppConstants';\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\nimport moment from \"moment\";\nimport RingLoader from \"react-spinners/ClipLoader\";\n\nimport InfiniteScroll from 'react-infinite-scroll-component';\n \nconst notificationFilter = [\n {\n id: 1,\n name: \"Delegation\",\n key: \"delegation\",\n },\n {\n id: 3,\n name: \"Transactional\",\n key: \"transactionalMessage\",\n },\n {\n id: 5,\n name: \"Absentee\",\n key: \"absentee\",\n },\n {\n id: 6,\n name: \"Early Dismissal\",\n key: \"earlyDismissal\",\n },\n {\n id: 10,\n name: \"Manual Parent\",\n key: \"manualParentNotification\",\n },\n {\n id: 11,\n name: \"Present\",\n key: \"present\",\n },\n {\n id: 12,\n name: \"Check-ins\",\n key: \"parentCheckInReminder\",\n },\n];\n\nconst loadingSelector = createLoadingSelector([\"get_notifications\"]);\n\nclass NotificationsList extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n selectedFilterType: 0,\n showMenu: false,\n };\n this.getNotifications(true);\n }\n\n componentDidMount() {\n\n this.dosetHelpList()\n }\n\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"Settings\",\n screen: GLOBAL_CONST.SCREEN_NAMES.NOTIFICATIONS_SCREEN,\n title: this.props.t('notificationScr-enablePush'),\n });\n }\n openHelpModal = () => {\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n }\n });\n }\n\n\n componentWillUnmount() {\n const { doNotificationsListClear } = this.props;\n doNotificationsListClear();\n }\n\n\n clearAll = () => {\n this.showFilterOptions;\n this.setState({ selectedFilterType: 0 }, () => {\n this.getNotifications(true);\n });\n };\n\n showFilterOptions = () => {\n this.setState({ showMenu: !this.state.showMenu });\n };\n\n selectFilterType = (value) => {\n this.setState({ selectedFilterType: parseInt(value) });\n };\n\n getNotifications = (reload) => {\n const { doGetNotificationsList, notifications } = this.props;\n const { selectedFilterType } = this.state;\n let LastNotificationID = 0;\n if (reload === false && notifications.length > 0) {\n LastNotificationID =\n notifications[notifications.length - 1].NotificationID;\n }\n doGetNotificationsList({\n LastNotificationID,\n notificationTypeId: selectedFilterType,\n });\n };\n\n loadMoreRecords = () => {\n const { isFetching, newFetchedNotifications } = this.props;\n if (isFetching) return;\n if (newFetchedNotifications.length < 25) return;\n this.getNotifications(false);\n };\n\n hasMore = () => {\n const { isFetching, newFetchedNotifications } = this.props;\n let needLoad = true\n if (isFetching) needLoad = false;\n if (newFetchedNotifications.length < 25) needLoad = false;\n\n console.log(\"hasMore \"+ needLoad)\n return needLoad\n };\n\n showNotificationFilter = () => {\n const { selectedFilterType } = this.state;\n const filterType = notificationFilter.map((item) => (\n {\n this.selectFilterType(item.id);\n }}\n >\n {item.name}\n\n \n ));\n return
{filterType}
;\n };\n\n\n renderNotification = () => {\n const { notifications, newFetchedNotifications, isFetching } = this.props;\n const { showMenu } = this.state;\n\n return (\n
{ this.setState({ showMenu: false }) }}>\n
\n
\n
\n

\n {this.props.t(\"notificationScr-enablePush\")}\n

\n \n
\n {\n this.closeModal();\n }}\n >\n
\n
\n {notifications.length === 0 && isFetching ? (\n
\n \n
\n ) : null}\n\n
\n
\n \n {\n event.stopPropagation();\n\n\n this.showFilterOptions()\n }}\n >\n {\" \"}\n {this.props.t(\"Receive_Notifications\")}{\" \"}\n \n \n
\n\n {showMenu === true ? (\n
{ event.stopPropagation(); }}>\n {this.showNotificationFilter()}\n \n \n {this.props.t(\"Apply\")}\n {\" \"}\n \n \n \n {this.props.t(\"Clear_Filter_Text\")}\n {\" \"}\n \n
\n ) : null}\n
\n\n {notifications.length === 0 && !isFetching ? (\n
\n
\n
\n
{this.props.t(\"No_Data_Text\")}
\n
\n ) : (\n \n
    \n Loading...}\n scrollableTarget=\"modalScrollView\"\n >\n {notifications.map((item) => (\n
  • \n
    \n

    {item.notificationDescription}

    \n {item.linkUrl && item.linkUrl &&

    {item.linkUrl}

    }\n\n\n
    \n
    \n {item.Schoolname}\n {item.dateTime}\n
    \n {item.linkUrl && item.linkUrl && }\n
  • \n ))}\n \n \n
\n
\n )}\n
\n\n\n
\n \n );\n };\n\n buildListing = ()=>{\n const {notifications } = this.props\n const elements = []\n notifications.map((item) => (\n elements.push(
  • \n
    \n

    {item.notificationDescription}

    \n {item.linkUrl && item.linkUrl &&

    {item.linkUrl}

    }\n\n\n
    \n
    \n {item.Schoolname}\n {item.dateTime}\n
    \n {item.linkUrl && item.linkUrl && }\n
  • )\n ))\n return elements\n }\n loadRecordWithCategory = () => {\n const { isFetching, doNotificationsListClear } = this.props;\n if (isFetching) return;\n doNotificationsListClear();\n this.setState({ showMenu: false });\n this.getNotifications(true);\n };\n\n render() {\n const { notifications } = this.props;\n\n return this.renderNotification();\n }\n\n closeModal = () => {\n this.props.doHideModal();\n this.props.doSetOldHelpSetting()\n };\n}\n\nfunction mapStateToProps(state) {\n return {\n notifications: state.userAccount.notifications,\n isFetching: loadingSelector(state),\n error: state.userAccount.error,\n newFetchedNotifications: state.userAccount.newFetchedNotifications,\n setHelpListData: state.userAccount.setHelpListData,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doGetNotificationsList: (data) => dispatch(getNotificationsList(data)),\n doNotificationsListClear: () => dispatch(notificationsListClear()),\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doSetOldHelpSetting: () => dispatch(setOldHelpSetting()),\n };\n}\n\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(NotificationsList)\n);\n","import React from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport { BootstrapModal } from \"../CommonComponents\";\nimport { connect } from \"react-redux\";\nimport { withRouter } from \"react-router-dom\";\nimport { Link } from \"react-router-dom\";\nimport moment from \"moment\";\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport { confirmAlert } from \"react-confirm-alert\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\ntoast.configure();\n\nimport {\n showModal,\n hideModal,\n nameUpdate,\n nameUpdateClear,\n logoutUser,\n} from \"../../common/actions/userAccount\";\nimport {\n accountDelete,\n accountDeleteClear,\n} from \"../../common/actions/userAccount/userAccountAction\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\nconst loadingSelector = createLoadingSelector([\"update_name\"]);\n\nclass ViewProfile extends React.Component {\n constructor(props) {\n super(props);\n const { userLoginInfo } = this.props;\n this.state = {\n enableEditName: true,\n userName: userLoginInfo.firstName + \" \" + userLoginInfo.lastName,\n userInitials:\n userLoginInfo.firstName.charAt(0) + userLoginInfo.lastName.charAt(0),\n userPhone: userLoginInfo.CountryCode + userLoginInfo.mobile,\n avatarSource: null,\n userEmail: \"\",\n firstNameInvalid: \"\",\n lastNameInvalid: \"\",\n firstName: userLoginInfo.firstName,\n lastName: userLoginInfo.lastName,\n firstNameError: \"\",\n lastNameError: \"\",\n\n password: \"\",\n email: \"\",\n askVerification: false,\n isValidEmail: false,\n isValidPassword: false,\n emailInvalid: \"\",\n passwordInvalid: \"\",\n };\n }\n loadUpdates = () => {\n const { userLoginInfo } = this.props;\n this.setState({\n userName: userLoginInfo.firstName + \" \" + userLoginInfo.lastName,\n userInitials:\n userLoginInfo.firstName.charAt(0) + userLoginInfo.lastName.charAt(0),\n });\n };\n\n secondTextInput(event) {\n const form = event.target.form;\n const index = Array.prototype.indexOf.call(form, event.target);\n if (event.key === \"Enter\") {\n form.elements[index + 1].focus();\n }\n }\n\n handleFirstNameChange = ({ target: { value: firstName } }) =>\n this.setState({ firstName, firstNameError: \"\" });\n handleLastNameChange = ({ target: { value: lastName } }) =>\n this.setState({ lastName, lastNameError: \"\" });\n\n submitForm = () => {\n const { firstName, lastName } = this.state;\n const { doNameUpdate } = this.props;\n\n if (firstName.trim() === \"\") {\n this.setState({ firstNameError: this.props.t(\"First_Name_Alert\") });\n return;\n }\n if (lastName.trim() === \"\") {\n this.setState({ lastNameError: this.props.t(\"Last_Name_Alert\") });\n return;\n }\n\n doNameUpdate({ firstName, lastName });\n };\n\n submitDeleteAccount = ({ onClose }) => {\n const { email, password } = this.state;\n const { doDeleteAccount } = this.props;\n if (email === \"\" || email === null) {\n this.setState({ emailInvalid: this.props.t(\"Email_Alert\") });\n return;\n }\n if (password === \"\" || password === null) {\n this.setState({ passwordInvalid: this.props.t(\"Password_Alert\") });\n return;\n }\n\n \n doDeleteAccount({\n email: email,\n password: password,\n });\n onClose();\n this.setState({ askVerification: false });\n\n // if (isValidEmail === false && isValidPassword === true) {\n // alert('field is not valid')\n // this.setState({ passwordInput: translate(\"Password_Alert\") });\n // return\n // } else {\n // doDeleteAccount({\n // email: email,\n // password: password,\n // })\n // }\n };\n showPasswordOptions = () => {\n const {\n email,\n password,\n isValidEmail,\n isValidPassword,\n emailInvalid,\n passwordInvalid,\n } = this.state;\n\n return confirmAlert({\n customUI: ({ onClose }) => {\n return (\n
    \n
    \n
    \n
    \n

    \n \n

    \n
    \n this.secondTextInput(event)}\n // value={email}\n onChange={(event) => {\n this.setState({ email: event.target.value });\n if (event.target.value === \"\") {\n this.setState({\n emailInvalid: this.props.t(\"Email_Alert\"),\n });\n } else {\n this.setState({ emailInvalid: \"\" });\n }\n }}\n />\n {emailInvalid}\n
    \n
    \n {\n this.setState({ password: event.target.value });\n if (event.target.value === \"\") {\n this.setState({\n passwordInvalid: this.props.t(\"Password_Alert\"),\n });\n } else {\n this.setState({ passwordInvalid: \"\" });\n }\n }}\n // value={val}\n />\n {passwordInvalid}\n
    \n
    \n {\n // this.setState({ askVerification: false });\n this.submitDeleteAccount({ onClose });\n }}\n >\n {this.props.t(\"DELETE\")}\n \n {\n event.preventDefault();\n onClose();\n this.setState({ askVerification: false });\n }}\n >\n {this.props.t(\"regNameScr-cancel\")}\n \n
    \n
    \n
    \n
    \n
    \n );\n },\n });\n };\n\n deleteAccountConfirm = () => {\n confirmAlert({\n title: this.props.t(\"delete_account\"),\n message: this.props.t(\"deleteaccount-areYouSuretext\"),\n buttons: [\n {\n label: this.props.t(\"settingMainScr-ok\"),\n onClick: this.deleteAccount,\n },\n {\n label: this.props.t(\"Cancel\"),\n className: \"cancel-btn\",\n },\n ],\n });\n };\n deleteAccountTapped = () => {\n this.setState({ askVerification: true });\n };\n validate = (text) => {\n // const { isValidEmail, emailInvalid } = this.state;\n // let reg = /^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w\\w+)+$/;\n // console.log(\"text====\", text);\n // if (text === \"\") {\n // this.setState({\n // isValidEmail: false,\n // emailInvalid: this.props.t(\"Email_Alert\"),\n // });\n // //this.setState({ emailInvalid: this.props.t(\"Email_Alert\") });\n // console.log(\"email blank \", isValidEmail);\n // } \n // else if (reg.test(text) === false) {\n // this.setState({ email: text, isValidEmail: false });\n // console.log(\"email not verified \", isValidEmail);\n // this.setState({ emailInvalid: this.props.t(\"Email_Invalid_Alert\") });\n // } else {\n // this.setState({ email: text, isValidEmail: true });\n // console.log(\"email verified \", isValidEmail);\n // }\n };\n\n componentDidUpdate() {\n const {\n updateNameResponse,\n error,\n doNameUpdateClear,\n deleteAccount,\n doDeleteAccountClear,\n } = this.props;\n if (error) {\n toast.error(error.Message || error.Message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n\n doNameUpdateClear();\n } else if (updateNameResponse) {\n toast.success(updateNameResponse.Message || updateNameResponse.Message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n\n doNameUpdateClear();\n this.setState({ enableEditName: !this.state.enableEditName });\n this.loadUpdates();\n }\n\n console.log(\"Delete account msg \", deleteAccount);\n if (deleteAccount != null) {\n if (deleteAccount.Success) {\n toast.success(deleteAccount.Message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n this.setState({ askVerification: false }, () => {\n this.props.doLogoutUser();\n //QuickActions.clearShortcutItems();\n this.props.history.push(\"/\");\n });\n } else {\n toast.error(deleteAccount.Message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n }\n doDeleteAccountClear();\n }\n }\n\n renderViewProfile = () => {\n const {\n userName,\n userPhone,\n userInitials,\n avatarSource,\n firstNameInvalid,\n lastNameInvalid,\n firstNameError,\n lastNameError,\n firstName,\n lastName,\n enableEditName,\n askVerification,\n } = this.state;\n\n const { isFetching, registeredEmail } = this.props;\n console.log(\"askVerification\", askVerification);\n\n return (\n
    \n
    \n
    \n {\n this.closeModal();\n }}\n >\n
    \n
    \n
    \n
    \n {userInitials}\n
    \n\n
    \n

    \n {userName}\n {\n this.setState({ enableEditName: true });\n }}\n >\n \n \n

    \n
    \n
    \n

    {userPhone}

    \n

    \n {registeredEmail}\n

    \n
    \n
    \n {enableEditName === true && (\n
    \n
    \n
    \n this.secondTextInput(event)}\n />\n {firstNameError}\n
    \n\n
    \n {\n if (event.key === \"Enter\") this.submitForm();\n }}\n />\n {lastNameError}\n
    \n
    \n \n {isFetching ? (\n \n ) : null}{\" \"}\n {this.props.t(\"changePickupScr-save\")}\n \n {\n this.setState({ enableEditName: false });\n }}\n >\n {this.props.t(\"editChildScr-cancel\")}\n \n
    \n
    \n
    \n )}\n
    \n {\n this.deleteAccountTapped();\n }}\n >\n \n {this.props.t(\"deleteAccount\")}\n \n
    \n {askVerification && this.showPasswordOptions()}\n
    \n
    \n
    \n );\n };\n closeModal = () => {\n this.props.doHideModal();\n };\n\n render() {\n return this.renderViewProfile();\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n userLoginInfo: state.userAccount.userLoginInfo,\n registeredEmail: state.userAccount.registeredEmail,\n deleteAccount: state.userAccount.deleteAccount,\n isFetching: loadingSelector(state),\n updateNameResponse: state.userAccount.updateNameResponse,\n error: state.userAccount.error,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n doNameUpdate: (data) => dispatch(nameUpdate(data)),\n doNameUpdateClear: () => dispatch(nameUpdateClear()),\n doLogoutUser: () => dispatch(logoutUser()),\n doDeleteAccount: (data) => dispatch(accountDelete(data)),\n doDeleteAccountClear: () => dispatch(accountDeleteClear()),\n };\n}\n\nexport default withTranslation()(\n withRouter(connect(mapStateToProps, mapDispatchToProps)(ViewProfile))\n);\n","import React from \"react\";\nimport { BootstrapModal } from \"../CommonComponents\";\nimport { connect } from \"react-redux\";\nimport {\n passwordUpdate,\n passwordUpdateClear,\n showModal,\n hideModal,\n setHelpList,\n setOldHelpSetting\n} from \"../../common/actions/userAccount\";\nimport GLOBAL_CONST from '../../helper/AppConstants';\nimport { Colors } from \"../../theme\";\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport { confirmAlert } from \"react-confirm-alert\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport { withTranslation } from \"react-i18next\";\n\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\nconst loadingSelector = createLoadingSelector([\"update_password\"]);\ntoast.configure();\n\nclass ChangePassword extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n currentPassword: \"\",\n newPassword: \"\",\n repeatPassword: \"\",\n passwordStrength: \"\",\n disabledButton: true,\n hideCurrentPassword: true,\n hideNewPassword: true,\n hideRepeatPassword: true\n };\n\n }\n\n componentDidMount() {\n this.setButtonState();\n this.dosetHelpList();\n }\n\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"Settings\",\n screen: GLOBAL_CONST.SCREEN_NAMES.CHANGE_PASSWORD,\n title: this.props.t('changePasswordScr-password'),\n });\n }\n openHelpModal = () => {\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n }\n });\n }\n\n\n validateForm = () => {\n const { currentPassword, newPassword, repeatPassword } = this.state;\n\n if (currentPassword === null || currentPassword === \"\") {\n toast.error(this.props.t(\"changePasswordScr-currentPasswordError\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n return false;\n } else if (newPassword !== repeatPassword) {\n toast.error(this.props.t(\"changePasswordScr-newPassowrdMatchError\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n\n return false;\n } else if (newPassword.length < 6) {\n toast.error(this.props.t(\"changePasswordScr-newPassowrdInvalid\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n\n return false;\n }\n return true;\n };\n\n submitChange = () => {\n const { currentPassword, newPassword } = this.state;\n const { doPasswordUpdate } = this.props;\n\n if (this.validateForm()) {\n doPasswordUpdate({\n oldPassword: currentPassword,\n newPassword: newPassword,\n });\n }\n };\n\n setButtonState = () => {\n const { currentPassword, newPassword, repeatPassword } = this.state;\n\n if (currentPassword != \"\" && newPassword != \"\" && repeatPassword != \"\") {\n this.setState({ disabledButton: false });\n } else {\n this.setState({ disabledButton: true });\n }\n };\n\n handleNewPassword = (event) => {\n const rating = [\n 0,\n \"Weak\",\n 25,\n \"Good\",\n 50,\n \"Medium\",\n 75,\n \"Strong\",\n 100,\n \"Very Strong\",\n ];\n let score = 0;\n let pass = \"\";\n if (event.target.value.length > 8) {\n score += 25;\n }\n if (\n event.target.value.match(/[a-z]/) &&\n event.target.value.match(/[A-Z]/)\n ) {\n score += 25;\n }\n if (event.target.value.match(/[\\!\\@\\#\\$\\%\\^\\&\\*\\?\\_\\~\\-\\(\\)]+/)) {\n score += 25;\n }\n if (event.target.value.match(/[0-9]/)) {\n score += 25;\n }\n for (let i = rating.length - 1; i >= 0; i -= 1) {\n if (score >= rating[i]) {\n pass = rating[i + 1];\n break;\n }\n }\n this.setState(\n {\n passwordStrength: pass,\n newPassword: event.target.value,\n },\n () => this.setButtonState()\n );\n };\n\n secondTextInput(event) {\n const form = event.target.form;\n const index = Array.prototype.indexOf.call(form, event.target);\n if (event.key === 'Enter') {\n form.elements[index + 1].focus();\n }\n }\n\n handleCurrentPassword = (event) => {\n this.setState(\n {\n currentPassword: event.target.value,\n },\n () => this.setButtonState()\n );\n };\n\n handleRepeatPassword = (event) => {\n this.setState(\n {\n repeatPassword: event.target.value,\n },\n () => this.setButtonState()\n );\n };\n\n renderPasswordString = () => {\n const { password, passwordStrength } = this.state;\n if (password !== \"\") {\n if (passwordStrength === \"Weak\") {\n return (\n \n {this.props.t(\"regPwdScr-weak\")}\n \n );\n }\n if (passwordStrength === \"Good\") {\n return (\n \n {this.props.t(\"regPwdScr-good\")}\n \n );\n }\n if (passwordStrength === \"Medium\") {\n return (\n \n {this.props.t(\"regPwdScr-medium\")}\n \n );\n }\n if (passwordStrength === \"Strong\" || passwordStrength === \"Strong\") {\n return (\n \n {this.props.t(\"regPwdScr-strong\")}\n \n );\n }\n }\n return --;\n };\n setCurrentPasswordVisibility = () => {\n this.setState({ hideCurrentPassword: !this.state.hideCurrentPassword });\n };\n\n setNewPasswordVisibility = () => {\n this.setState({ hideNewPassword: !this.state.hideNewPassword });\n };\n\n setRepeatPasswordVisibility = () => {\n this.setState({ hideRepeatPassword: !this.state.hideRepeatPassword });\n };\n\n componentDidUpdate() {\n const { doPasswordUpdateClear, updatePasswordResponse, error } = this.props;\n\n if (error) {\n toast.error(error.Message || error.message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n\n doPasswordUpdateClear();\n } else if (updatePasswordResponse) {\n\n toast.success(this.props.t(\"Change_Password_Message\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n doPasswordUpdateClear();\n this.closeModal()\n }\n }\n renderChangePasswordView = () => {\n const {\n currentPassword,\n repeatPassword,\n newPassword,\n disabledButton,\n hideCurrentPassword, hideNewPassword, hideRepeatPassword\n } = this.state;\n const { isFetching } = this.props;\n return (\n
    \n
    \n
    \n
    \n

    \n {this.props.t(\"settingMainScr-changePwd\")}\n

    \n \n
    \n {\n this.closeModal();\n }}\n >\n
    \n
    \n
    \n
    \n
    \n this.secondTextInput(event)}\n />\n \n
    \n
    \n this.secondTextInput(event)}\n />\n \n
    \n
    \n { if (event.key === 'Enter') this.submitChange() }}\n />\n \n
    \n
    \n \n {this.props.t(\"regPwdScr-strength\")} \n \n {this.renderPasswordString()}\n
    \n
    \n \n {isFetching ? (\n \n ) : null}{\" \"}{this.props.t(\"settingsScr-submit\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n );\n };\n closeModal = () => {\n this.props.doHideModal();\n this.props.doSetOldHelpSetting();\n };\n\n render() {\n return this.renderChangePasswordView();\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n userLoginInfo: state.userAccount.userLoginInfo,\n updatePasswordResponse: state.userAccount.updatePasswordResponse,\n error: state.userAccount.error,\n isFetching: loadingSelector(state),\n\n setHelpListData: state.userAccount.setHelpListData,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n doPasswordUpdate: (data) => dispatch(passwordUpdate(data)),\n doPasswordUpdateClear: () => dispatch(passwordUpdateClear()),\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doSetOldHelpSetting: () => dispatch(setOldHelpSetting()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(ChangePassword)\n);\n","import React from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport { BootstrapModal } from \"../CommonComponents\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { showModal, hideModal, setHelpList, setOldHelpSetting } from \"../../common/actions/userAccount\";\nimport GLOBAL_CONST from '../../helper/AppConstants';\nimport {\n notificationSetting,\n notificationSettingUpdate,\n notificationSettingUpdateClear,\n notificationSettingClear,\n} from \"../../common/actions/userAccount\";\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport { confirmAlert } from \"react-confirm-alert\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\nconst loadingSelector = createLoadingSelector([\"update_notification_setting\"]);\ntoast.configure();\nclass Setting extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n notification: false,\n delegationsNotifications: false,\n statusNotification: false,\n emailNotification: false,\n attendanceNotification: false,\n checkinNotification: false,\n };\n\n this.getNotificationStting();\n }\n\n componentDidMount() {\n\n this.dosetHelpList()\n }\n\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"Settings\",\n screen: GLOBAL_CONST.SCREEN_NAMES.SETTING_NOTIFICATION,\n title: this.props.t('settingsScr-settings'),\n });\n }\n openHelpModal = () => {\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n }\n });\n }\n\n\n getNotificationStting = () => {\n const { doNotificationSetting } = this.props;\n doNotificationSetting();\n };\n\n loadSettings = () => {\n const { settingNotifications } = this.props;\n if (settingNotifications !== null) {\n this.setState({\n notification: settingNotifications.ReceiveNotification,\n delegationsNotifications:\n settingNotifications.ReceiveDelegationNotification,\n statusNotification: settingNotifications.ReceiveStatusnnotification,\n emailNotification: settingNotifications.ReceiveEmailNotification,\n attendanceNotification: settingNotifications.ReceivePresentNotification,\n checkinNotification:\n settingNotifications.ReceiveNotificationForParentCheckInReminder,\n });\n }\n };\n\n updateSetting = () => {\n const {\n notification,\n delegationsNotifications,\n statusNotification,\n emailNotification,\n attendanceNotification,\n checkinNotification,\n } = this.state;\n const { doNotificationSettingUpdate, userLoginInfo } = this.props;\n\n confirmAlert({\n title: this.props.t(\"settingsScr-saveSettings\"),\n message: this.props.t(\"settingsScr-saveSettingConfirmAlert\"),\n buttons: [\n {\n label: this.props.t(\"settingsScr-submit\"),\n onClick: () => {\n\n doNotificationSettingUpdate({\n receiveStatusnnotification: statusNotification,\n receiveDelegationNotification: delegationsNotifications,\n receiveEmailNotification: emailNotification,\n receiveNotification: notification,\n receiveNotificationForParentCheckInReminder: checkinNotification,\n receivePresentNotification: attendanceNotification,\n authToken: userLoginInfo.AuthTokenID,\n });\n },\n },\n {\n label: this.props.t(\"regNameScr-cancel\"),\n className: \"cancel-btn\",\n },\n ],\n });\n };\n\n componentDidUpdate() {\n const {\n doNotificationSettingUpdateClear,\n updateNotificationSetting,\n error,\n settingNotifications,\n doNotificationSettingClear,\n } = this.props;\n\n if (settingNotifications !== null) {\n this.loadSettings();\n doNotificationSettingClear();\n }\n if (error) {\n toast.error(error.Message || error.message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n\n\n doNotificationSettingUpdateClear();\n } else if (updateNotificationSetting) {\n toast.success(this.props.t(\"settingsScr-saveSettingSuceess\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n doNotificationSettingUpdateClear();\n this.props.doHideModal()\n }\n }\n\n renderSettingsView = () => {\n const {\n notification,\n delegationsNotifications,\n statusNotification,\n emailNotification,\n attendanceNotification,\n checkinNotification,\n } = this.state;\n const { isFetching } = this.props\n return (\n
    \n
    \n
    \n
    \n

    \n {this.props.t(\"settingsScr-settings\")}\n

    \n \n
    \n {\n this.closeModal();\n }}\n >\n
    \n
    \n
    \n
    \n
      \n
    • \n \n {\" \"}\n {this.props.t(\"notificationScr-enablePush\")}\n \n \n
    • \n
    • \n \n {\" \"}\n {this.props.t(\"Delegation_Notifications\")}\n \n \n
    • \n
    • \n \n {\" \"}\n {this.props.t(\"Status_Notifications\")}\n \n \n
    • \n
    • \n \n {this.props.t(\"Email_Notifications\")}\n \n \n
    • \n
    • \n \n {this.props.t(\"Attendance_Notifications\")}\n \n \n
    • \n
    • \n \n {this.props.t(\"checkin_notification\")}\n \n \n
    • \n
    \n
    \n
    \n {\n this.updateSetting();\n }}\n >\n {isFetching ? (\n \n ) : null}{\" \"}{this.props.t(\"changePickupScr-save\")}\n \n
    \n
    \n
    \n
    \n
    \n );\n };\n closeModal = () => {\n this.props.doHideModal();\n };\n toggleDelegationStiing = () => {\n const { delegationsNotifications } = this.state;\n this.setState({\n delegationsNotifications: !delegationsNotifications,\n });\n };\n\n render() {\n return this.renderSettingsView();\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n settingNotifications: state.userAccount.settingNotifications,\n error: state.userAccount.error,\n updateNotificationSetting: state.userAccount.updateNotificationSetting,\n userLoginInfo: state.userAccount.userLoginInfo,\n setHelpListData: state.userAccount.setHelpListData,\n isFetching: loadingSelector(state)\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n\n doNotificationSetting: () => dispatch(notificationSetting()),\n doNotificationSettingUpdate: (data) =>\n dispatch(notificationSettingUpdate(data)),\n doNotificationSettingUpdateClear: () =>\n dispatch(notificationSettingUpdateClear()),\n doNotificationSettingClear: () => dispatch(notificationSettingClear()),\n\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doSetOldHelpSetting: () => dispatch(setOldHelpSetting()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(Setting)\n);\n","import React from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport { Dropdown } from \"react-bootstrap\";\nimport { connect } from \"react-redux\";\nimport { showModal, hideModal, setHelpList, setOldHelpSetting } from \"../../common/actions/userAccount\";\nimport GLOBAL_CONST from '../../helper/AppConstants';\nimport { nextField } from \"../../helper/utility\";\nimport {\n getTopics,\n sendSupportRequest,\n sendSupportRequestClear,\n} from \"../../common/actions/userAccount\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\nconst loadingSelector = createLoadingSelector([\"send_support_request\"]);\n\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport { confirmAlert } from \"react-confirm-alert\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport { extendWith } from \"lodash\";\n\ntoast.configure();\nclass ContactSupport extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n supportText: \"\",\n previousSelectedOptions: null,\n previousSelectedSchoolOption: null,\n selectedOption: 0,\n selectedOptionLabel: null,\n selectedSchoolOptions: null,\n selectedSchoolOptionsLabel: null,\n selectedChildren: [],\n isSelected: false,\n schoolsOptions: [],\n SchoolStudentList: [],\n feedback: \"\",\n customSchoolName: \"\",\n customStudentName: \"\",\n showValidator: {},\n };\n\n this.getTopicsdetails();\n }\n\n componentDidMount() {\n this.dosetHelpList()\n }\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"Settings\",\n screen: GLOBAL_CONST.SCREEN_NAMES.CONTACT_SUPPORT,\n title: this.props.t('helpScr-contact'),\n });\n }\n openHelpModal = () => {\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n }\n });\n }\n\n getSchoolStudents = (item) => {\n const { studentsList } = this.props;\n let students = [];\n if (studentsList && studentsList.TodaysStudents.length > 0) {\n const Schoolstudents = studentsList.TodaysStudents;\n for (let i = 0; i < Schoolstudents.length; i++) {\n if (item == Schoolstudents[i].SchoolID) {\n students.push({\n studenId: Schoolstudents[i].StudentID,\n firstName: Schoolstudents[i].Firstname,\n lastName: Schoolstudents[i].Lastname,\n });\n }\n }\n }\n\n return students;\n };\n\n setSelected = (item) => {\n const { selectedChildren } = this.state;\n\n if (selectedChildren.includes(item.studenId)) {\n selectedChildren.splice(selectedChildren.indexOf(item.studenId), 1);\n } else {\n selectedChildren.push(item.studenId);\n }\n\n this.setState({ selectedChildren });\n };\n\n listItem = ({ item }) => {\n const { selectedChildren } = this.state;\n return (\n
    \n this.setSelected(item)}\n />\n \n \n {item.firstName} {\"\"} {item.lastName}\n \n
    \n\n );\n };\n\n getTopicsByID = (value) => {\n const { helpTopics } = this.props;\n if (helpTopics) {\n for (let i = 0; i < helpTopics.length; i++) {\n if (value === helpTopics[i].value) return helpTopics[i].label;\n }\n }\n };\n\n getSchoolsByID = (value) => {\n const { schoolsOptions } = this.state;\n for (let i = 0; i < schoolsOptions.length; i++) {\n if (value === schoolsOptions[i].value) return schoolsOptions[i].label;\n }\n };\n\n getTopicsdetails = () => {\n const { schoolInfo, doGetTopics } = this.props;\n let schoolIds = [];\n\n for (let i = 0; i < schoolInfo.length; i++) {\n schoolIds.push(schoolInfo[i].SchoolID);\n }\n doGetTopics({ schoolIds });\n };\n\n\n validate = () => {\n const showValidator = this.validator();\n\n if (showValidator[\"topic\"]) {\n alert(this.props.t(\"Support_SelectTopc_Alert\"));\n return false;\n }\n if (showValidator[\"description\"]) {\n alert(this.props.t(\"Support_Feedback_Alert\"));\n return false;\n }\n if (showValidator[\"school\"]) {\n alert(this.props.t(\"Support_Enter_School_Kid_Info\"));\n return false;\n }\n if (showValidator[\"student\"]) {\n alert(this.props.t(\"Support_Enter_School_Kid_Info\"));\n return false;\n }\n if (showValidator[\"kids\"]) {\n alert(this.props.t(\"Support_Select_Kid\"));\n return false;\n }\n\n return true;\n }\n\n validator = () => {\n const {\n selectedChildren,\n selectedSchoolOptions,\n selectedOption,\n feedback,\n customSchoolName,\n customStudentName,\n } = this.state;\n\n let validate = false;\n\n\n\n\n if (selectedOption === undefined || !selectedOption || selectedOption === 0) {\n alert(this.props.t(\"Support_SelectTopc_Alert\"));\n validate = false\n return false;\n } else if (feedback === \"\") {\n alert(this.props.t(\"Support_Feedback_Alert\"));\n validate = false\n return false\n }\n\n let topic = \"\" + this.getTopicsByID(selectedOption);\n topic = topic.toLowerCase();\n if (topic.includes(\"pickup\") || topic.includes(\"delegate\")\n || topic.includes(\"announce\") || topic.includes(\"child\")\n || topic.includes(\"recogida\") || topic.includes(\"anunciar\")\n || topic.includes(\"delegados\") || topic.includes(\"niño\")) {\n\n if (parseInt(selectedSchoolOptions) === 0 && customSchoolName == \"\") {\n alert(this.props.t(\"Support_Enter_School_Kid_Info\"));\n validate = false\n return false;\n } else if (parseInt(selectedSchoolOptions) === 0 && customStudentName == \"\") {\n alert(this.props.t(\"Support_Enter_School_Kid_Info\"));\n validate = false\n return false;\n } else if (selectedSchoolOptions > 0\n && this.getSchoolStudents(selectedSchoolOptions).length > 0\n && selectedChildren.length === 0) {\n alert(this.props.t(\"Support_Select_Kid\"));\n validate = false\n return false;\n }\n }\n\n return true;\n }\n\n\n\n submitForm = () => {\n const {\n selectedChildren,\n selectedSchoolOptions,\n selectedOption,\n feedback,\n customSchoolName,\n customStudentName,\n } = this.state;\n const { doSendSupportRequest, userLoginInfo } = this.props;\n\n\n if (!this.validator()) { return; }\n\n\n else if (customSchoolName == \"\" && customStudentName == \"\") {\n doSendSupportRequest({\n list_HelpTopicId: selectedOption,\n schoolId: selectedSchoolOptions,\n studentIds: selectedChildren,\n customSchoolName: \"\",\n customStudentName: \"\",\n feedback: feedback,\n authToken: userLoginInfo.AuthTokenID,\n });\n } else {\n doSendSupportRequest({\n list_HelpTopicId: selectedOption,\n schoolId: selectedSchoolOptions,\n studentIds: selectedChildren,\n customSchoolName: customSchoolName,\n customStudentName: customStudentName,\n feedback: feedback,\n authToken: userLoginInfo.AuthTokenID,\n });\n }\n\n };\n\n componentDidUpdate() {\n const { schoolsOptions, selectedSchoolOptions } = this.state;\n const {\n schoolInfo,\n error,\n dosendSupportRequestClear,\n supportResponse,\n userLoginInfo,\n } = this.props;\n let schools = [];\n\n if (error) {\n toast.error(error.Message || error.message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n\n dosendSupportRequestClear();\n } else if (supportResponse) {\n toast.success(supportResponse || supportResponse, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n this.closeModal();\n\n dosendSupportRequestClear();\n }\n\n if (schoolInfo) {\n for (let i = 0; i < schoolInfo.length; i++) {\n\n schools.push({\n label: `${schoolInfo[i].Name}`,\n value: `${schoolInfo[i].SchoolID}`,\n });\n }\n schools.push({\n label: this.props.t(\"Not_List_School\"),\n value: \"0\",\n });\n\n if (schoolsOptions.length === 0 && schools.length > 0) {\n this.setState({ schoolsOptions: schools });\n this.setState({ selectedSchoolOptions: schools[0].value })\n\n }\n\n }\n }\n\n buildStudentList = (selectedSchoolOptions) => {\n\n const data = this.getSchoolStudents(selectedSchoolOptions);\n const views = [];\n for (var i = 0; i < data.length; i++) {\n views.push(this.listItem({ item: data[i] }));\n }\n return views;\n };\n\n handleFeedback = ({ target: { value: feedback } }) =>\n this.setState({ feedback });\n\n handleCustomSchoolName = ({ target: { value: customSchoolName } }) =>\n this.setState({ customSchoolName });\n\n handleCustomStudentName = ({ target: { value: customStudentName } }) =>\n this.setState({ customStudentName });\n\n renderContactSupportView = () => {\n const {\n selectedOption,\n schoolsOptions,\n selectedSchoolOptions,\n selectedOptionLabel,\n selectedSchoolOptionsLabel,\n feedback,\n customSchoolName,\n customStudentName,\n showValidator\n } = this.state;\n const { helpTopics, isFetching, userLoginInfo } = this.props;\n\n console.log(\"helpTopics\", helpTopics)\n\n return (\n
    \n
    \n
    \n
    \n

    {this.props.t(\"helpScr-contact\")}

    \n \n
    \n\n {\n this.closeModal();\n }}\n >\n
    \n\n
    \n
    \n
    \n
    \n

    \n {this.props.t(\"App_Support\")}\n

    \n
    \n
    \n \n\n {\n this.setState({\n selectedOption: eventKey,\n });\n }}\n onClick={() => {\n this.setState({\n previousSelectedOptions: selectedOption,\n });\n }}\n >\n \n {this.getTopicsByID(selectedOption)}\n \n\n \n {helpTopics.map((data) => {\n return (\n \n \n {data.label}\n \n \n );\n })}\n \n \n
    \n\n
    \n \n\n {\n this.setState({\n selectedSchoolOptions: eventKey,\n });\n }}\n\n >\n \n {this.getSchoolsByID(selectedSchoolOptions)}\n \n\n \n {schoolsOptions.map((data) => {\n return (\n \n \n {data.label}\n \n \n );\n })}\n \n \n
    \n
    \n {parseInt(selectedSchoolOptions) === 0 ? (\n nextField(event)}\n\n />\n ) : null}\n
    \n
    \n {parseInt(selectedSchoolOptions) === 0 ? (\n nextField(event)}\n\n />\n ) : null}\n
    \n
    \n {this.buildStudentList(selectedSchoolOptions).length > 0 ? (\n \n ) : null}\n\n {this.buildStudentList(selectedSchoolOptions)}\n
    \n
    \n \n { if (event.key === 'Enter') this.submitForm(); }}\n\n >\n
    \n
    \n \n {isFetching ? (\n \n ) : null}{\" \"}{this.props.t(\"settingsScr-submit\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n );\n };\n closeModal = () => {\n this.props.doHideModal();\n this.props.doSetOldHelpSetting();\n };\n\n render() {\n return this.renderContactSupportView();\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n schoolInfo: state.student.schoolInfo,\n helpTopics: state.userAccount.helpTopics,\n supportResponse: state.userAccount.supportResponse,\n studentsList: state.student.studentsList,\n isFetching: loadingSelector(state),\n error: state.userAccount.error,\n userLoginInfo: state.userAccount.userLoginInfo,\n\n setHelpListData: state.userAccount.setHelpListData,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n\n doGetTopics: (data) => dispatch(getTopics(data)),\n doSendSupportRequest: (data) => dispatch(sendSupportRequest(data)),\n dosendSupportRequestClear: () => dispatch(sendSupportRequestClear()),\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doSetOldHelpSetting: () => dispatch(setOldHelpSetting()),\n };\n}\n\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(ContactSupport)\n);\n","export default __webpack_public_path__ + \"static/media/empty-state.3c5c37ad.svg\";","import React from \"react\";\nimport { MainHeader } from \"../CommonComponents\";\nimport { withRouter } from \"react-router-dom\";\nimport { Link } from \"react-router-dom\";\nimport NokidsImage from \"./../assets/dashboard/empty-state.svg\";\nimport { withTranslation } from \"react-i18next\";\nimport { connect } from \"react-redux\";\nimport { showModal, hideModal } from \"../../common/actions/userAccount\";\nclass Nokids extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n openContactSupportModal = () => {\n this.props.doShowModal({\n modalScreenName: \"ContactSupport\",\n modalClassName: \"contactSupportModal sidebar-modal right\",\n });\n };\n render() {\n const { noKidsTitle, noKidsDetail } = this.props;\n return (\n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n

    {noKidsTitle}

    \n
    \n

    {noKidsDetail}

    \n
    \n
    \n \n {this.props.t(\"dashBoardScr-needHelp\")}\n \n\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n }\n}\nfunction mapStateToProps(state) {\n return {\n\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n };\n}\n\nexport default withTranslation()(\n withRouter(connect(mapStateToProps, mapDispatchToProps)(Nokids))\n);\n","import React from \"react\";\nimport { MainHeader } from \"../CommonComponents\";\nimport { withRouter } from \"react-router-dom\";\nimport { Link } from \"react-router-dom\";\nimport NokidsImage from \"./../assets/dashboard/empty-state.svg\";\nimport { withTranslation } from \"react-i18next\";\nimport { connect } from \"react-redux\";\nimport { getDefaultUserSettings, isAnnounceAllowed, isKidAnnounceable, getPickupMode, getModifiedPickupMode, isAnnounceTimeStarted, getSiteAccessPermission, getChildStatus } from \"../../helper/utility\";\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport { dom } from '@fortawesome/fontawesome-svg-core';\nimport { faHome } from '@fortawesome/free-solid-svg-icons';\nimport { faCarAlt } from '@fortawesome/free-solid-svg-icons';\nimport { faBusAlt } from '@fortawesome/free-solid-svg-icons';\nimport { faSchool } from '@fortawesome/free-solid-svg-icons';\nimport moment from \"moment\";\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\n\nclass ChildCard extends React.Component {\n constructor(props) {\n super(props);\n const { childDetials } = this.props;\n this.state = {\n isPickingUpToday: childDetials.isPickingUpToday,\n announceTimeDifference: this.getAnnounceTimeDifference(childDetials.DismissalTime, childDetials.PickupModeAllowsAnnounce, childDetials.StatusID),\n enableAnnounce: isAnnounceAllowed(childDetials.DismissalTime, childDetials.PickupModeAllowsAnnounce, childDetials.StatusID, childDetials.isLastDayOfSchoolPast),\n canKidAnnounce: isKidAnnounceable(childDetials.DismissalTime, childDetials.PickupModeAllowsAnnounce, childDetials.isLastDayOfSchoolPast)\n };\n }\n componentDidMount() {\n this.createTimer();\n }\n\n createTimer = () =>{\n this.myInterval = setInterval(() => {\n const { DismissalTime, \n PickupModeAllowsAnnounce, StatusID, isLastDayOfSchoolPast, Firstname\n } = this.props;\n const announceTimeDifference = this.getAnnounceTimeDifference(); \n if(announceTimeDifference === this.state.announceTimeDifference) return; \n console.log(\"announceTimeDifference \" + this.state.announceTimeDifference + \" Firstname \" + Firstname)\n\n this.setState({\n announceTimeDifference: this.getAnnounceTimeDifference(),\n enableAnnounce: isAnnounceAllowed(DismissalTime,PickupModeAllowsAnnounce,StatusID, isLastDayOfSchoolPast),\n canKidAnnounce: isKidAnnounceable(DismissalTime,PickupModeAllowsAnnounce,isLastDayOfSchoolPast) \n });\n \n }, 60 * 1000);\n }\n componentWillUnmount () {\n if (this.myInterval) {\n clearInterval(this.myInterval);\n this.myInterval = null;\n }\n }\n\n getAnnounceTimeDifference = (DismissalTime, PickupModeAllowsAnnounce, StatusID) => {\n if (StatusID === GLOBAL_CONST.PICKUP_STATUS.ANNOUNCED || StatusID === GLOBAL_CONST.PICKUP_STATUS.DISMISSED\n || PickupModeAllowsAnnounce === false) return '';\n var AnnounceStartTime = new Date('1/1/2015 ' + DismissalTime);\n var todaysDate = new Date();\n var LocalDateTime = new Date('1/1/2015 ' + todaysDate.getHours() + \":\" + todaysDate.getMinutes());\n var hours = 0;\n var start = moment(AnnounceStartTime); //announce start time\n var end = moment(LocalDateTime); // current time\n var duration = moment.duration(start.diff(end));\n var mins = duration.asMinutes();\n hours = duration.asHours();\n hours = parseInt(hours);\n if (mins < 60 && mins > 0) return mins + ` ${this.props.t(\"Min_to_announce\")}`;\n else if (hours > 0) return hours + ` ${this.props.t(\"Hour\")}${hours > 1 ? `s` : ``} ${this.props.t(\"To_Announce\")}`;\n return '';\n }\n\n isPickingUpTapped = (obj) => {\n const { childDetials, selectedSwitchCallback } = this.props;\n this.setState({ isPickingUpToday: obj.target.checked });\n selectedSwitchCallback(childDetials, obj.target.checked);\n\n }\n\n render() {\n const { isPickingUpToday, enableAnnounce, announceTimeDifference, canKidAnnounce } = this.state\n const { childDetials } = this.props\n\n //console.log(` ${childDetials.Firstname} enableAnnounce ${enableAnnounce} canKidAnnounce${canKidAnnounce} isPickingUpToday${isPickingUpToday} getChildStatus ${childDetials.Status_EN} + childDetials.Status_ES ${+childDetials.Status_ES}`);\n return (\n
    \n \n {childDetials.PickupModeIcon === \"Car\" && }\n {childDetials.PickupModeIcon === \"Bus\" && }\n {childDetials.PickupModeIcon === \"AfterSchool\" && }\n {childDetials.PickupModeIcon === \"Walker\" && }\n \n
    \n

    {`${childDetials.Firstname} ${childDetials.Lastname}`}

    \n\n
    \n \n {childDetials.PickupModeName}\n \n {!isAnnounceTimeStarted(childDetials.DismissalTime) &&\n {announceTimeDifference}\n }\n
    \n {canKidAnnounce &&\n
    \n \n {enableAnnounce && isPickingUpToday ? this.props.t(\"Select_To_Announce\") : enableAnnounce && isPickingUpToday === false ? this.props.t(\"Announce_To_Select\") : getChildStatus(childDetials)}\n \n {enableAnnounce &&\n
    \n
    \n }\n
    \n }\n
    \n
    \n );\n }\n}\nfunction mapStateToProps(state) {\n return {\n\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n\n };\n}\n\nexport default withTranslation()(\n withRouter(connect(mapStateToProps, mapDispatchToProps)(ChildCard))\n);\n","import React from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { withTranslation } from \"react-i18next\";\nimport { connect } from \"react-redux\";\nimport {\n distance,\n isAnnounceAllowed,\n isKidAnnounceable,\n showLocationError,\n} from \"../../helper/utility\";\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\n\nimport { Slide, toast } from \"react-toastify\";\nimport ChildCard from \"./ChildCard\";\nimport { positionInLineGet } from \"../../common/actions/students\";\nimport {\n showModal,\n hideModal,\n logoutUser,\n setHelpList,\n} from \"../../common/actions/userAccount\";\nclass SchoolCard extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n latitude: null,\n longitude: null,\n error: null,\n IsLocationOnCampus: false,\n permissionResult: \"denied\",\n isFirstGPSInProgress: true,\n };\n }\n\n componentDidMount() {\n const { school, kidsAnnouncedToday } = this.props;\n\n this.enableGeo();\n const schoolkidsAnnouncedToday = kidsAnnouncedToday.filter(\n (item) => item.SchoolID == school.schoolId\n );\n\n if (schoolkidsAnnouncedToday.length > 0) {\n this.getCarLineQueue();\n this.myInterval = setInterval(() => {\n this.getCarLineQueue();\n }, 60 * 1000);\n } else {\n if (this.myInterval) {\n clearInterval(this.myInterval);\n this.myInterval = null;\n }\n }\n }\n\n componentWillUnmount() {\n if (this.myInterval) {\n clearInterval(this.myInterval);\n this.myInterval = null;\n }\n if (this.watchId) navigator.geolocation.clearWatch(this.watchId);\n }\n\n savePermission = (result) => {\n this.setState({\n permissionResult: result.state,\n });\n };\n\n enableGeo = () => {\n const { userLoginInfo } = this.props;\n const mythis = this;\n console.log(\"enableGeo\");\n if (userLoginInfo) {\n const { AnnounceInRangeRequired } = userLoginInfo;\n if (AnnounceInRangeRequired) {\n console.log(\"enableGeo 2\");\n navigator.geolocation.getCurrentPosition(\n (position) => {\n console.log(\"enableGeo 3 \", position);\n this.setState({ isFirstGPSInProgress: false });\n mythis.processGeoLocation(position);\n mythis.watchLocation();\n },\n (error) => {\n console.log(error);\n },\n {\n enableHighAccuracy: false,\n maximumAge: 0,\n }\n );\n\n // navigator && navigator.permissions && navigator.permissions.query({name:'geolocation'}).then(function(result) {\n // console.log(\"geo permision \", result)\n // mythis.savePermission(result)\n // if (result.state == 'granted' || result.state == 'prompt') {\n // navigator.geolocation.getCurrentPosition((position) => {\n // mythis.processGeoLocation(position);\n // mythis.watchLocation();\n // },\n // (error) => {\n // alert(error)\n // });\n // }\n // });\n }\n }\n };\n\n watchLocation = () => {\n const mythis = this;\n this.watchId = navigator.geolocation.watchPosition(\n (position) => {\n mythis.processGeoLocation(position);\n },\n (error) => {\n console.error(\"watchLocation error \", error);\n //this.setState({ error: error.message });\n showLocationError(this.props.t(\"Location_Error_Text\"));\n },\n {\n enableHighAccuracy: true,\n timeout: 90000,\n maximumAge: 1000,\n distanceFilter: 100,\n }\n );\n console.log(\"watchlocation called \" + this.watchId);\n };\n\n processGeoLocation = (position) => {\n console.log(\"*** position: \" + JSON.stringify(position));\n if (!position || !position.coords) return;\n console.log(\"*** position: \" + JSON.stringify(position.coords));\n this.setState({\n latitude: position.coords.latitude,\n longitude: position.coords.longitude,\n });\n\n const { school } = this.props;\n console.log(\"school \", school);\n const schoolLat = school.schoolLat;\n const schoolLong = school.schoolLong;\n const AnnounceDistance = school.AnnounceDistance;\n\n const MyLat = this.state.latitude;\n const MyLong = this.state.longitude;\n\n // console.log(\"*** Watch lat: \", MyLat);\n // console.log(\"*** Watch long: \", MyLong);\n // console.log(\"*** School lat: \", schoolLat);\n // console.log(\"*** School long: \", schoolLong);\n const Unit = \"K\";\n const dist = distance(MyLat, MyLong, schoolLat, schoolLong, Unit);\n // console.log(\"*** Announce Distance: \", AnnounceDistance);\n // console.log(\"*** Parent Distance: \", dist);\n // console.log(\"*** Parent Distance: \", dist <= 10);\n\n if (dist <= AnnounceDistance) {\n this.setState({ IsLocationOnCampus: true });\n } else {\n this.setState({ IsLocationOnCampus: false });\n }\n };\n\n getCarLineQueue = () => {\n const { school, doPositionInLineGet, kidsAnnouncedToday } = this.props;\n console.log(\n \"kidsAnnouncedToday records \" + JSON.stringify(kidsAnnouncedToday)\n );\n const schoolkidsAnnouncedToday = kidsAnnouncedToday.filter(\n (item) =>\n item.SchoolID == school.schoolId && item.PickupModeIcon === \"Car\"\n );\n\n if (schoolkidsAnnouncedToday.length > 0) {\n const lastIndex = schoolkidsAnnouncedToday.length - 1;\n if (schoolkidsAnnouncedToday[lastIndex].PickupModeIcon === \"Car\") {\n doPositionInLineGet({\n pickupModeId: schoolkidsAnnouncedToday[lastIndex].PickupModeID,\n studentId: schoolkidsAnnouncedToday[lastIndex].StudentID,\n });\n }\n }\n };\n\n openSchoolDetails = (schoolStudentDetials) => {\n this.props.doShowModal({\n modalScreenName: \"schoolDetails\",\n params: { school: schoolStudentDetials },\n modalClassName: \"schoolDetails sidebar-modal right\",\n });\n };\n\n canAnnounceAllowed = () => {\n const { IsLocationOnCampus } = this.state;\n const { userLoginInfo } = this.props;\n if (userLoginInfo === null) return false;\n const { school, isAnyKidSelected } = this.props;\n let enableAnnounce = false;\n let isAnnounceForAnyKid = false;\n let { AnnounceInRangeRequired } = userLoginInfo;\n if (!AnnounceInRangeRequired) AnnounceInRangeRequired = false;\n if (school.isLastDayOfSchoolPast) return false;\n for (var i = 0; i < school.data.length; i++) {\n if (\n isAnnounceAllowed(\n school.data[i].DismissalTime,\n school.data[i].PickupModeAllowsAnnounce,\n school.data[i].StatusID,\n school.isLastDayOfSchoolPast\n )\n ) {\n isAnnounceForAnyKid = true;\n break;\n }\n }\n // Check if any other conition:\n //isSchoolNeedAnnounce = true;\n const anyKidCanAnnounce = isAnyKidSelected(school);\n\n console.log(\n `******** School card title ${school.title} ${school.isLastDayOfSchoolPast} IsLocationOnCampus ${IsLocationOnCampus} AnnounceInRangeRequired ${AnnounceInRangeRequired} isAnnounceForAnyKid ${isAnnounceForAnyKid} anyKidCanAnnounce ${anyKidCanAnnounce}`\n );\n\n enableAnnounce =\n (IsLocationOnCampus || AnnounceInRangeRequired === false) &&\n isAnnounceForAnyKid &&\n anyKidCanAnnounce;\n console.log(`******** School card title enableAnnounce${enableAnnounce} `);\n return enableAnnounce;\n };\n\n anyKidCanAnnounced = () => {\n const { school } = this.props;\n for (let i = 0; i < school.data.length; i++) {\n if (school.data[i].PickupModeAllowsAnnounce === true) return true;\n }\n return false;\n };\n\n isAllAnnounceKidAnnounced = () => {\n const { school } = this.props;\n for (var i = 0; i < school.data.length; i++) {\n if (school.data[i].PickupModeAllowsAnnounce) {\n if (\n school.data[i].StatusID == GLOBAL_CONST.PICKUP_STATUS.ANNOUNCED ||\n school.data[i].StatusID == GLOBAL_CONST.PICKUP_STATUS.DISMISSED ||\n school.data[i].StatusID == GLOBAL_CONST.PICKUP_STATUS.ABSENT\n ) {\n // Kid has been announced\n } else {\n return false;\n }\n }\n }\n\n return true;\n };\n\n isAnyKidAnnounceTimeStarted = () => {\n const { school } = this.props;\n for (let i = 0; i < school.data.length; i++) {\n if (\n isKidAnnounceable(\n school.data[i].DismissalTime,\n school.data[i].PickupModeAllowsAnnounce,\n school.isLastDayOfSchoolPast\n )\n ) {\n return true;\n }\n }\n return false;\n };\n\n AnnounceTapped = () => {\n if (!this.anyKidCanAnnounced()) {\n toast.error(this.props.t(\"Announce_Kids_Error\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n return;\n }\n if (this.isAllAnnounceKidAnnounced()) {\n toast.error(this.props.t(\"Announce_Kids_Error\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n\n return;\n }\n\n const isAnyKidAnnounceTimeStartedFlag = this.isAnyKidAnnounceTimeStarted();\n const { school, isAnyKidSelected } = this.props;\n\n if (isAnyKidAnnounceTimeStartedFlag && !isAnyKidSelected(school)) {\n //You are trying to announce but there is no child selected.\n toast.error(this.props.t(\"Announce_error_1\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n return;\n }\n if (!isAnyKidAnnounceTimeStartedFlag) {\n toast.error(\n this.props.t(\"Label_Befor_Announce_1\") +\n \" \" +\n school.data[0].DismissalTime +\n this.props.t(\"Label_Befor_Announce_2\"),\n {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n }\n );\n return;\n }\n\n const { latitude, longitude, IsLocationOnCampus } = this.state;\n const { userLoginInfo } = this.props;\n let { AnnounceInRangeRequired } = userLoginInfo;\n //alert(IsLocationOnCampus + \" AnnounceInRangeRequired \" + AnnounceInRangeRequired);\n if (IsLocationOnCampus === false && AnnounceInRangeRequired === true) {\n toast.error(this.props.t(\"Location_Fetch_Error\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n return;\n }\n console.log(school.schoolId + \" location \" + latitude + longitude);\n this.props.showAnnounce(school.schoolId, latitude, longitude);\n };\n\n openDirectionMap = () => {\n const { school } = this.props;\n const { latitude, longitude } = this.state;\n window.open(\n \"https://www.google.com/maps/dir/?api=1&origin=\" +\n latitude +\n \",\" +\n longitude +\n \"&destination=\" +\n school.schoolLat +\n \",\" +\n school.schoolLong\n );\n };\n\n displayCarLineQueue = (schoolCarLine) => {\n console.log(\"displayCarLineQueue\", schoolCarLine);\n // displayCarLineQueue {\"LineLength\": 0, \"PickupModeID\": 5, \"Position\": -2, \"SchoolID\": 14}\n let carLineString = \"\";\n if (schoolCarLine.LineLength >= 0 && schoolCarLine.Position >= 1) {\n if (schoolCarLine.LineLength == 1) {\n carLineString = this.props.t(\"CARLINELENGTHWITHPOSITION\");\n } else {\n carLineString = this.props.t(\"CARLINELENGTHWITHPOSITION_PLURAL\");\n }\n carLineString = carLineString.replace(\n \"{OrderNumber}\",\n schoolCarLine.Position\n );\n carLineString = carLineString.replace(\n \"{NumberOfCars}\",\n schoolCarLine.LineLength\n );\n } else if (schoolCarLine.LineLength >= 0 && schoolCarLine.Position < 1) {\n //Line has length, position is not known\n if (schoolCarLine.LineLength == 1)\n carLineString = this.props.t(\"CARLINELENGTHNOPOSITION\");\n else {\n carLineString = this.props.t(\"CARLINELENGTHNOPOSITION_PLURAL\");\n carLineString = carLineString.replace(\n \"{NumberOfCars}\",\n schoolCarLine.LineLength\n );\n }\n } else {\n //console.log('Message set to 3 \"\"');\n carLineString = \"\";\n }\n\n return (\n // \n // \n // {carLineString}\n // \n // \n // \n // \n // \n
    \n {carLineString}\n {\n this.openDirectionMap();\n }}\n >\n {\" \"}\n \n \n
    \n );\n };\n render() {\n const {\n school,\n userLoginInfo,\n schoolStudentDetials,\n getCarLinePositionResponse,\n } = this.props;\n const {\n IsLocationOnCampus,\n permissionResult,\n latitude,\n longitude,\n isFirstGPSInProgress,\n } = this.state;\n // console.log(\"permissionResult \", permissionResult)\n // console.log(\"IsLocationOnCampus \", IsLocationOnCampus)\n // console.log(\"userLoginInfo.AnnounceInRangeRequired \", userLoginInfo.AnnounceInRangeRequired)\n console.log(\n \"getCarLinePositionResponse \",\n JSON.stringify(getCarLinePositionResponse)\n );\n let schoolCarLine = getCarLinePositionResponse[school.schoolId];\n console.log(\n \"getCarLinePositionResponse userLoginInfo \",\n userLoginInfo.AnnounceInRangeRequired\n );\n console.log(\"getCarLinePositionResponse latitude \", latitude, longitude);\n\n let locationText = \"\";\n if (\n userLoginInfo &&\n userLoginInfo.AnnounceInRangeRequired &&\n latitude == null &&\n longitude == null\n ) {\n if (isFirstGPSInProgress) locationText = \"Fetching location\";\n //this.props.t(\"Fetching location\");\n else locationText = this.props.t(\"schoolCardScr-PERMISSION_REQUIRED\");\n } else if (IsLocationOnCampus === true) {\n locationText = this.props.t(\"schoolCardScr-onCampus\");\n } else {\n locationText = this.props.t(\"schoolCardScr-notInCampus\");\n }\n return (\n
    \n
    \n {\n this.openSchoolDetails(schoolStudentDetials);\n }}\n >\n {schoolStudentDetials.title}\n \n\t\t {/* {schoolStudentDetials.ReunificationEnabled &&

    {this.props.t('emergency_reunification')}

    } */}\n {schoolCarLine && this.displayCarLineQueue(schoolCarLine)}\n
    \n\n
    \n {schoolStudentDetials.data.map((childDetials) => {\n return (\n \n );\n })}\n
    \n\n {!schoolStudentDetials.isLastDayOfSchoolPast ? (\n
    \n
    \n {\n if (\n locationText ==\n this.props.t(\"schoolCardScr-PERMISSION_REQUIRED\")\n ) {\n this.enableGeo();\n }\n }}\n >\n \n {locationText}\n
    \n {/*classname announced is for green background, no need remove it*/}\n
    \n {\n this.AnnounceTapped();\n }}\n >\n {this.props.t(\"schoolCardScr-announce\")}\n \n
    \n
    \n
    \n ) : (\n
    \n \n {this.props.t(\"School_not_Session_Text\")}\n \n
    \n )}\n \n );\n }\n}\nfunction mapStateToProps(state) {\n return {\n userLoginInfo: state.userAccount.userLoginInfo,\n getCarLinePositionResponse: state.student.getCarLinePositionResponse,\n currentLocationPermission: state.userAccount.currentLocationPermission,\n kidsAnnouncedToday: state.student.kidsAnnouncedToday,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doPositionInLineGet: (data) => dispatch(positionInLineGet(data)),\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n };\n}\n\nexport default withTranslation()(\n withRouter(connect(mapStateToProps, mapDispatchToProps)(SchoolCard))\n);\n","import React from \"react\";\nimport Moment from 'moment';\nimport { withTranslation } from \"react-i18next\";\nimport NokidsImage from \"./../assets/dashboard/empty-state.svg\";\nimport \"@fortawesome/fontawesome-free/css/all.css\";\nimport \"owl.carousel/dist/assets/owl.carousel.css\";\nimport \"owl.carousel/dist/assets/owl.theme.default.css\";\nimport { connect } from \"react-redux\";\nimport { MainHeader, MainFooter } from \"../CommonComponents\";\nimport RingLoader from \"react-spinners/ClipLoader\";\nimport \"./styles/style.css\";\n\nimport { showModal, hideModal, logoutUser, setHelpList } from '../../common/actions/userAccount';\nimport {\n\tgetIsTokenValid,\n\tgetIsTokenValidClear,\n\tgetFutureEntries,\n\tgetFutureEntriesClear\n} from \"../../common/actions/userAccount\";\nimport { getSchoolCheckIn } from \"../../common/actions/checkin\";\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\nimport { isAnnounceAllowed, getPickupMode, getModifiedPickupMode } from \"../../helper/utility\";\nimport moment from \"moment\";\nimport {\n\tgetStudentsList,\n\tgetSchoolDetails,\n\tschoolAndKidsFetchDone,\n\tstudentsSchoolListClear,\n\tgetOtherChildrenDetails,\n\tsaveTodaysKidsAnnouncedList,\n\n\tdelegationCancel,\n\tdelegationCancelClear,\n\tremoveMultipleDelegations,\n\tremoveMultipleDelegationsClear,\n\trelatedDelegationsDetails,\n\n\tgetAvailableDispatch,\n\tgetAvailableDispatchClear,\n\tannounceSubmit,\n\tannounceSubmitClear,\n} from \"../../common/actions/students\";\n\n\nimport { createLoadingSelector } from '../../common/reducers/selectors'\nimport Nokids from \"./NoKids\";\nimport 'react-confirm-alert/src/react-confirm-alert.css';\nimport { Slide, toast } from 'react-toastify';\nimport 'react-toastify/dist/ReactToastify.css';\nimport SchoolCard from \"./SchoolCard\";\ntoast.configure()\n\n\nconst loadingSelector = createLoadingSelector([\"is_announce\", \"get_students\", \"get_school_info\", \"get_token_valid\"]);\nconst loadingSelectorFuture = createLoadingSelector([\"get_available_dispatch\", \"get_future_entries\"]);\n\nclass Dashboard extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tSchoolStudentList: [],\n\t\t\tpreviousDelegations: [],\n\t\t\tfutureDelegations: [],\n\t\t\tmodalVisible: false,\n\t\t\tmodalVisibleButton: false,\n\t\t\tkidsAnnouncedToday: [],\n\t\t\tloadDataDone: false,\n\t\t\tnoKidsTitle: \"\",\n\t\t\tnoKidsDetail: \"\",\n\t\t\tselectedKidsSwitches: {},\n\t\t\tstudentId: 0,\n\t\t\tpickupModeId: 0,\n\t\t\tneedRefresh: false,\n\t\t\tdoRefresh: false,\n\t\t\tisUpcomingSelected: true,\n\t\t\tisPreviousSelected: false,\n\t\t\tadsVisible: false,\n\t\t\tlastLoadedStudentList: new Date(),\n\t\t\tusername: \"\",\n\t\t\tpassword: \"\",\n\t\t\topenAnnounceCard: false,\n\t\t\tisActionPerformed: false,\n\t\t\tallAvailableDispatch: {}\n\t\t};\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.checkTokenValid();\n\t\tthis.dosetHelpList();\n\n\t\t//this.getDismissalsList();\n\t}\n\tcomponentWillUnmount() {\n\t\t//this.props.doGetAvailableDispatchClear()\n\t\tthis.props.doGetFutureEntriesClear()\n\t}\n\n\tdosetHelpList = () => {\n\t\tthis.props.dosetHelpList({\n\t\t\tstackType: \"Dashboard\",\n\t\t\tscreen: GLOBAL_CONST.SCREEN_NAMES.PICKUP,\n\t\t\ttitle: this.props.t('pickup_title'),\n\t\t});\n\t}\n\n\tdoRefreshListing = () => {\n\t\tthis.getSchool(this.getStudents);\n\t\tthis.checkInForSchool();\n\t\tthis.fetchOtherChildrenList();\n\t\tthis.getFutureListing();\n\t};\n\tgetDispatchList = () => {\n\t\tconst { studentsList, schoolInfo, doGetAvailableDispatch } = this.props;\n\t\tconst schools = schoolInfo;\n\t\tconst students = studentsList.TodaysStudents;\n\n\t\tfor (let i = 0; i < schools.length; i++) {\n\t\t\tlet schoolstudents = [];\n\t\t\tfor (let j = 0; j < students.length; j++) {\n\t\t\t\t//console.log(\"schools[i].SchoolID : \", schools[i].SchoolID, \"\\n\", \"students[j]: \", students[j])\n\t\t\t\tif (schools[i].SchoolID === students[j].SchoolID && students[j].IsDelegation === false) {\n\t\t\t\t\tschoolstudents.push(students[j].StudentID)\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (schoolstudents.length > 0) {\n\t\t\t\tdoGetAvailableDispatch({ studentIDs: schoolstudents });\n\t\t\t}\n\t\t}\n\n\t\t// const { doGetAvailableDispatch, futureEntries } = this.props;\n\t\t// const { SchoolStudentList } = this.state;\n\t\t// console.log(\"SchoolStudentList::\", SchoolStudentList)\n\t\t// let StudentIDs = [];\n\n\t\t// SchoolStudentList.map((item) =>\n\t\t// item.map((schoolStudentDetials) =>\n\t\t// schoolStudentDetials.data.map((childDetials) => {\n\t\t// if (childDetials.IsDelegation === false)\n\t\t// StudentIDs.push(childDetials.StudentID)\n\t\t// })\n\t\t// )\n\t\t// )\n\t\t// doGetAvailableDispatch({ studentIDs: StudentIDs });\n\t};\n\n\topenCheckinWindow = () => {\n\t\tthis.props.doShowModal({ modalScreenName: 'CheckInQuestions', modalClassName: 'checkInQuestionsModal' })\n\t};\n\n\topenChildAnnounceFor = () => {\n\t\tthis.props.doShowModal({\n\t\t\tmodalScreenName: 'childCardAnnounceFor', params: {\n\t\t\t\tkidsAnnouncedToday: this.state.kidsAnnouncedToday,\n\t\t\t}, modalClassName: 'childCardAnnounceForModal'\n\t\t})\n\t};\n\n\topenCancelThisPickup = (item) => {\n\t\tthis.props.doShowModal({\n\t\t\tmodalScreenName: 'cancelThisPickup', modalClassName: 'cancelThisPickupModal',\n\t\t\tparams: {\n\t\t\t\tcancelpickups: item,\n\t\t\t\tdoCallbackRefresh: this.doRefreshListing\n\t\t\t}\n\n\t\t})\n\t};\n\n\tgetStudents = () => {\n\t\tconst { doGetStudentsList } = this.props;\n\t\tlet currenDate = moment().format(\"MM-DD-YYYY\");\n\t\tdoGetStudentsList({ currenDate }).then(() => {\n\t\t\tthis.getDispatchList()\n\t\t});\n\t};\n\n\tgetFutureListing = () => {\n\t\tconst { doGetFutureEntries } = this.props;\n\t\tdoGetFutureEntries().then(() => {\n\n\t\t})\n\t};\n\n\tgetSchool = (callback) => {\n\t\tconst { doGetSchoolDetails } = this.props;\n\t\tdoGetSchoolDetails().then(() => {\n\t\t\tcallback();\n\t\t});\n\t};\n\n\tcheckTokenValid = () => {\n\t\tconst { doGetIsTokenValid } = this.props;\n\t\tdoGetIsTokenValid();\n\t};\n\n\tfetchOtherChildrenList = () => {\n\t\tconst { doGetOtherChildrenList } = this.props;\n\t\tdoGetOtherChildrenList();\n\t};\n\n\tcheckInForSchool = () => {\n\t\tconst { doGetSchoolCheckIn } = this.props;\n\t\tdoGetSchoolCheckIn({\n\t\t\tcallback: () => {\n\t\t\t\t// if(schools){\n\t\t\t\t// for(var i=0;i {\n\t\tthis.getSchool(this.getStudents);\n\t\tthis.checkInForSchool();\n\t\tthis.fetchOtherChildrenList();\n\t\tthis.getFutureListing();\n\t};\n\n\tdoReload = () => {\n\t\tthis.setState(\n\t\t\t{\n\t\t\t\tlastLoadedStudentList: new Date(),\n\t\t\t},\n\t\t\t() => {\n\t\t\t\tthis.getSchool(this.getStudents);\n\t\t\t}\n\t\t);\n\t};\n\tcomponentDidUpdate() {\n\t\tconst {\n\t\t\terror,\n\t\t\tfetchSchoolInfoDone,\n\t\t\tfetchStudentListDone,\n\t\t\tdoSchoolAndKidsFetchDone,\n\t\t\tisTokenValidResponse,\n\t\t\tdoGetIsTokenValidClear,\n\t\t\tdelegationCancelResponse,\n\t\t\tdoCancelDelegationClear,\n\t\t\tdoRemoveMultipleDelegationsClear,\n\t\t\tdeleteMultipleDelegations,\n\t\t\tavailableDispatch,\n\t\t\tdoGetAvailableDispatchClear,\n\t\t\tsubmitAnnounceResponse,\n\t\t\tdoAnnounceSubmitClear,\n\t\t\tdoStudentsSchoolListClear\n\t\t} = this.props;\n\t\tconst { isActionPerformed, allAvailableDispatch } = this.state;\n\n\t\tif (error) {\n\t\t\ttoast.error(error.Message || error.message,\n\t\t\t\t{ autoClose: 2000, transition: Slide, hideProgressBar: true }\n\t\t\t);\n\t\t\tdoAnnounceSubmitClear();\n\t\t}\n\n\t\tif (submitAnnounceResponse && submitAnnounceResponse.Success) {\n\t\t\ttoast.success(submitAnnounceResponse.Message,\n\t\t\t\t{ autoClose: 2000, transition: Slide, hideProgressBar: true }\n\t\t\t);\n\t\t\tdoAnnounceSubmitClear();\n\t\t\tdoStudentsSchoolListClear();\n\t\t\tthis.setState({ loadDataDone: false, openAnnounceCard: true }, () => {\n\t\t\t\tthis.open\n\t\t\t\tthis.doReload(true);\n\t\t\t});\n\t\t}\n\n\t\tif (availableDispatch) {\n\t\t\tconst newAllAvailableDispatch = { ...allAvailableDispatch }\n\t\t\tif (newAllAvailableDispatch.StudentDismissalMethod)\n\t\t\t\tnewAllAvailableDispatch.StudentDismissalMethod = newAllAvailableDispatch.StudentDismissalMethod.concat(availableDispatch.StudentDismissalMethod)\n\t\t\telse\n\t\t\t\tnewAllAvailableDispatch.StudentDismissalMethod = availableDispatch.StudentDismissalMethod\n\n\t\t\tif (newAllAvailableDispatch.MethodsAvailableToEveryone)\n\t\t\t\tnewAllAvailableDispatch.MethodsAvailableToEveryone = newAllAvailableDispatch.MethodsAvailableToEveryone.concat(availableDispatch.MethodsAvailableToEveryone)\n\t\t\telse\n\t\t\t\tnewAllAvailableDispatch.MethodsAvailableToEveryone = availableDispatch.MethodsAvailableToEveryone\n\n\t\t\tthis.setState({ allAvailableDispatch: newAllAvailableDispatch })\n\t\t\tdoGetAvailableDispatchClear()\n\t\t}\n\n\t\tif (fetchStudentListDone === true && fetchSchoolInfoDone === true) {\n\t\t\tthis.setState(\n\t\t\t\t{ loadDataDone: true, isPullRefresh: false, SchoolStudentList: [] },\n\t\t\t\tthis.buildList\n\t\t\t);\n\t\t\tdoSchoolAndKidsFetchDone();\n\t\t}\n\n\t\tif (isTokenValidResponse) {\n\t\t\tif (isTokenValidResponse.Success === false) {\n\t\t\t\tconst { doLogoutUser } = this.props;\n\t\t\t\tdoLogoutUser();\n\t\t\t\tthis.props.history.push('/');\n\t\t\t} else {\n\t\t\t\tthis.initialLoad();\n\t\t\t}\n\t\t}\n\t\tdoGetIsTokenValidClear();\n\t\tif (error) {\n\t\t\ttoast.error(error.Message || error.message, { autoClose: 2000, transition: Slide, hideProgressBar: true })\n\n\t\t} else if (delegationCancelResponse && isActionPerformed) {\n\t\t\tthis.setState({ isActionPerformed: false });\n\t\t\ttoast.success(delegationCancelResponse.Message || delegationCancelResponse.Message, { autoClose: 2000, transition: Slide, hideProgressBar: true })\n\t\t\tdoCancelDelegationClear();\n\t\t\tthis.doRefreshListing();\n\t\t\tthis.setState({ displayConfirmation: false });\n\t\t} else if (deleteMultipleDelegations && isActionPerformed) {\n\t\t\tthis.setState({ isActionPerformed: false });\n\t\t\ttoast.success(deleteMultipleDelegations.Message || deleteMultipleDelegations.Message, { autoClose: 2000, transition: Slide, hideProgressBar: true })\n\t\t\tdoRemoveMultipleDelegationsClear();\n\t\t\tthis.doRefreshListing();\n\t\t\tthis.setState({ displayConfirmation: false });\n\t\t}\n\n\t}\n\n\tselectedSwitchCallback = (chidInfo, isSelected) => {\n\t\tlet selectedKidsSwitches = { ...this.state.selectedKidsSwitches };\n\t\tlet selectedKidsSwitchesSchool = selectedKidsSwitches[chidInfo.SchoolID];\n\t\tif (!selectedKidsSwitchesSchool) selectedKidsSwitchesSchool = {};\n\t\tif (isSelected === true) {\n\t\t\tselectedKidsSwitchesSchool[chidInfo.StudentID] = chidInfo;\n\t\t\t/**WQ:04/11/2020\n\t\t\t * Show message if parent select child for announce\n\t\t\t */\n\t\t\ttoast.error(`${this.props.t(\"Announce_For_Text\")} ${chidInfo.Firstname} ${chidInfo.Lastname\n\t\t\t\t}`, { autoClose: 2000, transition: Slide, hideProgressBar: true })\n\t\t} else {\n\t\t\tdelete selectedKidsSwitchesSchool[chidInfo.StudentID];\n\t\t\t/**WQ:04/11/2020\n\t\t\t * Show message if parent uncheck child for announce\n\t\t\t */\n\t\t\ttoast.error(`${this.props.t(\"Are_Not_Announcing_For\")} ${chidInfo.Firstname\n\t\t\t\t} ${chidInfo.Lastname}`\n\t\t\t\t, { autoClose: 2000, transition: Slide, hideProgressBar: true })\n\t\t}\n\n\t\tselectedKidsSwitches[chidInfo.SchoolID] = selectedKidsSwitchesSchool;\n\t\tconsole.log(\n\t\t\t\"selectedSwitchCallback result \",\n\t\t\tJSON.stringify(selectedKidsSwitches)\n\t\t);\n\t\tthis.setState({ selectedKidsSwitches });\n\t\t//alert(JSON.stringify(selectedKidsSwitchesSchool));\n\t};\n\n\tisAnyKidSelected = (school) => {\n\t\tlet { selectedKidsSwitches } = this.state;\n\t\tlet selectedKidsSwitchesSchool = selectedKidsSwitches[school.schoolId];\n\t\tif (!selectedKidsSwitchesSchool) selectedKidsSwitchesSchool = {};\n\t\t// console.log(\"isAnyKidSelected \" + JSON.stringify(selectedKidsSwitchesSchool));\n\t\t// console.log(\n\t\t// `isAnyKidSelected ${Object.keys(selectedKidsSwitchesSchool).length}`\n\t\t// );\n\t\treturn Object.keys(selectedKidsSwitchesSchool).length > 0;\n\t};\n\n\tbuildList = () => {\n\t\tlet { selectedKidsSwitches } = this.state;\n\t\tconst { studentsList, schoolInfo } = this.props;\n\t\tconst schools = schoolInfo;\n\t\tconst students = studentsList.TodaysStudents;\n\t\tconst kidsAnnouncedToday = [];\n\t\tconst SchoolStudentList = [];\n\t\tfor (let i = 0; i < schools.length; i++) {\n\t\t\tlet schoolstudents = [];\n\t\t\tlet selectedKidsSwitchesSchool = {};\n\t\t\tconst LastDayOfSchool = new Date(schools[i].Dates.LastDayOfSchool);\n\t\t\tconst isLastDayOfSchoolPast = moment(LastDayOfSchool).isBefore(moment());\n\n\t\t\tfor (let j = 0; j < students.length; j++) {\n\t\t\t\tif (schools[i].SchoolID === students[j].SchoolID) {\n\t\t\t\t\tstudents[j].isPickingUpToday = students[j].PickupModeAllowsAnnounce;\n\t\t\t\t\tstudents[j].isLastDayOfSchoolPast = isLastDayOfSchoolPast;\n\t\t\t\t\tschoolstudents.push(students[j]);\n\t\t\t\t\tif (\n\t\t\t\t\t\tisAnnounceAllowed(\n\t\t\t\t\t\t\tstudents[j].DismissalTime,\n\t\t\t\t\t\t\tstudents[j].PickupModeAllowsAnnounce,\n\t\t\t\t\t\t\tstudents[j].StatusID,\n\t\t\t\t\t\t\tisLastDayOfSchoolPast\n\t\t\t\t\t\t)\n\t\t\t\t\t)\n\t\t\t\t\t\tselectedKidsSwitchesSchool[students[j].StudentID] = students[j];\n\n\t\t\t\t\tif (students[j].StatusID === GLOBAL_CONST.PICKUP_STATUS.ANNOUNCED) {\n\t\t\t\t\t\tkidsAnnouncedToday.push(students[j]);\n\t\t\t\t\t}\n\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tschoolstudents = schoolstudents.sort((a, b) => (a.Firstname.toLowerCase() > b.Firstname.toLowerCase()) ? 1 : ((b.Firstname.toLowerCase() > a.Firstname.toLowerCase()) ? -1 : 0))\n\n\t\t\tselectedKidsSwitches[schools[i].SchoolID] = selectedKidsSwitchesSchool;\n\t\t\tif (schoolstudents.length > 0) {\n\t\t\t\tlet sectiondata = {\n\t\t\t\t\tschoolId: schools[i].SchoolID,\n\t\t\t\t\taddress: schools[i].Address,\n\t\t\t\t\tschoolzip: schools[i].State + \" \" + schools[i].Zip,\n\t\t\t\t\ttitle: schools[i].Name,\n\t\t\t\t\tReunificationEnabled: schools[i].ReunificationEnabled,\n\t\t\t\t\tschoolLat: schools[i].Coordinates.latitude,\n\t\t\t\t\tschoolLong: schools[i].Coordinates.longitude,\n\t\t\t\t\tAnnounceDistance: schools[i].AnnounceDistance,\n\t\t\t\t\tdata: schoolstudents,\n\t\t\t\t\tisLastDayOfSchoolPast,\n\t\t\t\t};\n\t\t\t\tSchoolStudentList.push(sectiondata);\n\t\t\t}\n\t\t}\n\n\t\tconst fulldata = [];\n\t\tlet previousDelegations = [],\n\t\t\tfutureDelegations = [];\n\t\tconst sortedSchoolStudentList = SchoolStudentList.sort((a, b) => (a.title.toLowerCase() > b.title.toLowerCase()) ? 1 : ((b.title.toLowerCase() > a.title.toLowerCase()) ? -1 : 0))\n\t\tif (sortedSchoolStudentList.length > 0) {\n\t\t\tfulldata.push(sortedSchoolStudentList);\n\t\t} else {\n\t\t\tif (studentsList && studentsList.PriorAndFutureDelegations) {\n\t\t\t\tconst PriorAndFutureDelegations = studentsList.PriorAndFutureDelegations;\n\t\t\t\tpreviousDelegations = PriorAndFutureDelegations.filter(\n\t\t\t\t\t(item) => item.Last != null && item.NextDelegation === null\n\t\t\t\t);\n\t\t\t\tfutureDelegations = PriorAndFutureDelegations.filter(\n\t\t\t\t\t(item) => item.NextDelegation != null\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\tthis.setState(\n\t\t\t{\n\t\t\t\tSchoolStudentList: sortedSchoolStudentList,\n\t\t\t\tpreviousDelegations,\n\t\t\t\tfutureDelegations,\n\t\t\t\tselectedKidsSwitches,\n\t\t\t\tkidsAnnouncedToday,\n\t\t\t\tmodalVisibleButton: kidsAnnouncedToday.length > 0,\n\t\t\t},\n\t\t\tthis.checkToShowAnnounceCards\n\t\t);\n\t\tthis.props.doSaveTodaysKidsAnnouncedList(kidsAnnouncedToday);\n\t\tthis.setMessage();\n\t};\n\tcheckToShowAnnounceCards = () => {\n\t\tconst { openAnnounceCard } = this.state;\n\t\tif (openAnnounceCard === true) {\n\t\t\tthis.openChildAnnounceFor()\n\t\t\tthis.setState({ openAnnounceCard: false }, this.toggleAnnounceButton);\n\t\t}\n\t};\n\n\ttoggleAnnounceButton() {\n\t\tthis.setState({\n\t\t\tmodalVisible: true,\n\t\t\tmodalVisibleButton: true,\n\t\t});\n\t}\n\n\ttoggleModal(visible) {\n\t\tthis.setState({ modalVisible: visible });\n\t}\n\n\tdoAnnounce = (schoolId, latitude, longitude) => {\n\t\tlet { selectedKidsSwitches } = this.state;\n\t\tlet selectedKidsSwitchesSchool = selectedKidsSwitches[schoolId];\n\t\tif (!selectedKidsSwitchesSchool) selectedKidsSwitchesSchool = {};\n\t\t// if (Object.keys(selectedKidsSwitchesSchool).length === 0) return;\n\n\t\t//alert(\"selectedKidsSwitches \" + JSON.stringify(selectedKidsSwitchesSchool));\n\t\t//return;\n\n\t\tconst { doAnnounceSubmit } = this.props;\n\t\tif (Object.keys(selectedKidsSwitchesSchool).length === 0) {\n\t\t\talert(this.props.t(\"Select_kid_Announce\"));\n\t\t\treturn;\n\t\t}\n\t\tconsole.log(\n\t\t\t\"selectedKidsSwitchesSchool \" + JSON.stringify(selectedKidsSwitchesSchool)\n\t\t);\n\n\t\tlet params = {\n\t\t\tSchoolId: schoolId,\n\t\t\tLatitude: latitude,\n\t\t\tLongitude: longitude,\n\t\t};\n\t\tlet Students = [];\n\t\tfor (var key in selectedKidsSwitchesSchool) {\n\t\t\tconst student = selectedKidsSwitchesSchool[key];\n\t\t\tif (student.SchoolID === schoolId) {\n\t\t\t\tStudents.push({\n\t\t\t\t\tStudentId: student.StudentID,\n\t\t\t\t\tIsDelegated: student.IsDelegation,\n\t\t\t\t\tPickupModeId: student.PickupModeID,\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\tparams.Students = Students;\n\t\tconsole.log(\"announce params \", params);\n\t\tdoAnnounceSubmit(params);\n\t};\n\n\tsetMessage = () => {\n\t\tlet isDelegate = false;\n\t\tlet { noKidsTitle, noKidsDetail } = this.state;\n\t\tif (isDelegate) {\n\t\t\tnoKidsTitle = this.props.t('dashBoardScr-kidsTitle');\n\t\t\tnoKidsDetail = this.props.t('dashBoardScr-kidsDetail');\n\t\t} else {\n\t\t\tnoKidsTitle = this.props.t('dashBoardScr-noKidsTitle');\n\t\t\tnoKidsDetail = this.props.t('dashBoardScr-noKidsDetail');\n\t\t}\n\n\t\tthis.setState({ noKidsTitle, noKidsDetail });\n\t};\n\n\tshowEmpty = () => {\n\t\tconst {\n\t\t\tSchoolStudentList,\n\t\t\tpreviousDelegations,\n\t\t\tfutureDelegations,\n\t\t\tloadDataDone,\n\t\t\tnoKidsTitle,\n\t\t\tnoKidsDetail,\n\t\t} = this.state;\n\t\tlet noKidsData = { noKidsTitle, noKidsDetail }\n\n\t\tif (\n\t\t\tloadDataDone &&\n\t\t\tSchoolStudentList.length === 0 &&\n\t\t\tpreviousDelegations.length === 0 &&\n\t\t\tfutureDelegations.length === 0\n\t\t)\n\t\t\treturn (\n\t\t\t\t\n\n\t\t\t);\n\t};\n\topenContactSupportModal = () => {\n\t\tthis.props.doShowModal({\n\t\t\tmodalScreenName: \"ContactSupport\",\n\t\t\tmodalClassName: \"contactSupportModal sidebar-modal right\",\n\t\t});\n\t};\n\tshowListing = () => {\n\t\tconst { isFetching, isFetchingFuture, futureEntries } = this.props;\n\t\tconst {\n\t\t\tSchoolStudentList,\n\t\t\tpreviousDelegations,\n\t\t\tfutureDelegations,\n\t\t\tloadDataDone,\n\t\t} = this.state;\n\n\t\tif (\n\t\t\t!isFetching &&\n\t\t\tloadDataDone &&\n\t\t\t(SchoolStudentList.length > 0 ||\n\t\t\t\tpreviousDelegations.length > 0 ||\n\t\t\t\tfutureDelegations.length > 0)\n\t\t) {\n\t\t\treturn (\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t{(previousDelegations.length > 0 || futureDelegations.length > 0) &&\n\t\t\t\t\t\t\tSchoolStudentList.length === 0 ? (\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    {this.props.t('No_Delegation')}
    \n\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t { this.openContactSupportModal() }}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{this.props.t(\"Need_Help\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t

    {this.props.t('Previous_label')}

    \n\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t{this.renderPriorAndFutureListing(previousDelegations, \"previousDelegations\")}\n\t\t\t\t\t\t\t\t\t{previousDelegations.length === 0 &&

    {this.props.t(\"NoRecord\")}

    }\n\n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t

    {this.props.t('DasboardScr_upcoming_changes')}

    \n\t\t\t\t\t\t\t\t\t
    \n\n\n\t\t\t\t\t\t\t\t\t{this.renderPriorAndFutureListing(futureDelegations, \"futureDelegations\")}\n\t\t\t\t\t\t\t\t\t{futureDelegations.length === 0 &&


    {this.props.t(\"noUpcomingChangesText\")}
    }\n\n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t) : (\n\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t

    {this.props.t('DasboardScr_TodaysDismissal')}

    \n\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t{this.displayStudentList()}\n\n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t

    {this.props.t('DasboardScr_upcoming_changes')}

    \n\t\t\t\t\t\t\t\t\t
    \n\n\n\t\t\t\t\t\t\t\t\t{isFetchingFuture &&\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t{!isFetchingFuture && this.renderFutureEntries()}\n\n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t)}\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t)\n\t\t} else if (isFetching) {\n\t\t\treturn (
    \n\t\t\t\t\n\t\t\t
    )\n\t\t}\n\t}\n\n\n\tdisplayStudentList = () => {\n\t\tconst { SchoolStudentList, selectedKidsSwitches } = this.state;\n\t\tif (!SchoolStudentList || SchoolStudentList.length === 0) return\n\t\tconst studentList = []\n\n\t\tfor (let i = 0; i < SchoolStudentList.length; i++) {\n\t\t\tstudentList.push()\n\t\t}\n\t\treturn (\n\n\t\t\t
    \n\t\t\t\t{studentList}\n\t\t\t
    \n\t\t);\n\t}\n\n\tisParent = (studentid) => {\n\t\tconst { studentsList } = this.props;\n\t\tconst match = studentsList.TodaysStudents.filter((item) => {\n\t\t\treturn item.StudentID === studentid && item.IsDelegation === false\n\t\t})\n\t\treturn match.length > 0\n\t}\n\n\n\trenderFutureEntries = () => {\n\t\tconst { futureEntries } = this.props\n\t\tconst { allAvailableDispatch } = this.state;\n\t\tconst views = [];\n\t\tfor (var i = 0; i < futureEntries.length; i++) {\n\t\t\tconst item = futureEntries[i]\n\t\t\tlet defaultPickup, newPickup;\n\t\t\t//console.log(\"item future\", item)\n\t\t\tif (Object.keys(allAvailableDispatch).length > 0) {\n\t\t\t\tdefaultPickup = getPickupMode(allAvailableDispatch, item)\n\t\t\t\tnewPickup = getModifiedPickupMode(allAvailableDispatch, item)\n\t\t\t}\n\t\t\tif (this.isParent(item.StudentID)) {\n\t\t\t\tviews.push(
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t

    {item.Name}

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{Moment(item.CalendarDate).format('MMMM DD, YYYY')}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t{this.props.t('DasboardScr_defaultPickupMode')}: {defaultPickup}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t
    \n\n\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t{this.props.t('DasboardScr_updatedPickupMode')}: {\" \"} {\n\t\t\t\t\t\t\t\t\t\tnewPickup\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t{/* \n {\n newPickup\n }\n\n\n */}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{/*
    \n \n {\n newPickup\n }\n\n\n \n
    */}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t{this.props.t('DasboardScr_changedBy')}: {item.ChangedByName}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t
    \n\n\n\t\t\t\t\t
    \n\t\t\t\t
    \n\n\t\t\t\t)\n\t\t\t}\n\n\t\t}\n\t\tif (futureEntries.length === 0 || views.length === 0) {\n\t\t\treturn

    {this.props.t(\"noUpcomingChangesText\")}

    \n\n\t\t} else {\n\t\t\treturn views\n\t\t}\n\n\t}\n\n\trenderPriorAndFutureListing = (items, listTitle) => {\n\t\tconst views = [];\n\t\tlet subKey = listTitle == \"previousDelegations\" ? \"PD\" : \"FD\"\n\t\tfor (var i = 0; i < items.length; i++) {\n\t\t\tconst item = items[i]\n\t\t\tviews.push(
    \n\t\t\t\t
    \n\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t

    {item.firstname} {item.lastname}

    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{item.NextDelegation != null ? moment(item.NextDelegation).format(\"DD MMM YYYY\") : moment(item.Last).format(\"DD MMM YYYY\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{item.SchoolName}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\n\t\t\t\t
    \n\t\t\t
    )\n\t\t}\n\t\treturn views\n\t}\n\trender() {\n\t\tconst { userLoginInfo, displayAds } = this.props;\n\t\treturn (\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t

    {this.props.t('dashBoardScr-hello')} {userLoginInfo ? userLoginInfo.firstName : \"\"}

    \n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t{this.props.t('DasboardScr_welcomeBackTo')} Pikmykid\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t{moment().format(\"MMM DD, YYYY\")}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t{this.showListing()}\n\t\t\t\t{this.state.modalVisibleButton === true &&\n\t\t\t\t\t
    {\n\t\t\t\t\t\t\tthis.openChildAnnounceFor()\n\t\t\t\t\t\t}}\n\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tbottom: displayAds === true ? '72px' : '5px'\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t
    \n\n\t\t\t\t}\n\t\t\t\t{this.showEmpty()}\n\t\t\t\t\n\t\t\t
    \n\t\t);\n\t}\n}\n\nfunction mapStateToProps(state) {\n\treturn {\n\t\tstudentsList: state.student.studentsList,\n\t\tschoolInfo: state.student.schoolInfo,\n\t\terror: state.student.error,\n\t\tfetchStudentListDone: state.student.fetchStudentListDone,\n\t\tfetchSchoolInfoDone: state.student.fetchSchoolInfoDone,\n\t\tuserLoginInfo: state.userAccount.userLoginInfo,\n\t\tisTokenValidResponse: state.userAccount.isTokenValidResponse,\n\t\tschoolParentCheckIn: state.checkin.schoolParentCheckIn,\n\t\tenvironment: state.userAccount.environment,\n\t\tisFetching: loadingSelector(state),\n\t\tisFetchingFuture: loadingSelectorFuture(state),\n\t\tfutureEntries: state.userAccount.futureEntries,\n\t\tdelegationCancelResponse: state.student.delegationCancelResponse,\n\t\trelatedDelegations: state.student.relatedDelegations,\n\t\tdeleteMultipleDelegations: state.student.deleteMultipleDelegations,\n\t\tsubmitAnnounceResponse: state.student.submitAnnounceResponse,\n\t\tsetHelpListData: state.userAccount.setHelpListData,\n\n\t\tavailableDispatch: state.student.availableDispatch,\n\t\tdisplayAds: state.userAccount.displayAds,\n\t};\n}\nfunction mapDispatchToProps(dispatch) {\n\treturn {\n\t\tdoGetStudentsList: (data) => dispatch(getStudentsList(data)),\n\t\tdoGetSchoolDetails: () => dispatch(getSchoolDetails()),\n\t\tdoSchoolAndKidsFetchDone: () => dispatch(schoolAndKidsFetchDone()),\n\t\tdoStudentsSchoolListClear: () => dispatch(studentsSchoolListClear()),\n\t\tdoGetIsTokenValid: (data) => dispatch(getIsTokenValid(data)),\n\t\tdoGetIsTokenValidClear: () => dispatch(getIsTokenValidClear()),\n\t\tdoGetOtherChildrenList: () => dispatch(getOtherChildrenDetails()),\n\t\tdoSaveTodaysKidsAnnouncedList: (data) =>\n\t\t\tdispatch(saveTodaysKidsAnnouncedList(data)),\n\t\tdoGetSchoolCheckIn: (data) => dispatch(getSchoolCheckIn(data)),\n\t\tdoGetFutureEntries: (data) => dispatch(getFutureEntries(data)),\n\t\tdoGetFutureEntriesClear: () => dispatch(getFutureEntriesClear()),\n\t\tdoRelatedDelegationsDetails: (data) =>\n\t\t\tdispatch(relatedDelegationsDetails(data)),\n\t\tdoRemoveMultipleDelegations: (data) =>\n\t\t\tdispatch(removeMultipleDelegations(data)),\n\t\tdoRemoveMultipleDelegationsClear: () =>\n\t\t\tdispatch(removeMultipleDelegationsClear()),\n\t\tdocancelDelegation: (data) => dispatch(delegationCancel(data)),\n\t\tdoCancelDelegationClear: () => dispatch(delegationCancelClear()),\n\t\tdoLogoutUser: () => dispatch(logoutUser()),\n\t\tdoShowModal: (data) => dispatch(showModal(data)),\n\t\tdoHideModal: () => dispatch(hideModal()),\n\t\tdosetHelpList: (data) => dispatch(setHelpList(data)),\n\t\tdoGetAvailableDispatch: (data) => dispatch(getAvailableDispatch(data)),\n\t\tdoGetAvailableDispatchClear: () => dispatch(getAvailableDispatchClear()),\n\t\tdoAnnounceSubmit: (data) => dispatch(announceSubmit(data)),\n\t\tdoAnnounceSubmitClear: () => dispatch(announceSubmitClear()),\n\n\t};\n}\nexport default withTranslation()(connect(mapStateToProps, mapDispatchToProps)(Dashboard));\n","import React from \"react\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { dom } from \"@fortawesome/fontawesome-svg-core\";\nimport { faSchool } from \"@fortawesome/free-solid-svg-icons\";\nimport { BootstrapModal } from \"../CommonComponents\";\nimport \"../../../node_modules/bootstrap/dist/css/bootstrap.min.css\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport {\n showModal, hideModal, setHelpList, setOldHelpSetting,\n saveLocationPermission,\n fetchDistance\n} from \"../../common/actions/userAccount\";\nimport GLOBAL_CONST from '../../helper/AppConstants';\nimport { getSiteAccessPermission } from '../../helper/utility';\nimport {\n getSchoolPickupTimeDetails,\n getSchoolPickupTimeDetailsClear,\n} from \"../../common/actions/school\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\nimport RingLoader from \"react-spinners/ClipLoader\";\nimport { withTranslation } from \"react-i18next\";\nimport { geolocated } from \"react-geolocated\";\n\nconst loadingSelector = createLoadingSelector([\"get_school_pickup_time\"]);\n\nconst DAYS = [\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\",\n];\n\nclass DismissalTimes extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n data: [],\n latitude: null,\n longitude: null,\n etaInfo: 'Loading...'\n };\n\n this.getSchoolDismisal();\n //console.log(\"----------<\",navigator.geolocation)\n }\n\n async componentDidMount() {\n // const res = await getSiteAccessPermission();\n // console.log(\"componentDidMount result \", res)\n // this.props.doSaveLocationPermission(res);\n //if (res == 'granted' || res == 'prompt' || res == 'empty') {\n this.getUserLocation()\n this.fetchETA()\n this.myETAInterval = setInterval(() => this.fetchETA, 80000);\n // } else {\n // if (this.myETAInterval) {\n // clearInterval(this.myETAInterval);\n // this.myETAInterval = null;\n // }\n\n // }\n this.dosetHelpList()\n }\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"Dashboard\",\n screen: GLOBAL_CONST.SCREEN_NAMES.SCHOOL_DETAILS,\n title: this.props.t('schoolDetailsScr-schoolDetail')\n });\n }\n getUserLocation = () => {\n navigator.geolocation.getCurrentPosition((position) => {\n console.log(\"*** position: \", position);\n this.setState({\n latitude: position.coords.latitude,\n longitude: position.coords.longitude,\n });\n },\n (error) => {\n\n });\n }\n\n componentWillUnmount() {\n if (this.myETAInterval) {\n clearInterval(this.myETAInterval);\n this.myETAInterval = null;\n }\n }\n\n fetchETA = () => {\n const { doFetchDistance } = this.props\n const { school } = this.props;\n navigator.geolocation.getCurrentPosition((position) => {\n const latitude = position.coords.latitude\n const longitude = position.coords.longitude\n doFetchDistance({\n deviceLat: latitude,\n deviceLon: longitude,\n schoolLatitude: school.schoolLat,\n schoolLongitude: school.schoolLong,\n callback: this.processETA\n })\n },\n (error) => {\n console.log(error)\n });\n\n }\n setSchoolDetailsHelp = () => {\n this.openHelpModal()\n }\n\n setDismissalsTimesHelp = () => {\n this.props.dosetHelpList({\n stackType: \"Dashboard\",\n screen: GLOBAL_CONST.SCREEN_NAMES.SCHOOL_DISMISSAL_TIME,\n title: this.props.t('dismissalTimeScr-schoolTime')\n });\n setTimeout(this.openHelpModal, 200)\n }\n\n openHelpModal = () => {\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n }\n });\n }\n\n\n getSchoolDismisal = () => {\n const { doGetSchoolPickupTimeDetails } = this.props;\n const { school } = this.props;\n doGetSchoolPickupTimeDetails({\n SchoolID: school.schoolId,\n IncludeDismissalTimes: true,\n });\n };\n\n getGradeViews = (gradeData, dayId) => {\n var views = [];\n for (var j = 0; j < gradeData.length; j++) {\n views.push(\n
    \n

    {gradeData[j].grade}

    \n

    {gradeData[j].pickupTime}

    \n
    \n );\n }\n return views;\n };\n\n buildDayList = () => {\n const { data } = this.state;\n const views = [];\n for (var i = 0; i < data.length; i++) {\n const item = data[i];\n views.push(\n
    \n
    {item.day}
    \n {this.getGradeViews(item.gradeData, item.id)}\n
    \n );\n }\n return views;\n };\n\n processETA = (response) => {\n const { school } = this.props;\n let output;\n let etaRoute;\n\n if (response && response.routes) etaRoute = response.routes[0];\n // console.log(\"processETA etaRoute \" + JSON.stringify(etaRoute)) \n if (etaRoute) {\n const eta = Math.ceil(parseInt(etaRoute.duration) / 60);\n console.log(`processETA duration ${school.title} ${eta} `)\n let etaHours = '';\n let etaMinutes = '';\n if (eta > 60) {\n\n etaMinutes = eta % 60;\n etaHours = Math.floor(eta / 60);\n console.log(`processETA if ******** ${school.title} eta=${eta} etaMinutes=${etaMinutes} etaHours=${etaHours}`)\n output = '';\n if (etaHours !== 0) {\n output = etaHours;\n output += \" \";\n output += etaHours === 1 ? this.props.t('ETA_HOUR') : this.props.t('ETA_HOURS');\n output += \" \";\n }\n if (etaHours !== 0 && etaMinutes !== 0) {\n output += this.props.t('AND') + \" \";\n }\n if (etaMinutes !== 0) {\n output += etaMinutes;\n output += \" \";\n output += etaMinutes === 1 ? this.props.t('ETA_MINUTE') : this.props.t('ETA_MINUTES');\n output += \" \";\n }\n console.log(`processETA if ******** ${school.title} eta=${eta} etaMinutes=${etaMinutes} etaHours=${etaHours}`)\n } else {\n console.log(`processETA else ******** ${school.title} eta=${eta} etaMinutes=${etaMinutes} `)\n etaMinutes = eta % 60;\n\n if (eta > 0 && etaMinutes !== 0) {\n output = eta;\n output += \" \";\n output += etaMinutes === 1 ? this.props.t('ETA_MINUTE') : this.props.t('ETA_MINUTES');\n output += \" \";\n } else if (eta === 0) {\n output = this.props.t(\"schoolCardScr-onCampus\")\n }\n }\n } else {\n output = 'No Routes'\n }\n\n let message\n if (!output) {\n message = 'Loading...';\n } else if (output === this.props.t(\"schoolCardScr-onCampus\")) {\n message = output;\n } else if (output === 'No Routes') {\n message = this.props.t('ETA_NO_ROUTES_FOUND');\n } else {\n message = this.props.t('ETA_PREFIX') + \" \";\n message += output + \" \";\n message += this.props.t('ETA_SUFFIX');\n }\n\n\n // console.log(etaInfo)\n this.setState({ etaInfo: message })\n }\n goToMap = () => {\n const { school } = this.props;\n const { latitude, longitude } = this.state\n window.open(\"https://www.google.com/maps/dir/?api=1&origin=\" + latitude + \",\" + longitude + \"&destination=\" + school.schoolLat + \",\" + school.schoolLong);\n };\n\n openMapWithoutSource = () => {\n const { school } = this.props;\n const { latitude, longitude } = this.state\n window.open(\"https://www.google.com/maps/dir/?api=1&destination=\" + school.schoolLat + \",\" + school.schoolLong);\n };\n\n directionMessage = () => {\n const { school } = this.props;\n const { etaInfo, latitude, longitude } = this.state\n if (latitude != null && longitude != null) {\n return (\n
    \n {etaInfo}\n {etaInfo !== \"Loading...\" && }\n
    \n );\n } else {\n
    \n }\n };\n\n renderDismissalTimes = () => {\n const { school, isFetching } = this.props;\n return (\n
    \n
    \n
    \n
    \n

    \n {this.props.t(\"schoolDetailsScr-schoolDetailTitle\")}\n

    \n \n
    \n\n {\n this.closeModal();\n }}\n >\n
    \n\n\n
    \n
    \n
    \n
    \n
    { this.openMapWithoutSource() }}>\n

    {school.title}

    \n {` ${school.address} ${school.schoolzip ? school.schoolzip : \"\"}`}\n
    \n {this.directionMessage()}\n\n
    \n { this.openMapWithoutSource() }} />\n\n
    \n
    \n

    {this.props.t(\"schoolDetailsScr-dismSchedule\")}

    \n \n
    \n\n {this.buildDayList()}\n
    \n
    \n
    {this.props.t(\"dismissalTimeScr-pickerTime\")}
    \n
    \n
    \n \n
    \n
    \n );\n };\n\n buildDismissal = () => {\n const { schoolDismissalDetails } = this.props;\n const { studentsList } = this.props;\n const { school } = this.props;\n const todayStudentsList = studentsList.TodaysStudents;\n const gradeToShows = [];\n for (let j = 0; j < todayStudentsList.length; j++) {\n if (school.schoolId === todayStudentsList[j].SchoolID) {\n if (!gradeToShows.includes(todayStudentsList[j].GradeName))\n gradeToShows.push(todayStudentsList[j].GradeName);\n }\n }\n\n const data = [];\n for (var i = 0; i < schoolDismissalDetails.length; i++) {\n const record = schoolDismissalDetails[i];\n const item = {\n id: i,\n day: DAYS[record.DayOfWeek],\n };\n const gradeData = [];\n for (var j = 0; j < record.GradeNames.length; j++) {\n if (gradeToShows.includes(record.GradeNames[j])) {\n gradeData.push({\n grade: record.GradeNames[j],\n pickupTime: record.DisplayedToUserTime_Local,\n });\n }\n }\n if (gradeData.length > 0) {\n item.gradeData = gradeData;\n data.push(item);\n }\n }\n this.setState({ data });\n };\n\n componentDidUpdate() {\n const {\n schoolDismissalDetails,\n doGetSchoolPickupTimeDetailsClear,\n } = this.props;\n\n\n if (schoolDismissalDetails != null) {\n this.buildDismissal();\n doGetSchoolPickupTimeDetailsClear();\n }\n }\n\n closeModal = () => {\n this.props.doHideModal();\n this.props.doSetOldHelpSetting()\n };\n\n render() {\n return this.renderDismissalTimes();\n }\n}\n\n\nfunction mapStateToProps(state) {\n // console.log(\"CurrentLocation::\", state.userAccount.currentLocationPermission)\n return {\n\n schoolDismissalDetails: state.school.schoolDismissalDetails,\n isFetching: loadingSelector(state),\n error: state.student.error,\n studentsList: state.student.studentsList,\n currentLocationPermission: state.userAccount.currentLocationPermission,\n\n setHelpListData: state.userAccount.setHelpListData,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n doGetSchoolPickupTimeDetails: (data) =>\n dispatch(getSchoolPickupTimeDetails(data)),\n doGetSchoolPickupTimeDetailsClear: () =>\n dispatch(getSchoolPickupTimeDetailsClear()),\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doFetchDistance: (data) => dispatch(fetchDistance(data)),\n doSetOldHelpSetting: () => dispatch(setOldHelpSetting()),\n doSaveLocationPermission: (data) => dispatch(saveLocationPermission(data)),\n };\n}\n\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(DismissalTimes)\n);\n","import {\n GET_SCHOOL_PICKUP_TIME_START,\n GET_SCHOOL_PICKUP_TIME_SUCCESS,\n GET_SCHOOL_PICKUP_TIME_FAILED,\n GET_SCHOOL_PICKUP_MODE_START,\n GET_SCHOOL_PICKUP_MODE_SUCCESS,\n GET_SCHOOL_PICKUP_MODE_FAILED,\n GET_ABSENT_REASON_START,\n GET_ABSENT_REASON_SUCCESS,\n GET_ABSENT_REASON_FAILED,\n GET_SCHOOL_AFTER_SCHOOL_START,\n GET_SCHOOL_AFTER_SCHOOL_SUCCESS,\n GET_SCHOOL_AFTER_SCHOOL_FAILED,\n GET_SCHOOL_PICKUP_TIME_CLEAR,\n GET_HELP_START,\n GET_HELP_SUCCESS,\n GET_HELP_FAILED,\n GET_HELP_CLAER,\n} from \"./schoolActionType\";\n\nimport {\n GetSchoolPickupTimes,\n GetSchoolPickupModes,\n GetReasonsForAbsence,\n GetSchoolAfterSchools,\n getSchoolInfo2,\n getHelp,\n} from \"../../services\";\n\n/**\n * Author:WQ\n * API: // http://35.167.52.234/api/getSchoolPickupTimeDetails\n * Purpose: Get getSchoolPickupTimeDetails\n */\nexport const getSchoolPickupTimeDetails = ({ SchoolID }) => (dispatch) => {\n dispatch({ type: GET_SCHOOL_PICKUP_TIME_START });\n return GetSchoolPickupTimes({ SchoolID })\n .then((response) => {\n // console.log(`School pickup time response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: GET_SCHOOL_PICKUP_TIME_SUCCESS,\n payload: response.Data,\n });\n else {\n dispatch({ type: GET_SCHOOL_PICKUP_TIME_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`School pickup time error ${JSON.stringify(error)}`);\n dispatch({ type: GET_SCHOOL_PICKUP_TIME_FAILED, payload: error });\n });\n};\nexport const getSchoolPickupTimeDetailsClear = () => (dispatch) => {\n dispatch({ type: GET_SCHOOL_PICKUP_TIME_CLEAR });\n};\n\nexport const getSchoolPickupModeDetails = ({ SchoolID }) => (dispatch) => {\n dispatch({ type: GET_SCHOOL_PICKUP_MODE_START });\n return GetSchoolPickupModes({ SchoolID })\n .then((response) => {\n const pickupupModes = [];\n const pickupModesRecord = response.Data;\n pickupupModes.push({\n label: \"Select\",\n value: 0,\n });\n for (let i = 0; i < pickupModesRecord.length; i++) {\n pickupupModes.push({\n label: `${pickupModesRecord[i].PickupMode}`,\n value: `${pickupModesRecord[i].Id}`,\n });\n }\n // console.log(`School pickup mode response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: GET_SCHOOL_PICKUP_MODE_SUCCESS,\n payload: pickupupModes,\n });\n else {\n dispatch({ type: GET_SCHOOL_PICKUP_MODE_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`School pickup mode error ${JSON.stringify(error)}`);\n dispatch({ type: GET_SCHOOL_PICKUP_MODE_FAILED, payload: error });\n });\n};\n\nexport const getAbsentReason = ({ SchoolID }) => (dispatch) => {\n dispatch({ type: GET_ABSENT_REASON_START });\n return GetReasonsForAbsence({ SchoolID })\n .then((response) => {\n // console.log(`Get absent reason response${JSON.stringify(response.Data)}`);\n if (response.Success)\n dispatch({ type: GET_ABSENT_REASON_SUCCESS, payload: response.Data });\n else {\n dispatch({ type: GET_ABSENT_REASON_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Get absent reason error ${JSON.stringify(error)}`);\n dispatch({ type: GET_ABSENT_REASON_FAILED, payload: error });\n });\n};\nexport const getSchoolAfter = ({ SchoolID }) => (dispatch) => {\n dispatch({ type: GET_SCHOOL_AFTER_SCHOOL_START });\n\n return GetSchoolAfterSchools({ SchoolID })\n .then((response) => {\n const afterSchool = [];\n const afterSchoolRecord = response.Data;\n afterSchool.push({\n label: \"Select\",\n value: 0,\n });\n for (let i = 0; i < afterSchoolRecord.length; i++) {\n afterSchool.push({\n label: `${afterSchoolRecord[i].Name}`,\n value: `${afterSchoolRecord[i].AfterSchoolID}`,\n });\n }\n // console.log(`Get school after school response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({\n type: GET_SCHOOL_AFTER_SCHOOL_SUCCESS,\n payload: afterSchool,\n });\n else {\n dispatch({ type: GET_SCHOOL_AFTER_SCHOOL_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Get school after school error ${JSON.stringify(error)}`);\n dispatch({ type: GET_SCHOOL_AFTER_SCHOOL_FAILED, payload: error });\n });\n};\n\n// GET_SELECTED_SCHOOL_INFO_START, GET_SELECTED_SCHOOL_INFO_SUCCESS, GET_SELECTED_SCHOOL_INFO_FAILED, GET_SELECTED_SCHOOL_INFO_CLEAR,\n// export const getSelectedSchoolDetails = ({SchoolID, IncludeDismissalTimes}) => (dispatch) => {\n// dispatch({ type: GET_SELECTED_SCHOOL_INFO_START });\n// return getSchoolInfo2({SchoolID,IncludeDismissalTimes})\n// .then((response) => {\n// // console.log(`School details getSchoolDetails ${JSON.stringify(response)}`);\n// if (response.Success) dispatch({ type: GET_SELECTED_SCHOOL_INFO_SUCCESS, payload: response.Data });\n// else { dispatch({ type: GET_SELECTED_SCHOOL_INFO_FAILED, payload: response }); }\n// }).catch((error) => {\n// // console.log(`School details error ${JSON.stringify(error)}`);\n// dispatch({ type: GET_SELECTED_SCHOOL_INFO_FAILED, payload: error });\n// });\n// };\n\n// export const getSelectedSchoolDetailsClear= () => (dispatch) => {\n// dispatch({ type: GET_SELECTED_SCHOOL_INFO_CLEAR });\n// };\n\nexport const getHelpDetails = ({ schoolId, pageName, stackType }) => (\n dispatch\n) => {\n dispatch({ type: GET_HELP_START });\n return getHelp({ schoolId, pageName, stackType })\n .then((response) => {\n // console.log(`Get Help response${JSON.stringify(response)}`);\n if (response.Success)\n dispatch({ type: GET_HELP_SUCCESS, payload: response.Data });\n else {\n dispatch({ type: GET_HELP_FAILED, payload: response });\n }\n })\n .catch((error) => {\n // console.log(`Get Help error ${JSON.stringify(error)}`);\n dispatch({ type: GET_HELP_FAILED, payload: error });\n });\n};\nexport const getHelpDetailsClear = () => (dispatch) => {\n dispatch({ type: GET_HELP_CLAER });\n};\n","import React from \"react\";\nimport { connect } from \"react-redux\";\n\nclass PriorAndFutureDelegations extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n render() {\n return (\n
    \n

    Prior and future delegations page

    \n
    \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {};\n}\nfunction mapDispatchToProps(dispatch) {\n return {};\n}\nexport default connect(\n mapStateToProps,\n mapDispatchToProps\n)(PriorAndFutureDelegations);\n","import React from \"react\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport \"../../../node_modules/bootstrap/dist/css/bootstrap.min.css\";\nimport { connect } from \"react-redux\";\nimport { showModal, hideModal, setHelpList, setOldHelpSetting } from \"../../common/actions/userAccount\";\nimport GLOBAL_CONST from '../../helper/AppConstants';\nimport RingLoader from \"react-spinners/ClipLoader\";\nimport { withTranslation } from \"react-i18next\";\n\n//Owl Carousel Libraries and Module\nimport OwlCarousel from \"react-owl-carousel\";\nimport \"owl.carousel/dist/assets/owl.carousel.css\";\nimport \"owl.carousel/dist/assets/owl.theme.default.css\";\n\n//Owl Carousel Settings\nconst OwlCarouselOptions = {\n margin: 28,\n responsiveClass: true,\n nav: true,\n autoplay: false,\n navText: [\n \"\",\n \"\",\n ],\n smartSpeed: 1300,\n responsive: {\n 0: {\n items: 1,\n },\n 400: {\n items: 1,\n },\n 600: {\n items: 2,\n },\n 700: {\n items: 2,\n },\n 1000: {\n items: 2,\n },\n },\n};\nclass ChildCardAnnounce extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n data: [],\n\n };\n\n\n }\n\n componentDidMount() {\n\n }\n\n\n componentWillUnmount() {\n\n }\n\n\n componentDidUpdate() {\n\n }\n\n closeModal = () => {\n this.props.doHideModal();\n this.props.doSetOldHelpSetting()\n };\n renderKidsForAnnounce = () => {\n const { kidsAnnouncedToday } = this.props\n //kidsAnnouncedToday.length = 1;\n console.log(\"kidsAnnouncedToday>>>\", kidsAnnouncedToday.length)\n const views = []\n for (var i = 0; i < kidsAnnouncedToday.length; i++) {\n const item = kidsAnnouncedToday[i]\n views.push(
    \n
    \n
    \n
    {item.Firstname}{\" \"}{item.Lastname}
    \n

    {item.GradeName}

    \n

    \n {item.SchoolName}\n

    \n
    \n
    \n

    Dismissal ID

    \n

    {item.StudentID}

    \n
    \n
    \n

    {item.PickupModeName}

    \n
    \n
    \n
    )\n }\n if (kidsAnnouncedToday.length === 1) {\n return (\n
    \n {views}\n
    \n )\n } else {\n return (\n
    \n \n {views}\n \n
    \n );\n }\n\n }\n render() {\n const { school, isFetching } = this.props;\n return (\n
    \n
    \n
    \n
    \n

    \n {this.props.t(\"childCardScr-announceFor\")}\n

    \n
    \n\n {\n this.closeModal();\n }}\n >\n
    \n\n\n
    \n {this.renderKidsForAnnounce()}\n
    \n\n
    \n
    \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n\n error: state.student.error,\n studentsList: state.student.studentsList,\n currentLocationPermission: state.userAccount.currentLocationPermission,\n\n setHelpListData: state.userAccount.setHelpListData,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doSetOldHelpSetting: () => dispatch(setOldHelpSetting()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(ChildCardAnnounce)\n);\n","import React from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport { connect } from \"react-redux\";\nimport {\n getDismissalHistoryList,\n getDismissalHistoryListClear,\n} from \"../../common/actions/students/studentAction\";\nimport { getDismissedInfo } from \"../../helper/uiUtility\";\nimport moment from \"moment\";\n\nclass DismissalHistory extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n isVisible: false\n };\n }\n\n getRecords = () => {\n let ChildInfo = this.props.child;\n const { doGetDismissalHistoryList, dismissalHistory } = this.props;\n\n doGetDismissalHistoryList({\n StudentID: ChildInfo.StudentID,\n });\n };\n\n componentWillUnmount() {\n const { doGetDismissalHistoryListClear } = this.props;\n let ChildInfo = this.props.child;\n doGetDismissalHistoryListClear({\n StudentID: ChildInfo.StudentID,\n });\n }\n componentDidUpdate(prevProps){\n if(prevProps.isVisible !== this.props.isVisible\n && this.props.isVisible){\n this.getRecords();\n }\n }\n loadMoreRecords = () => {\n const { isFetching } = this.props;\n if (isFetching) return;\n this.getNotifications();\n };\n\n render() {\n const { dismissalHistory } = this.props;\n let ChildInfo = this.props.child;\n let records = [];\n if (dismissalHistory) {\n records = dismissalHistory[ChildInfo.StudentID];\n }\n if (!records) records = [];\n\n return (\n
    \n

    \n {this.props.t(\"Dismissal_History_Header\")}\n

    \n
      \n {records &&\n records.map((item) => (\n
    • \n
      \n {\" \"}\n {getDismissedInfo(item).dismissalText}{\" \"}\n \n {\" \"}\n  {getDismissedInfo(item).dismissalTextSubText}\n \n
      \n \n {moment(item.CalendarDate).format(\"D-MMM\")}\n \n
    • \n ))}\n
    \n
    \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n dismissalHistory: state.student.dismissalHistory,\n error: state.student.error,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doGetDismissalHistoryList: (data) =>\n dispatch(getDismissalHistoryList(data)),\n doGetDismissalHistoryListClear: (data) =>\n dispatch(getDismissalHistoryListClear(data)),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(DismissalHistory)\n);\n","export default __webpack_public_path__ + \"static/media/contact3.b8d53b0b.jpg\";","import React from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport { connect } from \"react-redux\";\nimport \"react-calendar/dist/Calendar.css\";\nimport Calendar from \"react-calendar\";\nimport \"react-calendar/dist/Calendar.css\";\nimport sampleChildPic from \"../assets/dashboard/sample-child-pic.jpg\";\nimport { MainHeader } from \"../CommonComponents\";\nimport { openPopupWindow } from \"./../../helper/uiUtility\";\nimport { BootstrapModal } from \"../CommonComponents\";\nimport moment from \"moment\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\nimport { Colors } from \"../../theme\";\nimport { showModal, hideModal } from \"../../common/actions/userAccount\";\nimport RingLoader from \"react-spinners/ClipLoader\";\nimport {\n getChildStatus,\n getDismissalInfo,\n isActionAllowed,\n getMarkStyle,\n isTodayAndAnnounced,\n getFileURL,\n isEarlyDismissalAvailable,\n getEarlyDismissalTime,\n} from \"./../../helper/utility\";\nimport addNotification from \"react-push-notification\";\nimport contact3 from \"../assets/contacts/contact3.jpg\";\n\nimport {\n getPickupEntries,\n getPickupEntriesClear,\n getKidDefaultDismissal,\n getKidDefaultDismissalClear,\n absenteeCancel,\n absenteeCancelClear,\n delegationCancel,\n delegationCancelClear,\n removeMultipleDelegations,\n removeMultipleDelegationsClear,\n relatedDelegationsDetails,\n getEarlyDismissalsForDateRange,\n getEarlyDismissalsForDateRangeClear,\n earlyDismissalCancel,\n cancelEarlyDismissalClear,\n} from \"../../common/actions/students\";\nimport DismissalHistory from \"./DismissalHistory\";\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport { confirmAlert } from \"react-confirm-alert\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\ntoast.configure();\n\nconst loadingSelector = createLoadingSelector([\n \"cancel_absentee\",\n \"cancel_delegation\",\n \"cancel_multiple_delegations\",\n \"cancel_early_dismissal\",\n]);\nclass MyKidView extends React.Component {\n constructor(props) {\n super(props);\n\n const { child, school } = this.props;\n\n let monthEnd = new Date(school.Dates.LastDayOfSchool);\n const isLastDayOfSchoolPast = moment(monthEnd).isBefore(moment());\n\n const firstDayOfSchool = new Date(school.Dates.FirstDayOfSchool);\n\n this.state = {\n markedDates: {},\n dismissalData: [],\n avatarSource: null,\n selectedDate: new Date(),\n currentSelectedMonth: new Date(),\n currentList: [],\n displayMenu: false,\n displayConfirmation: false,\n cancelpickups: {},\n isLastDayOfSchoolPast,\n firstDayOfSchool,\n kidsCalendarVisible: false,\n isActionPerformed: false,\n };\n }\n\n getDismissalsList = () => {\n const {\n doGetPickupEntries,\n school,\n child,\n doGetEarlyDismissalsForDateRange,\n } = this.props;\n const { isLastDayOfSchoolPast } = this.state;\n let ChildInfo = child;\n let firstDayOfSchool = new Date(school.Dates.FirstDayOfSchool);\n\n let monthStart = new Date();\n const diffFirstDayofSchool = moment(firstDayOfSchool).diff(\n moment(),\n \"months\"\n );\n\n if (diffFirstDayofSchool < -12) {\n endDate = moment().add(12, \"M\").format(\"MM-DD-YYYY\");\n monthStart = new Date(new Date().getFullYear(), new Date().getMonth(), 1);\n } else {\n monthStart = firstDayOfSchool;\n }\n\n let monthEnd = new Date(school.Dates.LastDayOfSchool);\n\n var startDate = moment(monthStart).format(\"MM-DD-YYYY\");\n var endDate = moment(monthEnd).format(\"MM-DD-YYYY\");\n\n if (isLastDayOfSchoolPast) {\n endDate = moment().add(12, \"M\").format(\"MM-DD-YYYY\");\n }\n\n doGetPickupEntries({\n studentID: ChildInfo.StudentID,\n startDate,\n endDate,\n });\n\n var eStartDate = moment(monthStart).format(\"YYYY-MM-DDTHH:mm:ss\");\n var eEndDate = moment(monthEnd).format(\"YYYY-MM-DDTHH:mm:ss\");\n\n doGetEarlyDismissalsForDateRange({\n StudentID: ChildInfo.StudentID,\n StartDate: eStartDate,\n EndDate: eEndDate,\n });\n\n const { doGetKidDefaultDismissal } = this.props;\n doGetKidDefaultDismissal({\n studentId: ChildInfo.StudentID,\n });\n };\n\n doRefreshListing = () => {\n const { doGetPickupEntriesClear, child } = this.props;\n this.setState({ dismissalData: [], markedDates: {} });\n doGetPickupEntriesClear({\n studentID: child.StudentID,\n });\n this.getDismissalsList();\n };\n openCancelPickupModal = (cancelpickups) => {\n this.props.doShowModal({\n modalScreenName: \"cancelThisPickup\",\n modalClassName: \"cancelThisPickupModal\",\n params: {\n cancelpickups: cancelpickups,\n doCallbackRefresh: this.doRefreshListing,\n },\n });\n };\n openChangeDefualtPickupWindow = () => {\n const { defaultDismissalResponse } = this.props;\n const { child } = this.props;\n this.props.doShowModal({\n modalScreenName: \"changeDefualtPickup\",\n modalClassName: \"changeDefaultPickupModal\",\n params: {\n ChildInfo: child,\n defaultDismissalResponse: defaultDismissalResponse[child.StudentID],\n doCallbackRefresh: this.doRefreshListing,\n },\n });\n };\n openMarkAbsentWindow = (params) => {\n params.doCallbackRefresh = this.doRefreshListing;\n this.props.doShowModal({\n modalScreenName: \"CreateMarkAbsent\",\n modalClassName: \"markAbsentModal\",\n params: params,\n doCallbackRefresh: this.doRefreshListing,\n });\n };\n\n getDayRecord() {\n const { selectedDate } = this.state;\n\n const markedDates = { ...this.state.markedDates };\n\n let currentList = [];\n var selectDateStr = moment(new Date(selectedDate)).format(\"YYYY-MM-DD\");\n\n for (const key in markedDates) {\n if (key === selectDateStr) {\n var selectedMarked = {\n selected: true,\n selectedColor: Colors.blue,\n className: [markedDates[key].className + \" \" + \"selectedDate\"],\n record: markedDates[key].record,\n };\n markedDates[key] = selectedMarked;\n this.getRelatedDelegationsDetails(markedDates[selectDateStr].record);\n } else {\n markedDates[key] = getMarkStyle(markedDates[key].record);\n }\n }\n\n if (markedDates[selectDateStr])\n currentList.push(markedDates[selectDateStr]);\n\n this.setState({ markedDates, currentList });\n }\n\n getRelatedDelegationsDetails = (item) => {\n const { doRelatedDelegationsDetails } = this.props;\n let calendarId = item.CalendarID;\n\n if (calendarId != null) {\n doRelatedDelegationsDetails({ calendarId });\n }\n };\n\n componentDidUpdate() {\n const {\n pickupEntries,\n doGetPickupEntriesClear,\n cancelAbsentResponse,\n doAbsenteeCancelClear,\n doAbsenteeCancel,\n delegationCancelResponse,\n doCancelDelegationClear,\n doRemoveMultipleDelegationsClear,\n deleteMultipleDelegations,\n error,\n child,\n school,\n doGetEarlyDismissalsForDateRangeClear,\n earlyDismissalDateRange,\n cancelEarlyDismissalResponse,\n doCancelEarlyDismissalClear,\n } = this.props;\n\n const { markedDates, dismissalData, isActionPerformed } = this.state;\n\n const kidPickupEntries = pickupEntries[child.StudentID];\n console.log(\"earlyDismissalDateRange check \" + earlyDismissalDateRange);\n // if (kidPickupEntries) {\n // \tconst newMarkedDates = {};\n // \tfor (var j = 0; j < kidPickupEntries.CalendarEntries.length; j++) {\n // \t var record = kidPickupEntries.CalendarEntries[j];\n // \t var day2 = moment(record.CalendarDate).format(\"YYYY-MM-DD\");\n // \t newMarkedDates[day2] = getMarkStyle(record);\n // \t}\n // \tthis.setState({ markedDates: newMarkedDates }, this.getDayRecord);\n // \tdoGetPickupEntriesClear({\n // \t studentID: child.StudentID,\n // \t});\n // }\n if (kidPickupEntries && earlyDismissalDateRange) {\n console.log(\n \"Inside mark builder \" + kidPickupEntries.CalendarEntries.length\n );\n const newMarkedDates = {};\n for (var i = 0; i < kidPickupEntries.CalendarEntries.length; i++) {\n const record = { ...kidPickupEntries.CalendarEntries[i] };\n var day = moment(record.CalendarDate).format(\"YYYY-MM-DD\");\n let earlyDismissalrecord = [];\n if (earlyDismissalDateRange) {\n console.log(\"earlyDismissalrecord records \", earlyDismissalDateRange);\n earlyDismissalrecord = earlyDismissalDateRange.filter(\n (item) => moment(item.Date).format(\"YYYY-MM-DD\") === day\n );\n }\n //console.log(`bulding marked dates day ${day} record.CalendarDate ${record.CalendarDate} `);\n if (earlyDismissalrecord.length > 0) {\n console.log(\n \"earlyDismissalrecord for \",\n day,\n \" records \",\n earlyDismissalrecord\n );\n earlyDismissalrecord[0].isEarlyDismissal = true;\n if (earlyDismissalrecord[0].DelegateImageUrl === undefined)\n earlyDismissalrecord[0].DelegateImageUrl = null;\n\n newMarkedDates[day] = getMarkStyle(earlyDismissalrecord[0]);\n } else {\n record.isEarlyDismissal = false;\n newMarkedDates[day] = getMarkStyle(record);\n }\n }\n this.setState({ markedDates: newMarkedDates }, this.getDayRecord);\n doGetPickupEntriesClear({ studentID: child.StudentID });\n doGetEarlyDismissalsForDateRangeClear();\n }\n\n if (error) {\n doAbsenteeCancelClear();\n } else if (cancelAbsentResponse && isActionPerformed) {\n this.setState({ isActionPerformed: false });\n toast.success(\n cancelAbsentResponse.Message || cancelAbsentResponse.Message,\n { autoClose: 2000, transition: Slide, hideProgressBar: true }\n );\n doAbsenteeCancelClear();\n this.doRefreshListing();\n } else if (delegationCancelResponse && isActionPerformed) {\n this.setState({ isActionPerformed: false });\n toast.success(\n delegationCancelResponse.Message || delegationCancelResponse.Message,\n { autoClose: 2000, transition: Slide, hideProgressBar: true }\n );\n doCancelDelegationClear();\n this.doRefreshListing();\n this.setState({ displayConfirmation: false });\n } else if (deleteMultipleDelegations && isActionPerformed) {\n this.setState({ isActionPerformed: false });\n toast.success(\n deleteMultipleDelegations.Message || deleteMultipleDelegations.Message,\n { autoClose: 2000, transition: Slide, hideProgressBar: true }\n );\n doRemoveMultipleDelegationsClear();\n this.doRefreshListing();\n this.setState({ displayConfirmation: false });\n } else if (cancelEarlyDismissalResponse && isActionPerformed) {\n toast.success(\"Early dismissal successfully cancelled.\", {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n\n doCancelEarlyDismissalClear();\n this.doRefreshListing();\n }\n\n if (\n dismissalData.length === 0 &&\n kidPickupEntries &&\n kidPickupEntries.CalendarEntries.length > 0\n ) {\n this.setState({ dismissalData: kidPickupEntries.CalendarEntries }, () => {\n doGetPickupEntriesClear({\n studentID: child.StudentID,\n });\n });\n }\n }\n\n toggleKidsCalendar = () => {\n // addNotification({\n // title: \"Warning\",\n // subtitle: \"This is a subtitle\",\n // message: \"This is a very long message\",\n // theme: \"darkblue\",\n // native: true, // when using native, your OS will handle theming.\n // });\n this.setState(\n { kidsCalendarVisible: !this.state.kidsCalendarVisible },\n () => {\n if (this.state.kidsCalendarVisible) {\n this.getDismissalsList();\n }\n }\n );\n };\n openEarlyDismissalmodal = () => {\n const { dismissalData, markedDates, selectedDate } = this.state;\n const { child, school } = this.props;\n this.setState({ displayMenu: false });\n const ChildInfo = child;\n let setDateForActon = selectedDate;\n if (moment(selectedDate).isBefore(moment())) setDateForActon = new Date();\n this.props.doShowModal({\n modalScreenName: \"earlyDismissal\",\n modalClassName: \"earlyDismissalModal\",\n params: {\n ChildInfo,\n dismissalData,\n markedDates,\n selectDate: setDateForActon,\n school: school,\n doCallbackRefresh: this.doRefreshListing,\n },\n });\n };\n doCancelEarlyDismissal = (item) => {\n confirmAlert({\n title: this.props.t(\"childDetailScr-earlyDismissalCancel\"),\n message: this.props.t(\"childDetailScr-earlyDismissalMessage\"),\n buttons: [\n {\n label: this.props.t(\"Yes\"),\n onClick: () => {\n this.setState({ isActionPerformed: true }, () => {\n this.cancelEarlyDismissal(item);\n });\n },\n },\n {\n label: this.props.t(\"No\"),\n className: \"cancel-btn\",\n },\n ],\n cancelable: false,\n });\n };\n showDismissalAdd = () => {\n const { dismissalData, markedDates, selectedDate } = this.state;\n const { child, school } = this.props;\n this.setState({ displayMenu: false });\n const ChildInfo = child;\n let setDateForActon = selectedDate;\n if (moment(selectedDate).isBefore(moment())) setDateForActon = new Date();\n\n this.props.doShowModal({\n modalScreenName: \"createModifyPickup\",\n modalClassName: \"createModifyPickupModal\",\n params: {\n ChildInfo,\n dismissalData,\n markedDates,\n selectDate: setDateForActon,\n school: school,\n doCallbackRefresh: this.doRefreshListing,\n },\n });\n };\n\n onDayPress = (day) => {\n this.setState(\n {\n selectedDate: day,\n },\n this.getDayRecord\n );\n };\n\n getRedButton = (item, type) => {\n let buttonText = \"\";\n if (type === 1) {\n buttonText = `${this.props.t(\"childDetailScr-mark\")}`;\n } else if (type === 2) {\n buttonText = `${this.props.t(\"childDetailScr-absentCancel\")}`;\n }\n return (\n {\n if (type === 2) this.doCancelAbsent(item);\n else if (type === 1) {\n const { dismissalData, markedDates, selectedDate } = this.state;\n const { child, school } = this.props;\n let setDateForActon = selectedDate;\n if (moment(selectedDate).isBefore(moment()))\n setDateForActon = new Date();\n\n this.openMarkAbsentWindow({\n ChildInfo: child,\n dismissalData,\n markedDates,\n selectedDate: setDateForActon,\n school,\n });\n }\n }}\n >\n {buttonText}\n \n );\n };\n getButton = (item) => {\n if (this.state.isLastDayOfSchoolPast) return;\n const { child, school } = this.props;\n const ChildInfo = child;\n const { defaultDismissalResponse } = this.props;\n const { selectedDate } = this.state;\n const isAbseetAllowed = isActionAllowed(\n ChildInfo.DismissalTime,\n selectedDate\n );\n\n const isPickupModeFuture = isActionAllowed(\n ChildInfo.PickupModeCutOffTime,\n selectedDate\n );\n\n const isDelegateFuture = isActionAllowed(\n ChildInfo.DelegationCutOffTime,\n selectedDate\n );\n\n const buttons = [];\n const isReunification =\n school.ReunificationEnabled &&\n moment(selectedDate).isSame(moment(), \"date\");\n console.log(\"school.ReunificationEnabled \" + school.ReunificationEnabled);\n if (isReunification) {\n buttons.push(\n

    \n {this.props.t(\"emergency_reunification_pickup_msg\")}\n

    \n );\n return buttons;\n }\n\n if (!isAbseetAllowed && !isPickupModeFuture && !isDelegateFuture) return [];\n if (isTodayAndAnnounced(new Date(selectedDate), ChildInfo)) return [];\n\n if (item.isEarlyDismissal) {\n if (ChildInfo.Permissions.MarkAbsent === true && isAbseetAllowed === true)\n buttons.push(this.getRedButton(item, 1));\n\n if (isPickupModeFuture === true && isDelegateFuture === true)\n buttons.push(this.getChangeDismissalbutton(item, false));\n\n return buttons;\n }\n if (item.MiscellaneousID !== null) {\n buttons.push(this.getRedButton(item, 2));\n buttons.push(
    );\n return buttons;\n }\n\n let isDefault = false;\n if (\n defaultDismissalResponse &&\n defaultDismissalResponse !== undefined &&\n defaultDismissalResponse[child.StudentID] &&\n defaultDismissalResponse[child.StudentID] !== undefined &&\n parseInt(defaultDismissalResponse[child.StudentID].PickupModeID) ===\n parseInt(item.PM_ID) &&\n item.Guardian_First === null\n )\n isDefault = true;\n\n if (ChildInfo.Permissions.MarkAbsent === true && isAbseetAllowed === true)\n buttons.push(this.getRedButton(item, 1));\n\n if (isPickupModeFuture === true && isDelegateFuture === true)\n buttons.push(this.getChangeDismissalbutton(item, isDefault));\n\n return buttons;\n };\n\n getChangeDismissalbutton = (item, isDefault) => {\n const { child } = this.props;\n let buttonText = \"\";\n if (!isDefault) {\n buttonText = `${this.props.t(\"Cancel_Pickup_Label\")}`;\n } else {\n buttonText = `${this.props.t(\"Change_Pickup_Button\")}`;\n }\n\n return (\n {\n if (item.isEarlyDismissal) {\n this.doCancelEarlyDismissal(item);\n } else if (isDefault) this.showDismissalAdd(item);\n else {\n this.setState({ isActionPerformed: true }, () => {\n this.openCancelPickupModal(item);\n });\n }\n }}\n >\n {buttonText}\n \n );\n };\n\n doCancelAbsent = (item) => {\n confirmAlert({\n title: this.props.t(\"childDetailScr-absentCancel\"),\n message: this.props.t(\"childDetailScr-absentMessage\"),\n buttons: [\n {\n label: this.props.t(\"Yes\"),\n onClick: () => {\n this.setState({ isActionPerformed: true }, () => {\n this.cancelAbsentee(item.CalendarDate);\n this.props.doHideModal();\n });\n },\n },\n {\n label: this.props.t(\"No\"),\n className: \"cancel-btn\",\n },\n ],\n });\n };\n cancelAbsentee = (canceldate) => {\n const { doAbsenteeCancel, child } = this.props;\n let ChildInfo = child;\n\n let absenteeDate = moment(canceldate).format(\"MM/DD/YYYY\");\n let studentId = ChildInfo.StudentID;\n doAbsenteeCancel({ studentId, absenteeDate });\n };\n\n cancelEarlyDismissal = (item) => {\n const { doEarlyDismissalCancel } = this.props;\n\n doEarlyDismissalCancel({ id: item.Id });\n };\n\n renderItem = () => {\n const { selectedDate, markedDates, isLastDayOfSchoolPast } = this.state;\n const selectDateStr = moment(new Date(selectedDate)).format(\"YYYY-MM-DD\");\n const dayRecord = markedDates[selectDateStr];\n if (!dayRecord) return null;\n const item = dayRecord.record;\n const buttons = this.getButton(item);\n return (\n
    \n {item.isEarlyDismissal\n ? this.renderEarlyDismissalItem(item)\n : item.Guardian_First !== \"\" && item.Guardian_First !== null\n ? this.renderContactItem(item)\n : this.renderPickupItem(item)}\n\n {buttons && buttons.length > 0 && (\n
    \n
    {buttons}
    \n
    \n )}\n
    \n );\n };\n renderEarlyDismissalItem = () => {\n const { selectedDate, markedDates, isLastDayOfSchoolPast } = this.state;\n const selectDateStr = moment(new Date(selectedDate)).format(\"YYYY-MM-DD\");\n //alert(selectDateStr);\n const dayRecord = markedDates[selectDateStr];\n if (!dayRecord) return null;\n const item = dayRecord.record;\n console.log(\"renderItem\", item);\n return this.renderEarlyItem(item);\n };\n renderEarlyItem = (item) => {\n const {\n selectedDate,\n markedDates,\n isLastDayOfSchoolPast,\n avatarSource,\n } = this.state;\n const selectDateStr = moment(new Date(selectedDate)).format(\"YYYY-MM-DD\");\n const dismissalInfo = this.getEarlyDismissalInfo(item);\n const isGroup = false;\n const dayRecord = markedDates[selectDateStr];\n if (!dayRecord) return null;\n const dayValue = dayRecord.record;\n let markStyle = getMarkStyle(dayValue, true);\n console.log(\"markStyle=======\", markStyle);\n const buttons = this.getButton(item);\n const school = this.props.school;\n return (\n
    \n \n \n {moment(selectedDate).format(\" MMM D, \").toLocaleUpperCase() +\n getEarlyDismissalTime(dayValue) +\n \" (\" +\n this.props.t(\"EARLY_FOR\") +\n \")\"}\n \n
    \n
    \n
    \n
    \n {school.ImageBasedDelegationFeatureFlag &&\n dayValue.DelegateImageUrl &&\n dayValue.DelegateImageUrl !== undefined ? (\n \n \n \n ) : (\n \n \n \n )}\n
    \n

    \n {dayValue.DelegateName ? (\n
    \n \n {dismissalInfo.dismissalText}\n \n {dayValue.DelegateContact}\n
    \n ) : (\n \n {` ${dismissalInfo.dismissalText} ${getEarlyDismissalTime(\n dayValue\n )}`}\n \n )}\n

    \n
    \n
    \n \n );\n };\n renderContactItem = (item) => {\n const { selectedDate, markedDates, isLastDayOfSchoolPast } = this.state;\n const selectDateStr = moment(new Date(selectedDate)).format(\"YYYY-MM-DD\");\n const dismissalInfo = getDismissalInfo(item);\n const isGroup = false;\n const dayRecord = markedDates[selectDateStr];\n if (!dayRecord) return null;\n const dayValue = dayRecord.record;\n const buttons = this.getButton(item);\n let markStyle = getMarkStyle(dayValue, true);\n const school = this.props.school;\n return (\n
    \n \n \n {this.props.t(\"Schedule_For\")}\n {moment(selectedDate).format(\" MMM D, YYYY\").toLocaleUpperCase()}\n \n
    \n
    \n
    \n

    {dayValue.PM_Name}

    \n
    \n
    \n {school.ImageBasedDelegationFeatureFlag &&\n dayValue.DelegateImageUrl &&\n dayValue.DelegateImageUrl !== undefined ? (\n \n \n \n ) : (\n \n \n \n )}\n
    \n
    \n \n {`${dayValue.Guardian_First} ${dayValue.Guardian_Last}`}\n \n {dayValue.Guardian_Phone}\n
    \n
    \n
    \n
    \n \n );\n };\n renderPickupItem = (item) => {\n const { selectedDate, markedDates, isLastDayOfSchoolPast } = this.state;\n const selectDateStr = moment(new Date(selectedDate)).format(\"YYYY-MM-DD\");\n const dismissalInfo = getDismissalInfo(item);\n const isGroup = false;\n const dayRecord = markedDates[selectDateStr];\n if (!dayRecord) return null;\n const dayValue = dayRecord.record;\n let markStyle = getMarkStyle(dayValue, true);\n const buttons = this.getButton(item);\n return (\n
    \n \n {`Schedule for ${moment(\n item.CalendarDate\n ).format(\" MMM Do YYYY\")}`}\n
    \n
    \n {!isLastDayOfSchoolPast ? (\n

    \n {dismissalInfo.dismissalText}{\" \"}\n {` ${dismissalInfo.dismissalTextSubText}`}\n

    \n ) : (\n

    {this.props.t(\"School_not_Session_Text\")}

    \n )}\n
    \n \n );\n };\n getEarlyDismissalInfo = (item) => {\n const currentDate = new Date();\n\n let dismissalText = \"\";\n const dismissalTextSubText = \"\";\n\n const isFuture = moment(item.Date).isAfter(moment(currentDate));\n\n if (item.DelegateName) {\n if (isFuture) {\n dismissalText = `${item.DelegateName}`;\n } else {\n dismissalText = `${item.DelegateName}`;\n }\n } else if (isFuture) {\n dismissalText = `${this.props.t(\"Pickup_Early_By_Text\")}`;\n } else {\n dismissalText = `${this.props.t(\"Pickup_Early_Was_By_Text\")}`;\n }\n\n return {\n dismissalText,\n dismissalTextSubText:\n dismissalTextSubText === null ? \"\" : `-${dismissalTextSubText}`,\n };\n };\n\n render() {\n const { child, school, isFetching, defaultDismissalResponse } = this.props;\n const { markedDates, dismissalData, kidsCalendarVisible } = this.state;\n const childDetailView = \"childDetails-\" + child.StudentID;\n\n let kidDefaultDismissalResponse = {};\n if (defaultDismissalResponse && defaultDismissalResponse[child.StudentID]) {\n kidDefaultDismissalResponse = defaultDismissalResponse[child.StudentID];\n }\n return (\n \n \n \n \n {\n this.toggleKidsCalendar();\n }}\n className=\"expandcollapse-row\"\n data-toggle=\"collapse\"\n href={\"#\" + childDetailView}\n >\n \n \n \n \n \n\n \n \n \n \n
    \n
    \n \n {\" \"}\n {`${child.Firstname} ${child.Lastname}`}\n \n
    \n {`(${child.SchoolStudentId}) - ${child.GradeName}`}\n
    \n
    \n
    {child.PickupModeName}
    \n
    \n
    \n {`${\n child.StatusID != 0\n ? getChildStatus(child)\n : this.props.t(\"Not_Dismissed\")\n }`}\n
    \n
    \n
    \n {school.Name}\n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n {dismissalData.length === 0 ? (\n
    \n \n
    \n ) : (\n {\n if (markedDates) {\n const item =\n markedDates[\n moment(date).format(\"YYYY-MM-DD\")\n ];\n if (item) {\n return [item.className];\n }\n }\n }}\n >\n )}\n {!isFetching && this.renderItem()}\n
    \n
    \n
    \n \n
    \n
    \n
    \n

    \n {this.props.t(\n \"otherChildrenScr-additionalInfo\"\n )}\n

    \n
      \n
    • \n
      \n

      \n {\n kidDefaultDismissalResponse.PickupModeName\n }{\" \"}\n {kidDefaultDismissalResponse.PickupModeID ==\n 1\n ? kidDefaultDismissalResponse.PickupModeSubName\n : kidDefaultDismissalResponse.PickupModeID ==\n 4\n ? kidDefaultDismissalResponse.PickupModeSubName\n : null}\n

      \n \n {this.props.t(\"Default_PickupLabel\")}\n \n
      \n
      \n \n {this.props.t(\"editChildScr_Label\")}\n \n
      \n
    • \n
    \n\n
    \n

    \n {this.props.t(\"More_Actions\")}\n

    \n
    \n {\n this.showDismissalAdd();\n }}\n >\n {this.props.t(\"Create_Pickup\")}\n \n {\n const {\n dismissalData,\n markedDates,\n selectedDate,\n } = this.state;\n const { child, school } = this.props;\n let setDateForActon = selectedDate;\n if (\n moment(selectedDate).isBefore(moment())\n )\n setDateForActon = new Date();\n\n this.openMarkAbsentWindow({\n ChildInfo: child,\n dismissalData,\n markedDates,\n selectedDate: setDateForActon,\n school,\n });\n }}\n >\n {this.props.t(\"childDetailScr-mark\")}\n \n {/* {isEarlyDismissalAvailable(school) && ( */}\n {\n this.openEarlyDismissalmodal();\n }}\n >\n {this.props.t(\"early_dismissal_label\")}\n \n {/* )} */}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n pickupEntries: state.student.pickupEntries,\n defaultDismissalResponse: state.student.defaultDismissalResponse,\n isFetching: loadingSelector(state),\n cancelAbsentResponse: state.student.cancelAbsentResponse,\n error: state.student.error,\n delegationCancelResponse: state.student.delegationCancelResponse,\n relatedDelegations: state.student.relatedDelegations,\n deleteMultipleDelegations: state.student.deleteMultipleDelegations,\n\n earlyDismissalDateRange: state.student.earlyDismissalDateRange,\n cancelEarlyDismissalResponse: state.student.cancelEarlyDismissalResponse,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doGetPickupEntries: (data) => dispatch(getPickupEntries(data)),\n doGetPickupEntriesClear: (data) => dispatch(getPickupEntriesClear(data)),\n doGetKidDefaultDismissal: (data) => dispatch(getKidDefaultDismissal(data)),\n doGetKidDefaultDismissalClear: (params) =>\n dispatch(getKidDefaultDismissalClear(params)),\n doAbsenteeCancel: (data) => dispatch(absenteeCancel(data)),\n doAbsenteeCancelClear: () => dispatch(absenteeCancelClear()),\n doRelatedDelegationsDetails: (data) =>\n dispatch(relatedDelegationsDetails(data)),\n doRemoveMultipleDelegations: (data) =>\n dispatch(removeMultipleDelegations(data)),\n doRemoveMultipleDelegationsClear: () =>\n dispatch(removeMultipleDelegationsClear()),\n docancelDelegation: (data) => dispatch(delegationCancel(data)),\n doCancelDelegationClear: () => dispatch(delegationCancelClear()),\n\n doGetEarlyDismissalsForDateRange: (data) =>\n dispatch(getEarlyDismissalsForDateRange(data)),\n doGetEarlyDismissalsForDateRangeClear: (data) =>\n dispatch(getEarlyDismissalsForDateRangeClear(data)),\n doEarlyDismissalCancel: (data) => dispatch(earlyDismissalCancel(data)),\n doCancelEarlyDismissalClear: (data) =>\n dispatch(cancelEarlyDismissalClear(data)),\n\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(MyKidView)\n);\n","import React from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport { connect } from \"react-redux\";\nimport \"react-calendar/dist/Calendar.css\";\nimport Calendar from \"react-calendar\";\nimport \"react-calendar/dist/Calendar.css\";\nimport { showModal, hideModal } from \"../../common/actions/userAccount\";\nimport moment from \"moment\";\n\nclass OtherKidView extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n selectedDate: new Date(),\n };\n }\n\n openFutureDelegationWindow = (params) => {\n this.props.doShowModal({\n modalScreenName: params.modalScreenName,\n modalClassName: \"future-delegation-modal sidebar-modal right\",\n params: { child: params.child },\n });\n };\n render() {\n const { child, title } = this.props;\n return (\n {\n this.openFutureDelegationWindow({\n modalScreenName: \"futureDelegation\",\n child: child,\n });\n }}\n >\n \n
    \n \n \n {`${child.StudentName.FirstName}`}\n {\"\"} {`${child.StudentName.LastName}`}\n \n
    \n {`${child.Grade}`}\n
    \n \n \n
    \n {`${child.ParentName.FirstName}`}\n {\"\"} {`${child.ParentName.LastName}`}\n
    \n \n \n
    \n {moment(child.PickupDate).format(\"DD MMM YYYY\")}\n
    \n \n \n
    \n {title}\n
    \n \n \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(OtherKidView)\n);\n","import React from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport \"react-calendar/dist/Calendar.css\";\n\nimport { connect } from \"react-redux\";\n\nimport { MainHeader, MainFooter } from \"../CommonComponents\";\nimport moment from \"moment\";\nimport RingLoader from \"react-spinners/ClipLoader\";\nimport {\n logoutUser,\n setHelpList,\n showModal,\n hideModal,\n} from \"../../common/actions/userAccount\";\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\nimport { Nokids } from \"../Dashboard\";\n\nimport {\n getStudentsList,\n getSchoolDetails,\n schoolAndKidsFetchDone,\n getOtherChildrenDetails,\n otherChildrenFetchDone,\n otherChildrenListClear,\n getBackToSchoolInformation,\n} from \"../../common/actions/students\";\n\nimport {\n getIsTokenValid,\n getIsTokenValidClear,\n} from \"../../common/actions/userAccount\";\n\nimport \"./styles/style.css\";\nimport MyKidView from \"./MyKidView\";\nimport OtherKidView from \"./OtherKidView\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\n// import { requestForToken,onMessageListener } from '../../init-fcm'\n// import addNotification from \"react-push-notification\";\n\nconst loadingSelector = createLoadingSelector([\n \"get_students\",\n \"get_other_children\",\n \"get_school_info\",\n \"get_token_valid\",\n \"get_back_school\"\n]);\nconst loadingSelector2 = createLoadingSelector([\"get_back_school\"]);\nclass ChildManagement extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n selectedDate: new Date(),\n OtherSchoolStudentList: [],\n YourSchoolStudentList: [],\n noKidsTitle: \"\",\n noKidsDetail: \"\",\n needBackToSchool: false,\n isBackToSchoolPrompted: false,\n };\n }\n\n async componentDidMount() {\n const { isTermsAccepted } = this.props;\n this.checkTokenValid();\n this.dosetHelpList();\n\n if (!isTermsAccepted) {\n // this.props.history.replace(\"/termsConditions\", {\n // callback: () => {\n // console.log(\"TermsAccept callback\");\n // this.processBackToSchool(this.state.needBackToSchool);\n // },\n // });\n this.props.history.replace(\"/termsConditions\");\n } else {\n this.processBackToSchool(this.state.needBackToSchool);\n }\n }\n processBackToSchool = (needBackToSchool) => {\n console.log(\"processBackToSchool needBackToSchool \" + needBackToSchool);\n if (needBackToSchool) {\n const { nextAskMeLater } = this.props;\n if (\n nextAskMeLater !== null &&\n nextAskMeLater !== undefined &&\n moment().isBefore(nextAskMeLater, \"date\")\n ) {\n console.log(\"processBackToSchool askMeLater \" + nextAskMeLater);\n return;\n }\n console.log(\"processBackToSchool calling getBackToSchoolInfo\");\n this.getBackToSchoolInfo();\n }\n };\n getBackToSchoolInfo = () => {\n const { isBackToSchoolPrompted } = this.state;\n\n // const isFocused = this.props.navigation.isFocused();\n // if(Platform.OS === 'ios' && !isFocused) return;\n // if(Platform.OS ==='android' && isBackToSchoolPrompted && !isFocused) return;\n\n const { doGetbacktoschoolInfo, studentsList } = this.props;\n const students = studentsList && studentsList.TodaysStudents;\n const studentRecords = [...students];\n const kidsList = studentRecords.filter((item)=> !item.IsDelegation)\n \n doGetbacktoschoolInfo({\n callback: (getBackSchoolInfoData) => {\n if (getBackSchoolInfoData) {\n if (kidsList.length > 1) {\n this.openBackToSchoolKidsModal();\n } else if (kidsList.length === 1) {\n this.props.doShowModal({\n modalScreenName: \"backToSchool\",\n modalClassName: \"backto-school-modal\",\n params: {\n studentData: kidsList[0],\n backToSchoolInfoData: getBackSchoolInfoData[0],\n isSingleKid: true,\n doCallbackRefresh: this.doRefreshListing,\n },\n });\n }\n this.setState({ isBackToSchoolPrompted: true });\n }\n },\n });\n };\n\n openBackToSchoolKidsModal = () => {\n this.props.doShowModal({\n modalScreenName: \"backToSchoolKidList\",\n modalClassName: \"backto-school-modal\",\n });\n };\n\n setupPush() {\n // requestForToken()\n // onMessageListener()\n // .then((payload) => {\n // //setNotification({title: payload?.notification?.title, body: payload?.notification?.body});\n // console.log(JSON.stringify(payload))\n // alert(JSON.stringify(payload))\n // addNotification({\n // title: 'Pikmykid',\n // subtitle: payload.notification.title,\n // message: payload.notification.body,\n // theme: 'darkblue',\n // native: true\n // })\n // })\n // .catch((err) => console.log('failed: ', err));\n // navigator.serviceWorker.addEventListener(\"message\",(message) =>{\n // console.log(JSON.stringify(message))\n // });\n }\n\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"ChildManagement\",\n screen: GLOBAL_CONST.SCREEN_NAMES.MANAGE_CHILDREN_TAB,\n title: this.props.t(\"manageChildrenScr-manageChildren\"),\n });\n };\n\n componentWillUnmount() {\n this.setState({ OtherSchoolStudentList: [], YourSchoolStudentList: [] });\n }\n\n checkTokenValid = () => {\n const { doGetIsTokenValid } = this.props;\n doGetIsTokenValid();\n };\n\n doRefreshListing = () => {\n this.checkTokenValid();\n this.dosetHelpList();\n };\n\n initialLoad = () => {\n this.getSchool(this.getStudents);\n this.fetchOtherChildrenList();\n };\n\n getStudents = () => {\n const { doGetStudentsList } = this.props;\n let currenDate = moment().format(\"MM-DD-YYYY\");\n doGetStudentsList({ currenDate });\n };\n\n getSchool = (callback) => {\n const { doGetSchoolDetails } = this.props;\n doGetSchoolDetails().then(() => {\n callback();\n });\n };\n\n fetchOtherChildrenList = () => {\n const { doGetOtherChildrenList } = this.props;\n doGetOtherChildrenList();\n };\n\n buildYourChildrenList = () => {\n const { studentsList, schoolInfo, isTermsAccepted } = this.props;\n const schools = schoolInfo;\n const students = studentsList && studentsList.TodaysStudents;\n const { yourChildrenRefreshing } = this.state;\n let needBackToSchool = false;\n\n if (!schools || !students) return;\n\n const kids = [];\n for (let i = 0; i < schools.length; i++) {\n let schoolstudents = [];\n const LastDayOfSchool = new Date(schools[i].Dates.LastDayOfSchool);\n const isLastDayOfSchoolPast = moment(LastDayOfSchool).isBefore(moment());\n for (let j = 0; j < students.length; j++) {\n if (\n schools[i].SchoolID === students[j].SchoolID &&\n students[j].IsDelegation === false\n ) {\n students[j].isLastDayOfSchoolPast = isLastDayOfSchoolPast;\n schoolstudents.push(students[j]);\n }\n if (students[j].AskForBackToSchool) needBackToSchool = true;\n }\n schoolstudents = schoolstudents.sort((a, b) =>\n a.Firstname.toLowerCase() > b.Firstname.toLowerCase()\n ? 1\n : b.Firstname.toLowerCase() > a.Firstname.toLowerCase()\n ? -1\n : 0\n );\n\n if (schoolstudents.length > 0) {\n let sectiondata = {\n schoolId: schools[i].SchoolID,\n address: schools[i].Address,\n schoolzip: schools[i].State + \" \" + schools[i].Zip,\n title: schools[i].Name,\n schoolLat: schools[i].Coordinates.latitude,\n schoolLong: schools[i].Coordinates.longitude,\n AnnounceDistance: schools[i].AnnounceDistance,\n school: schools[i],\n data: schoolstudents,\n isLastDayOfSchoolPast,\n };\n kids.push(sectiondata);\n }\n }\n const sortedSchoolStudentList = kids.sort((a, b) =>\n a.title.toLowerCase() > b.title.toLowerCase()\n ? 1\n : b.title.toLowerCase() > a.title.toLowerCase()\n ? -1\n : 0\n );\n this.setState({\n YourSchoolStudentList: sortedSchoolStudentList,\n needBackToSchool,\n });\n\n if (isTermsAccepted) {\n this.processBackToSchool(needBackToSchool);\n }\n };\n\n getYourChildrenView = () => {\n const { YourSchoolStudentList } = this.state;\n const { isFetching } = this.props;\n const childViews = [];\n\n for (var i = 0; i < YourSchoolStudentList.length; i++) {\n const { data, school } = YourSchoolStudentList[i];\n for (var k = 0; k < data.length; k++) {\n childViews.push(this.renderMyChild(data[k], school));\n }\n }\n // if (isFetching) {\n // return (\n //
    \n // \n //
    \n // );\n // } else {\n // return childViews;\n // }\n return childViews;\n };\n\n renderMyChild = (child, school) => {\n //console.log(\"child.StudentID \", child.StudentID)\n return (\n \n );\n };\n\n buildOtherChildrenList = () => {\n const { otherChildrens, schoolInfo } = this.props;\n const schools = schoolInfo;\n const children = otherChildrens;\n if (!schools || !children) return;\n\n const kids = [];\n for (let i = 0; i < schools.length; i++) {\n let schoolstudents = [];\n for (let j = 0; j < children.length; j++) {\n if (schools[i].SchoolID === children[j].SchoolID) {\n schoolstudents.push(children[j]);\n }\n }\n\n schoolstudents = schoolstudents.sort((a, b) =>\n a.StudentName.FirstName.toLowerCase() >\n b.StudentName.FirstName.toLowerCase()\n ? 1\n : b.StudentName.FirstName.toLowerCase() >\n a.StudentName.FirstName.toLowerCase()\n ? -1\n : 0\n );\n\n if (schoolstudents.length > 0) {\n let sectiondata = {\n schoolId: schools[i].SchoolID,\n address: schools[i].Address,\n schoolzip: schools[i].State + \" \" + schools[i].Zip,\n title: schools[i].Name,\n schoolLat: schools[i].Coordinates.latitude,\n schoolLong: schools[i].Coordinates.longitude,\n AnnounceDistance: schools[i].AnnounceDistance,\n data: schoolstudents,\n };\n kids.push(sectiondata);\n }\n }\n\n const sortedSchoolStudentList = kids.sort((a, b) =>\n a.title.toLowerCase() > b.title.toLowerCase()\n ? 1\n : b.title.toLowerCase() > a.title.toLowerCase()\n ? -1\n : 0\n );\n this.setState({ OtherSchoolStudentList: sortedSchoolStudentList });\n };\n\n getOtherChildrenView = () => {\n const { OtherSchoolStudentList } = this.state;\n const { isFetching } = this.props;\n const childViews = [];\n for (var i = 0; i < OtherSchoolStudentList.length; i++) {\n const { data, title } = OtherSchoolStudentList[i];\n for (var k = 0; k < data.length; k++) {\n childViews.push(this.renderOtherChild(data[k], title));\n }\n }\n\n return childViews;\n };\n\n renderOtherChild = (child, title) => {\n // console.log(\"child.StudentID \", child.StudentID)\n return (\n \n );\n };\n\n showEmpty = () => {\n let noKidsTitle = this.props.t(\"dashBoardScr-noKidsTitle\");\n let noKidsDetail = this.props.t(\"dashBoardScr-noKidsDetail\");\n let noKidsData = { noKidsTitle, noKidsDetail };\n\n return ;\n };\n\n componentDidUpdate() {\n const { yourChildrenRefreshing, otherChildrenRefreshing } = this.state;\n\n const {\n isFetching,\n isTokenValidResponse,\n doGetIsTokenValidClear,\n doLogoutUser,\n fetchStudentListDone,\n fetchSchoolInfoDone,\n fetchOtherChildrenDone,\n doSchoolAndKidsFetchDone,\n doOtherChildrenFetchDone,\n } = this.props;\n\n if (isTokenValidResponse) {\n if (isTokenValidResponse.Success === false) {\n doLogoutUser();\n this.props.history.push(\"/\");\n } else {\n this.initialLoad();\n }\n doGetIsTokenValidClear();\n }\n\n if (yourChildrenRefreshing === true) {\n if (isFetching === false)\n this.setState({ yourChildrenRefreshing: false, isPullRefresh: false });\n }\n if (otherChildrenRefreshing === true) {\n if (isFetching === false)\n this.setState({ otherChildrenRefreshing: false, isPullRefresh: false });\n }\n\n if (fetchStudentListDone === true && fetchSchoolInfoDone === true) {\n this.buildYourChildrenList();\n doSchoolAndKidsFetchDone();\n }\n if (fetchOtherChildrenDone === true) {\n this.buildOtherChildrenList();\n doOtherChildrenFetchDone();\n }\n }\n\n showError = () => {\n const { tokenError, schoolFetchError, studentFetchError } = this.props;\n const msg =\n (tokenError && tokenError.message) ||\n (schoolFetchError && schoolFetchError.message) ||\n (studentFetchError && studentFetchError.message);\n return
    {msg}
    ;\n };\n\n ListEmptyComponent = () => {\n const { otherChildrenRefreshing } = this.state;\n const { isFetching, isTokenValidResponse, userLoginInfo } = this.props;\n\n if (\n isFetching === false &&\n isTokenValidResponse === null &&\n !otherChildrenRefreshing\n ) {\n return (\n
    \n
    \n
    \n
    \n

    {this.props.t(\"OtherChildrenNoRecord1\")}

    \n

    \n {this.props.t(\"OtherChildrenNoRecord2\")}\n \n {userLoginInfo\n ? userLoginInfo.CountryCode + userLoginInfo.mobile\n : \"\"}\n \n

    \n

    {this.props.t(\"OtherChildrenNoRecord3\")}

    \n
    \n
    \n
    \n
    \n );\n } else {\n return null;\n }\n };\n\n openBarCodeScanner = () => {\n this.props.doShowModal({\n modalScreenName: \"scanBarCode\",\n modalClassName: \"barCodeScannerModal\",\n params: {\n doCallbackRefresh: this.doRefreshListing,\n },\n });\n };\n\n render() {\n const { isFetching, displayAds } = this.props;\n const { YourSchoolStudentList, OtherSchoolStudentList } = this.state;\n return (\n
    \n \n\n
    \n
    \n
    \n
    \n
    \n

    \n {this.props.t(\"manageChildrenScr-manageChildren\")}\n

    \n

    \n {this.props.t(\"manageChildrenScr-manageChildrenDelegate\")}\n

    \n
    \n
    \n
    \n
    \n {moment().format(\"MMM DD, YYYY\")}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
      \n
    • \n \n {this.props.t(\"selectCheckScr-children\")}\n \n
    • \n
    • \n \n {this.props.t(\"manageChildrenScr-otherChildren\")}\n \n
    • \n
    \n
    \n \n {isFetching ? (\n
    \n \n
    \n ) : !isFetching && YourSchoolStudentList.length === 0 ? (\n this.showEmpty()\n ) : (\n
    \n \n \n \n \n \n \n \n \n \n {this.getYourChildrenView()}\n
    \n {this.props.t(\"manageChildrenScr-childLabel\")}\n \n {this.props.t(\n \"manageChildrenScr-dismissalModeLabel\"\n )}\n \n {this.props.t(\n \"manageChildrenScr-dismissalStatusLabel\"\n )}\n \n {this.props.t(\"School\")}\n
    \n
    \n )}\n
    \n \n {!isFetching && OtherSchoolStudentList.length === 0 ? (\n this.ListEmptyComponent()\n ) : (\n \n \n \n \n \n \n \n \n \n {this.getOtherChildrenView()}\n
    \n {this.props.t(\"manageChildrenScr-childLabel\")}\n \n {this.props.t(\"manageChildrenScr-ParentsName\")}\n \n {this.props.t(\"otherChildrenScr-nextPickupLabel\")}\n \n {this.props.t(\"School\")}\n
    \n )}\n
    \n
    \n \n \n
    \n {\n this.openBarCodeScanner();\n }}\n >\n \n \n \n
    \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n otherChildrens: state.student.otherChildrens,\n studentsList: state.student.studentsList,\n schoolInfo: state.student.schoolInfo,\n fetchStudentListDone: state.student.fetchStudentListDone,\n fetchSchoolInfoDone: state.student.fetchSchoolInfoDone,\n fetchOtherChildrenDone: state.student.fetchOtherChildrenDone,\n isTokenValidResponse: state.userAccount.isTokenValidResponse,\n isFetching: loadingSelector(state),\n error: state.student.error,\n\n tokenError: state.userAccount.tokenError,\n userLoginInfo: state.userAccount.userLoginInfo,\n schoolFetchError: state.student.schoolFetchError,\n studentFetchError: state.student.studentFetchError,\n otherChildrensFetchError: state.student.otherChildrensFetchError,\n setHelpListData: state.userAccount.setHelpListData,\n displayAds: state.userAccount.displayAds,\n isTermsAccepted: state.userAccount.isTermsAccepted,\n getBackSchoolInfoData: state.student.getBackSchoolInfo,\n nextAskMeLater: state.userAccount.nextAskMeLater,\n };\n}\n\nfunction mapDispatchToProps(dispatch) {\n return {\n doGetOtherChildrenList: () => dispatch(getOtherChildrenDetails()),\n doGetStudentsList: (data) => dispatch(getStudentsList(data)),\n doGetSchoolDetails: () => dispatch(getSchoolDetails()),\n doGetIsTokenValid: (data) => dispatch(getIsTokenValid(data)),\n doGetIsTokenValidClear: () => dispatch(getIsTokenValidClear()),\n doSchoolAndKidsFetchDone: () => dispatch(schoolAndKidsFetchDone()),\n doOtherChildrenListClear: () => dispatch(otherChildrenListClear()),\n doLogoutUser: () => dispatch(logoutUser()),\n doOtherChildrenFetchDone: () => dispatch(otherChildrenFetchDone()),\n doGetbacktoschoolInfo: (data) => dispatch(getBackToSchoolInformation(data)),\n\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n };\n}\n\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(ChildManagement)\n);\n","export default __webpack_public_path__ + \"static/media/successIllustration.2c10b670.svg\";","export default __webpack_public_path__ + \"static/media/rejectedIcon.6f3393a8.svg\";","export default __webpack_public_path__ + \"static/media/verifiedIcon.527eb674.svg\";","export default __webpack_public_path__ + \"static/media/successChecked.0088cf75.svg\";","export default __webpack_public_path__ + \"static/media/warningIcon.4b689708.svg\";","export default __webpack_public_path__ + \"static/media/cancelReviewIWarnIcon.fa63c380.svg\";","export default __webpack_public_path__ + \"static/media/deleteIcon.c658684a.svg\";","import React, { useState, useRef } from \"react\";\n\nimport ReactCrop, {\n centerCrop,\n makeAspectCrop,\n Crop,\n PixelCrop,\n} from \"react-image-crop\";\nimport { withTranslation } from \"react-i18next\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { Dropdown } from \"react-bootstrap\";\n\nimport {\n addApprovedDelegates,\n addApprovedDelegatesClear,\n updateApprovedDelegatesChange,\n updateApprovedDelegatesChangeClear,\n deleteDelegate,\n deleteDelegateClear,\n delegateImageUpload,\n manualReviewRequest,\n manualReviewCancel,\n delegateImageUploadErrorClear,\n manualRequestClear,\n manualReviewCancelClear,\n} from \"../../common/actions/userAccount\";\nimport {\n showModal,\n hideModal,\n setHelpList,\n setOldHelpSetting,\n} from \"../../common/actions/userAccount\";\nimport {\n getStudentsList,\n getRelationship,\n} from \"../../common/actions/students\";\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\nimport {\n nextField,\n formatPhone,\n createImageFileURL,\n checkIsEmergency,\n} from \"../../helper/utility\";\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport { confirmAlert } from \"react-confirm-alert\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport ImageUploader from \"react-image-upload\";\nimport \"react-image-upload/dist/index.css\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\nimport contact3 from \"../assets/contacts/contact3.jpg\";\nimport successIllustration from \"../assets/commonImages/successIllustration.svg\";\nimport verifiedIcon from \"../assets/commonImages/verifiedIcon.svg\";\nimport rejectedIcon from \"../assets/commonImages/rejectedIcon.svg\";\nimport warningIcon from \"../assets/commonImages/warningIcon.svg\";\nimport cancelReviewIWarnIcon from \"../assets/commonImages/cancelReviewIWarnIcon.svg\";\nimport deleteIcon from \"../assets/commonImages/deleteIcon.svg\";\nimport successChecked from \"../assets/commonImages/successChecked.svg\";\n\nimport { FilePicker } from \"react-file-picker\";\nimport { ImagePicker } from \"react-file-picker\";\nimport Resizer from \"react-image-file-resizer\";\nimport Modal from \"react-modal\";\nimport { Camera } from \"react-camera-pro\";\nimport RingLoader from \"react-spinners/ClipLoader\";\n\nimport \"react-image-crop/dist/ReactCrop.css\";\nimport { SelectRelationship } from \"../ChildManagement\";\n\ntoast.configure();\nconst loadingSelector = createLoadingSelector([\n \"approved_delegates\",\n \"approved_delegates_change\",\n \"delegates_set_deleted\",\n \"request_manual_review\",\n \"cancel_manual_review\",\n]);\n\nconst loadingPhotoSelector = createLoadingSelector([\"upload_delegate_image\"]);\n// forwardRef again here!\n// Dropdown needs access to the DOM of the Menu to measure it\n// const Search =\n// React.forwardRef <\n// HTMLInputElement >\n// function Search(props, ref) {\n// return ;\n// };\nconst NOT_SPECIFIED = \"Not specified\";\nclass AddContact extends React.Component {\n constructor(props) {\n super(props);\n const { delegate } = this.props;\n //delegate.isEmergency = true;\n\n this.state = {\n firstNameInvalid: \"\",\n lastNameInvalid: \"\",\n mobileNumberInvalid: \"\",\n nameInvalid: \"\",\n firstName: delegate ? delegate.Firstname : \"\",\n lastName: delegate ? delegate.Lastname : \"\",\n mobileNumber: delegate ? delegate.PhoneNumber : \"\",\n actionName: \"addContact\",\n avatarSource: null,\n isModalVisible: false,\n isImageWizardVisible: false,\n isPreviewVisible: false,\n isRejectedVisible: false,\n isRemovePhotoPromptVisible: false,\n delegateImageUploadError: null,\n isManualReviewSubmitSuccess: false,\n isCancelManualReviewSubmitSuccess: false,\n isAddContactSuccess: false,\n contactRecord: delegate,\n tempNewDelegate: null,\n isCameraLaunch: false,\n isImageCrop: false,\n captureImage: null,\n isContactFormVisible: true,\n selectedChildren: [],\n isShowKidForEmergency: true,\n selectedStudents: this.getStudentsInfo(),\n isChangeRelation: true,\n };\n\n this.webCamera = React.createRef();\n this.CustomMenu = React.forwardRef(function CustomMenu(\n { children, style, className, \"aria-labelledby\": labeledBy },\n ref\n ) {\n const [value, setValue] = React.useState(\"\");\n\n return (\n \n setValue(e.target.value)}\n value={value}\n />\n
      \n {React.Children.toArray(children).filter(\n (child) =>\n !value ||\n child.props.children.props.children\n .toLowerCase()\n .startsWith(value)\n )}\n
    \n \n );\n });\n this.setValue = ({ target: { value: serchedvalue } }) => {\n this.setState({ serchedvalue });\n };\n }\n\n // handleFirstNameChange = ({ target: { value: firstName } }) =>\n // this.setState({ firstName, firstNameInvalid: \"\" });\n componentDidMount() {\n this.dosetHelpList();\n }\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"ChildManagement\",\n screen: GLOBAL_CONST.SCREEN_NAMES.ADD_CONTACT,\n title: this.props.t(\"Create_Contact\"),\n });\n };\n openHelpModal = () => {\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n },\n });\n };\n getStudentsInfo = () => {\n const { studentsList, delegate } = this.props;\n const students = studentsList && studentsList.TodaysStudents;\n let selectedStudents = {};\n console.log(\"delegate---->\", delegate);\n console.log(\"students---->\", students);\n if (students && students) {\n for (var i = 0; i < students.length; i++) {\n if(students[i].IsDelegation) continue\n let matchRecord = null;\n if (\n delegate !== null &&\n delegate !== undefined &&\n delegate.Students !== null &&\n delegate.Students !== undefined &&\n delegate.Students.length > 0\n ) {\n matchRecord = delegate.Students.find(\n (item) => students[i].StudentID === item.StudentId\n );\n }\n if (matchRecord) {\n matchRecord.Id = students[i].StudentID;\n selectedStudents[students[i].StudentID] = matchRecord;\n // 07/27/22 Add not specified on request of backend as backend won't be removing mandatory condition for relationship\n if (\n matchRecord.RelationshipTypeOther === \"\" ||\n matchRecord.RelationshipTypeOther === NOT_SPECIFIED\n )\n matchRecord.RelationshipTypeOther = null;\n console.log(\"matchRecord\", matchRecord);\n } else {\n selectedStudents[students[i].StudentID] = {\n Id: students[i].StudentID,\n IsEmergency: false,\n StudentId: students[i].StudentID,\n };\n console.log(\n \"not matchRecord\",\n selectedStudents[students[i].StudentID]\n );\n }\n }\n }\n console.log(\"----------------\", selectedStudents);\n return selectedStudents;\n };\n submitForm = () => {\n const { firstName, lastName, mobileNumber, contactRecord } = this.state;\n const { doAddApprovedDelegates, userLoginInfo } = this.props;\n const { delegate } = this.props;\n const regPhone = /[0-9]/;\n this.setState({\n actionName: \"addContact\",\n });\n\n const selectedStudents = { ...this.state.selectedStudents };\n console.log(\"selectedStudents========>\", selectedStudents);\n const Students = [];\n for (var key in selectedStudents) {\n const studentInfo = { ...selectedStudents[key] };\n // 07/27/22 Add not specified on request of backend as backend won't be removing mandatory condition for relationship\n if (\n studentInfo.IsEmergency === true &&\n (studentInfo.RelationshipTypeId === null ||\n studentInfo.RelationshipTypeId === undefined) &&\n (studentInfo.RelationshipTypeOther === null ||\n studentInfo.RelationshipTypeOther === undefined)\n ) {\n studentInfo.RelationshipTypeOther = NOT_SPECIFIED;\n }\n Students.push(studentInfo);\n }\n\n console.log(\"Students---------\" + Students);\n\n if (firstName == null || firstName == \"\") {\n this.setState({ firstNameInvalid: this.props.t(\"First_Name_Alert\") });\n return;\n }\n if (lastName === null || lastName == \"\") {\n this.setState({ lastNameInvalid: this.props.t(\"Last_Name_Alert\") });\n return;\n }\n if (\n mobileNumber === \"\" ||\n regPhone.test(mobileNumber) === false ||\n mobileNumber.length <= 7\n ) {\n this.setState({\n mobileNumberInvalid: this.props.t(\"regPhoneScr-phoneInvalid\"),\n });\n return;\n } else {\n if (contactRecord) {\n doAddApprovedDelegates({\n list_parentDelegateID: contactRecord.List_ParentDelegateID,\n phoneNumber: mobileNumber,\n firstName,\n lastName,\n Students,\n });\n } else if (userLoginInfo && userLoginInfo.userId) {\n doAddApprovedDelegates({\n list_parentDelegateID: userLoginInfo.userId,\n phoneNumber: mobileNumber,\n firstName,\n lastName,\n });\n }\n }\n };\n updateDelegateStatus = () => {\n const { doUpdateApprovedDelegatesChange } = this.props;\n const { contactRecord } = this.state;\n this.setState({\n actionName: \"updateStatus\",\n });\n let activeFlag;\n if (contactRecord.IsActive == true) {\n activeFlag = false;\n } else if (contactRecord.IsActive == false) {\n activeFlag = true;\n }\n\n doUpdateApprovedDelegatesChange({\n list_parentDelegateID: contactRecord.List_ParentDelegateID,\n isActive: activeFlag,\n });\n };\n\n deleteDelegate = () => {\n this.setState({\n actionName: \"deleteContact\",\n });\n confirmAlert({\n title: this.props.t(\"Delete_Delegate\"),\n message: this.props.t(\"delete_Confirm\"),\n buttons: [\n {\n label: this.props.t(\"DELETE\"),\n onClick: () => {\n const { doDeleteDelegate } = this.props;\n const { contactRecord } = this.state;\n\n doDeleteDelegate({\n list_ParentDelegateId: contactRecord.List_ParentDelegateID,\n });\n },\n },\n {\n label: this.props.t(\"Cancel\"),\n className: \"cancel-btn\",\n },\n ],\n });\n };\n\n addEmergencyContactForSingleKid = () => {\n alert(\"Delegate has been Added to emergency contacts\");\n };\n\n removeEmergencyContactForSingleKid = () => {\n alert(\"Remove from emergency contact\");\n };\n\n uploadDelegatePhoto = () => {\n const { doUploadDelegatePhoto } = this.props;\n const { avatarSource, contactRecord } = this.state;\n console.log(\"avatarSource\", avatarSource);\n doUploadDelegatePhoto({\n parentDelegateID: contactRecord.List_ParentDelegateID,\n image: avatarSource,\n });\n };\n\n componentDidUpdate() {\n const {\n isRejectedVisible,\n isManualReviewSubmitSuccess,\n isCancelManualReviewSubmitSuccess,\n delegateImageUploadError,\n isModalVisible,\n } = this.state;\n const {\n doAddApprovedDelegatesClear,\n approvedDelegatesResponse,\n error,\n doUpdateApprovedDelegatesChangeClear,\n approvedDelegatesChangeResponse,\n delegatesSetDeletedResponse,\n doDeleteDelegateClear,\n delegate,\n delegateImageUploadErrorResponse,\n doDelegateImageUploadErrorClear,\n manualReviewRequestResponse,\n doManualRequestClear,\n delegateImageUploadResponse,\n manualReviewCancelResponse,\n doManualReviewCancelClear,\n } = this.props;\n\n if (delegateImageUploadErrorResponse && !isRejectedVisible) {\n console.log(\n \"*********** INSIDE delegateImageUploadErrorResponse CHECKS\",\n delegateImageUploadErrorResponse\n );\n this.setState(\n {\n delegateImageUploadError: delegateImageUploadErrorResponse,\n isPreviewVisible: false,\n isRejectedVisible: true,\n },\n doDelegateImageUploadErrorClear\n );\n toast.error(\n delegateImageUploadErrorResponse.Message ||\n delegateImageUploadErrorResponse.Message,\n {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n }\n );\n }\n if (delegateImageUploadResponse && isModalVisible) {\n this.setState(\n {\n isContactFormVisible: true,\n isModalVisible: false,\n isImageWizardVisible: false,\n isPreviewVisible: false,\n isRejectedVisible: false,\n isRemovePhotoPromptVisible: false,\n },\n doDelegateImageUploadErrorClear\n );\n toast.success(\n delegateImageUploadResponse.Message ||\n delegateImageUploadResponse.Message,\n {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n }\n );\n }\n if (manualReviewRequestResponse && !isManualReviewSubmitSuccess) {\n toast.info(\"Manual request submitted successfully\", {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n\n this.setState(\n { isManualReviewSubmitSuccess: true },\n doManualRequestClear\n );\n }\n if (manualReviewCancelResponse && !isCancelManualReviewSubmitSuccess) {\n toast.info(\"Manual request cancellation submitted\", {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n this.setState(\n { isCancelManualReviewSubmitSuccess: true, avatarSource: null },\n doManualReviewCancelClear\n );\n }\n\n if (error) {\n toast.error(error.Message || error.message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n\n doAddApprovedDelegatesClear();\n } else if (approvedDelegatesResponse.length > 0) {\n const { contactRecord } = this.state;\n\n if (contactRecord) {\n toast.success(this.props.t(\"saved_delegate\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n doAddApprovedDelegatesClear();\n this.backToContactList();\n } else {\n this.setState(\n {\n isAddContactSuccess: true,\n tempNewDelegate: approvedDelegatesResponse[0],\n },\n doAddApprovedDelegatesClear\n );\n }\n\n //doAddApprovedDelegatesClear();\n //this.backToContactList();\n } else if (approvedDelegatesChangeResponse) {\n const { contactRecord } = this.state;\n if (contactRecord.IsActive == true) {\n toast.success(this.props.t(\"deactivated_delegate\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n } else if (contactRecord.IsActive == false) {\n toast.success(this.props.t(\"activated_delegate\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n }\n\n doUpdateApprovedDelegatesChangeClear();\n this.backToContactList();\n } else if (delegatesSetDeletedResponse) {\n toast.success(this.props.t(\"deleted_delegate\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n doDeleteDelegateClear();\n this.backToContactList();\n }\n }\n\n handleFirstNameChange = ({ target: { value: firstName } }) =>\n this.setState({ firstName, firstNameInvalid: \"\" });\n\n handleLastNameChange = ({ target: { value: lastName } }) =>\n this.setState({ lastName, lastNameInvalid: \"\" });\n\n handleMobileNumberChange = ({ target: { value: mobileNumber } }) => {\n this.setState({\n mobileNumber: formatPhone(mobileNumber),\n mobileNumberInvalid: \"\",\n });\n };\n getDelegateImage = () => {\n const { isModalVisible, avatarSource, contactRecord } = this.state;\n console.log(\"isModalVisible\", isModalVisible);\n console.log(\"photo url \" + contactRecord.PhotoUrl);\n console.log(\"getDelegateImage avatarSource \", avatarSource);\n console.log(contactRecord.ImageInReview);\n if (!isModalVisible && avatarSource) {\n return URL.createObjectURL(avatarSource);\n } else if (contactRecord && contactRecord.PhotoUrl) {\n return contactRecord.PhotoUrl;\n }\n return null;\n };\n\n removePhotoView = () => {\n const { avatarSource, contactRecord } = this.state;\n\n return (\n
    \n
    \n
    \n \n
    \n
    \n

    {this.props.t(\"remove_photo_text\")}

    \n

    \n {this.props.t(\"confirm_removephoto_contact\")}\n

    \n
    \n
    \n\n
    \n {\n //this.enableDisableRemoveDialog();\n this.hideUploadPhotoWizard();\n this.props.doManualReviewCancel(\n contactRecord.List_ParentDelegateID\n );\n }}\n >\n {this.props.t(\"yes_remove\")}\n \n
    \n
    \n {\n this.hideUploadPhotoWizard();\n }}\n >\n {this.props.t(\"Close_Button\")}\n \n
    \n
    \n );\n };\n\n showPreviewView = () => {\n const { avatarSource } = this.state;\n const { isProcessingVisible } = this.props;\n return (\n
    \n
    \n
    \n
    \n
    \n

    {this.props.t(\"preview_label\")}

    \n
    \n
    \n
    \n
    \n {avatarSource ? (\n \n ) : (\n \n )}\n
    \n
    \n
    \n {!isProcessingVisible && (\n {\n this.setState(\n {\n isManualReviewSubmitSuccess: false,\n isCancelManualReviewSubmitSuccess: false,\n delegateImageUploadError: null,\n },\n this.uploadDelegatePhoto\n );\n }}\n >\n {this.props.t(\"Confirm_Button\")}\n \n )}\n {isProcessingVisible && (\n
    \n  \n \n {this.props.t(\"processing_text\")}\n \n
    \n )}\n
    \n {!isProcessingVisible && (\n
    \n {\n this.setState(\n { avatarSource: null },\n this.hideUploadPhotoWizard\n );\n }}\n >\n {this.props.t(\"Close_Button\")}\n \n
    \n )}\n
    \n
    \n
    \n );\n };\n renderRejectedImagePreview = () => {\n const { avatarSource, delegateImageUploadError } = this.state;\n const { isProcessingVisible } = this.props;\n return (\n
    \n
    \n
    \n

    {this.props.t(\"preview_label\")}

    \n
    \n
    \n
    \n
    \n {avatarSource ? (\n \n \n \n \n \n \n ) : (\n \n )}\n
    \n
    \n {delegateImageUploadError && delegateImageUploadError.Message}\n
    \n
    \n
    \n {\n this.setState({\n isModalVisible: true,\n isImageWizardVisible: true,\n isPreviewVisible: false,\n isRejectedVisible: false,\n });\n }}\n >\n {this.props.t(\"upload_anotherphoto_text\")}\n \n
    \n
    \n {this.props.t(\"doyouthink_incorrect_text\")}\n
    \n
    \n {\n const { delegateImageUploadError } = this.state;\n if (delegateImageUploadError && delegateImageUploadError.Data) {\n this.props.doManualReviewRequest(\n delegateImageUploadError.Data.RejectedImageId\n );\n }\n this.hideUploadPhotoWizard();\n }}\n >\n {this.props.t(\"request_manual_review\")}\n \n
    \n

    \n \n {this.props.t(\"mighttakeabout_1businessday\")}\n \n

    \n
    \n
    \n {\n this.hideUploadPhotoWizard();\n }}\n >\n {this.props.t(\"Close_Button\")}\n \n
    \n
    \n );\n };\n\n processImage = async (captureResponse, callback) => {\n let processImageFile = captureResponse;\n //const cropImageFile = createImageFileURL(captureResponse);\n //this.showImageCropper(cropImageFile);\n if (\n typeof captureResponse === \"string\" ||\n captureResponse instanceof String\n ) {\n const resultFile = await this.dataUrlToFile(captureResponse);\n console.log(\"processImageFile\", resultFile);\n processImageFile = resultFile;\n }\n\n let asset;\n //console.log(\"cropImageFile\", cropImageFile);\n console.log(\"captureResponse\", processImageFile);\n // if (captureResponse.target.files && captureResponse.target.files[0]) {\n // let imgURL = captureResponse.target.files[0];\n\n // this.setState(\n // {\n // isPhotoChanged: true,\n // ImageFile: captureResponse.target.files,\n // avatarSource: URL.createObjectURL(imgURL),\n // },\n // callback\n // );\n // }\n if (processImageFile) asset = processImageFile;\n if (!asset || asset === undefined) {\n console.log(\"image not available\");\n alert(\"Unable to capture image, please try again\");\n return;\n }\n console.log(\n \"processImage Response filesize with imageresiser \",\n asset.size\n );\n console.log(\n \"processImage Response filesize with imageresiser \",\n processImageFile\n );\n //console.log('processImage Response filesize with path ', path);\n const compressSizer = (size) => {\n const MB = size / Math.pow(1024, 2);\n console.log(\"processImage compressSizer \" + MB + \" MB\");\n if (Math.round(MB) === 0) return 100;\n if (Math.round(MB) === 1) return 95;\n if (Math.round(MB) === 2) return 90;\n if (Math.round(MB) === 3) return 85;\n if (Math.round(MB) === 4) return 80;\n if (Math.round(MB) === 5) return 75;\n if (Math.round(MB) === 10) return 70;\n if (Math.round(MB) === 15) return 65;\n if (Math.round(MB) === 20) return 60;\n if (Math.round(MB) >= 25) return 50;\n };\n const compress = compressSizer(asset.size);\n let height = asset.height;\n let width = asset.width;\n let resize;\n if (height === width) resize = { height: 480, width: 480 };\n else if (height > width) resize = { height: 480 };\n else resize = { width: 720 };\n console.log(`compress=${compress} resize=${JSON.stringify(resize)} `);\n\n try {\n Resizer.imageFileResizer(\n processImageFile,\n resize.width ? resize.width : resize.height,\n height,\n \"JPEG\",\n compress,\n 0,\n (resizeResponse) => {\n console.log(\"Image REsizer URI >>>\", resizeResponse);\n this.setState(\n {\n isPhotoChanged: true,\n avatarSource: resizeResponse,\n },\n callback\n );\n },\n \"file\"\n );\n } catch (err) {\n console.log(\"Resizer err>>>\", err);\n }\n };\n showImageCropper = () => {\n const { isImageCrop, captureImage } = this.state;\n let imageURL = createImageFileURL(captureImage);\n return (\n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n };\n selectPhotoTapped = () => {\n confirmAlert({\n customUI: ({ onClose }) => {\n return (\n
    \n
    \n
    \n
    \n
    \n

    \n {this.props.t(\"editChildScr-selectPicture\")}\n

    \n
    \n
    \n
    \n \n {this.props.t(\"editChildScr-chooseLibrary\")}\n \n {\n //this.showImageCropper(event.target.files[0])\n // onClose();\n // this.setState({\n // captureImage: event.target.files[0],\n // isImageCrop: true,\n // });\n this.processImage(event.target.files[0], () => {\n onClose();\n this.setState({\n isModalVisible: true,\n isImageWizardVisible: false,\n isPreviewVisible: true,\n isRejectedVisible: false,\n });\n });\n }}\n />\n\n {\n onClose();\n this.setState({ isCameraLaunch: true });\n }}\n >\n {this.props.t(\"editChildScr-takePhoto\")}\n \n \n {this.props.t(\"Close_Button\")}\n \n
    \n
    \n
    \n
    \n );\n },\n });\n };\n cameraLauncher = (event) => {\n console.log(\"Camer Event\", event);\n return (\n
    \n \n {\n const response = this.webCamera.current.takePhoto();\n\n this.processImage(response, () => {\n this.setState({\n isModalVisible: true,\n isImageWizardVisible: false,\n isPreviewVisible: true,\n isRejectedVisible: false,\n isCameraLaunch: false,\n });\n });\n // });\n }}\n >\n Take photo\n \n
    \n );\n };\n dataUrlToFile = async (dataUrl) => {\n var filename = new Date().getTime();\n try {\n const result = await fetch(dataUrl)\n .then((res) => res.blob())\n .then((blob) => {\n const captureResponse = new File([blob], filename, {\n type: \"image/jpeg\",\n });\n console.log(\"captured file--->\", captureResponse);\n return captureResponse;\n });\n // console.log(\"result getSiteAccessPermission \", result)\n if (result) return result;\n else return {};\n } catch (error) {\n console.error(error);\n }\n return {};\n };\n\n showDialogueBox = () => {\n const {\n isImageWizardVisible,\n isModalVisible,\n isPreviewVisible,\n isRejectedVisible,\n isCameraLaunch,\n } = this.state;\n return (\n
    \n \n
    \n
    \n this.setState({ isCameraLaunch: false })}\n >\n \n \n {this.cameraLauncher()}\n
    \n
    \n
    \n
    \n );\n };\n\n showGuidelinesView = () => {\n return (\n
    \n
    \n
    \n \n
    \n
    \n

    {this.props.t(\"guidelines_title\")}

    \n
    \n
    \n
    \n
      \n
    • {this.props.t(\"photoupload_guideline1\")}
    • \n
    • {this.props.t(\"photoupload_guideline2\")}
    • \n
    • {this.props.t(\"photoupload_guideline3\")}
    • \n
    \n
    \n
    \n {\n this.selectPhotoTapped();\n }}\n >\n {this.props.t(\"choose_photo\")}\n \n
    \n
    \n {\n this.hideUploadPhotoWizard();\n }}\n >\n {this.props.t(\"Close_Button\")}\n \n
    \n
    \n );\n };\n\n showUploadPhotoWizard = () => {\n this.setState({\n isContactFormVisible: false,\n isAddContactSuccess: false,\n isModalVisible: true,\n isImageWizardVisible: true,\n isPreviewVisible: false,\n isRejectedVisible: false,\n });\n };\n hideUploadPhotoWizard = () => {\n this.setState({\n isContactFormVisible: true,\n isModalVisible: false,\n isImageWizardVisible: false,\n isPreviewVisible: false,\n isRejectedVisible: false,\n isRemovePhotoPromptVisible: false,\n });\n };\n setSelectedKids = (item) => {\n const { selectedChildren } = this.state;\n\n if (selectedChildren.includes(item.StudentID)) {\n selectedChildren.splice(selectedChildren.indexOf(item.StudentID), 1);\n } else {\n selectedChildren.push(item.StudentID);\n }\n\n this.setState({ selectedChildren });\n };\n\n setRelationWithStudent = (StudentID, relation) => {\n let { selectedStudentRelations } = this.state;\n\n if (\n selectedStudentRelations.filter((student) => {\n if (parseInt(student.StudentID) === parseInt(StudentID)) return true;\n }).length > 0\n ) {\n selectedStudentRelations.map((item) => {\n if (item.StudentID === StudentID) item.relation = relation;\n });\n } else {\n //selectedStudentRelations[StudentID].relation == relation;\n selectedStudentRelations.push({ StudentID, relation });\n\n // ewProjects = projects.map(p =>\n // \tp.value === 'jquery-ui'\n // \t ? { ...p, desc: 'new description' }\n // \t : p\n // );\n }\n //selectedStudentRelations.push({[StudentID]: relation})\n this.setState({\n selectedStudentRelations,\n });\n };\n\n updateShowKid = () => {\n const { isShowKidForEmergency } = this.state;\n this.setState({ isShowKidForEmergency: !isShowKidForEmergency });\n };\n\n kidAddEmergency = () => {\n const { selectedStudents } = this.state;\n const { studentsList } = this.props;\n const students = studentsList && studentsList.TodaysStudents;\n const studentRecords = [...students];\n const kidsList = studentRecords.filter((item)=> !item.IsDelegation)\n if(kidsList.length === 0 ) return
    \n return (\n
    \n \n
    \n \n {this.props.t(\"AddemergencyContactFor\")}\n \n
    \n
    \n
    \n
    \n {kidsList &&\n kidsList.map((item) => (\n {\n let selectedStudents = { ...this.state.selectedStudents };\n selectedStudents[\n item.StudentID\n ].IsEmergency = !selectedStudents[item.StudentID]\n .IsEmergency;\n this.setState({ selectedStudents });\n }}\n >\n \n {selectedStudents[item.StudentID].IsEmergency ? (\n \n ) : (\n \n )}\n \n \n {item.Firstname} {\"\"} {item.Lastname}\n \n
    \n ))}\n
    \n \n \n );\n };\n\n setSelectedRelation = (selectedRelationData) => {\n console.log(\"selectedRelationData========>\", selectedRelationData);\n const selectedStudents = { ...this.state.selectedStudents };\n // if (selectedStudents && Object.keys(selectedStudents).length > 0) {\n selectedRelationData.IsEmergency =\n selectedStudents[selectedRelationData.StudentId].IsEmergency;\n selectedStudents[selectedRelationData.StudentId] = selectedRelationData;\n //console.log(\"setSelectedRelation selectedStudents before \" + JSON.stringify(setSelectedRelation))\n this.setState({ selectedStudents });\n // this.setState({ isChangeRelation:true });\n // }\n };\n\n getStudentRelationship = (studentID) => {\n const { relationshipList } = this.props;\n const { selectedStudents } = this.state;\n const rec = selectedStudents[studentID];\n let relationshipText = null;\n if (rec && rec !== undefined) {\n if (rec.RelationshipTypeId) {\n if (\n relationshipList &&\n relationshipList !== undefined &&\n relationshipList.length > 0\n )\n relationshipText = relationshipList.find(\n (item) => item.Id == rec.RelationshipTypeId\n ).Id;\n } else if (rec.RelationshipTypeOther) {\n relationshipText = rec.RelationshipTypeOther;\n }\n }\n return relationshipText;\n };\n kidWithRelationship = () => {\n const { studentsList } = this.props;\n const { selectedStudents, selectedChildren } = this.state;\n const students = studentsList && studentsList.TodaysStudents;\n var kidWithRelationlist = [];\n //const relationShipText = this.getStudentRelationship(students[i].StudentID);\n const studentRecords = [...students];\n const kidsList = studentRecords.filter((item)=> !item.IsDelegation)\n if(kidsList.length === 0 ) return
    \n\n console.log(\"selectedChildren---->\", selectedChildren);\n return (\n
    \n

    {this.props.t(\"Relationship\")}

    \n
    \n {kidsList &&\n kidsList.map((item) => (\n this.setSelectedKids(item)}\n >\n \n \n
    \n ))}\n
    \n \n );\n };\n\n renderAddEditContactForm = () => {\n const { isFetching, studentsList } = this.props;\n\n const {\n firstNameInvalid,\n lastNameInvalid,\n mobileNumberInvalid,\n firstName,\n lastName,\n mobileNumber,\n actionName,\n avatarSource,\n isImageWizardVisible,\n isPreviewVisible,\n isManualReviewSubmitSuccess,\n isCancelManualReviewSubmitSuccess,\n isRemovePhotoPromptVisible,\n isModalVisible,\n isRejectedVisible,\n delegateImageUploadError,\n isAddContactSuccess,\n contactRecord,\n tempNewDelegate,\n selectedChildren,\n } = this.state;\n\n const submitButtonText = contactRecord\n ? this.props.t(\"settingsScr-submit\")\n : this.props.t(\"settingsScr-submit\");\n\n const students = studentsList && studentsList.TodaysStudents;\n return (\n
    \n {contactRecord && (\n
    \n {\n this.showUploadPhotoWizard();\n }}\n >\n {this.getDelegateImage() ? (\n \n \n \n {contactRecord.ImageInReview || delegateImageUploadError ? (\n \n ) : (\n \n )}\n \n \n ) : (\n \n )}\n \n\n {this.getDelegateImage() || contactRecord.ImageInReview ? (\n
    \n {\n this.setState({\n isContactFormVisible: false,\n isModalVisible: true,\n isImageWizardVisible: true,\n isPreviewVisible: false,\n isRejectedVisible: false,\n });\n }}\n className=\"btn action-btn blue-text\"\n >\n {this.props.t(\"change_text\")}\n \n {contactRecord &&\n (contactRecord.ImageInReview ||\n isManualReviewSubmitSuccess) &&\n !isCancelManualReviewSubmitSuccess && (\n {\n this.setState({\n isRemovePhotoPromptVisible: true,\n isModalVisible: true,\n isContactFormVisible: false,\n });\n }}\n >\n {this.props.t(\"remove_text\")}\n \n )}\n
    \n ) : (\n {\n this.showUploadPhotoWizard();\n }}\n >\n {this.props.t(\"upload_photo\")}\n \n )}\n\n {checkIsEmergency(contactRecord) ? (\n
    \n {\" \"}\n \n {this.props.t(\"Emergency_Contact\")}\n \n
    \n ) : null}\n\n {avatarSource &&\n delegateImageUploadError &&\n !isManualReviewSubmitSuccess ? (\n
    \n
    \n {delegateImageUploadError && delegateImageUploadError.Message}\n
    \n {\n const { delegateImageUploadError } = this.state;\n if (\n delegateImageUploadError &&\n delegateImageUploadError.Data\n ) {\n this.props.doManualReviewRequest(\n delegateImageUploadError.Data.RejectedImageId\n );\n }\n }}\n >\n {this.props.t(\"request_manual_review\")}\n \n
    \n ) : null}\n\n {contactRecord &&\n (contactRecord.ImageInReview || isManualReviewSubmitSuccess) &&\n !isCancelManualReviewSubmitSuccess ? (\n
    \n
    \n {this.props.t(\"manual_review_alert\")}\n
    \n {\n this.setState({\n isRemovePhotoPromptVisible: true,\n isModalVisible: true,\n isContactFormVisible: false,\n });\n }}\n >\n {this.props.t(\"cancel_manualreview\")}\n \n
    \n ) : null}\n
    \n )}\n
    \n
    \n nextField(event)}\n />\n \n
    \n {firstNameInvalid}\n
    \n
    \n
    \n nextField(event)}\n />\n \n
    \n {lastNameInvalid}\n
    \n
    \n
    \n {\n if (event.key === \"Enter\") this.submitForm();\n }}\n />\n \n
    \n {mobileNumberInvalid}\n
    \n\n
    \n {contactRecord && this.kidWithRelationship()}\n {contactRecord && this.kidAddEmergency()}\n \n {actionName === \"addContact\" && isFetching ? (\n \n ) : null}{\" \"}\n {submitButtonText}\n \n\n {contactRecord && (\n
    \n {\n this.updateDelegateStatus();\n }}\n >\n {actionName === \"updateStatus\" && isFetching ? (\n \n ) : null}{\" \"}\n {contactRecord.IsActive === true\n ? this.props.t(\"Inactive_Button\")\n : this.props.t(\"Active_Button\")}\n \n\n {\n this.deleteDelegate();\n }}\n >\n {actionName === \"deleteContact\" && isFetching ? (\n \n ) : null}{\" \"}\n {this.props.t(\"DELETE\")}\n \n
    \n )}\n
    \n {isAddContactSuccess && !contactRecord\n ? this.addContactSuccessView(firstName + \" \" + lastName)\n : null}\n
    \n );\n };\n\n addContactSuccessView = (contactName) => {\n const { tempNewDelegate } = this.state;\n confirmAlert({\n closeOnClickOutside: false,\n customUI: ({ onClose }) => {\n return (\n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n

    \n {this.props.t(\"Contact_Created\")}\n

    \n
    \n
    \n {this.props\n .t(\"addContactSuccess\")\n .replace(\"{contactName}\", contactName)}\n
    \n
    \n
    \n {\n event.preventDefault();\n // \tthis.setState(\n // {\n // isContactFormVisible: true,\n // contactRecord: tempNewDelegate,\n // isAddContactSuccess: false,\n // },\n // this.showUploadPhotoWizard()\n // );\n\n this.setState(\n {\n isAddContactSuccess: false,\n contactRecord: tempNewDelegate,\n isModalVisible: true,\n isImageWizardVisible: true,\n isPreviewVisible: false,\n isRejectedVisible: false,\n isContactFormVisible: false,\n },\n onClose\n );\n }}\n >\n {this.props.t(\"Yes\")}\n \n {\n event.preventDefault();\n onClose();\n this.setState({ isAddContactSuccess: false }, () => {\n this.props.doAddApprovedDelegatesClear();\n this.backToContactList();\n });\n }}\n // onClick={({onClose}) => {\n // onClose();\n // this.setState({ isAddContactSuccess: false }, () => {\n // this.props.doAddApprovedDelegatesClear();\n // this.backToContactList();\n // });\n // }}\n >\n {this.props.t(\"notNow\")}\n \n
    \n
    \n
    \n
    \n );\n },\n });\n };\n\n renderCreateContactView = () => {\n //const { delegate, isFetching } = this.props;\n\n const {\n isImageWizardVisible,\n isModalVisible,\n isPreviewVisible,\n isRejectedVisible,\n isCameraLaunch,\n isContactFormVisible,\n isRemovePhotoPromptVisible,\n contactRecord,\n isImageCrop,\n } = this.state;\n const modalTitle = contactRecord\n ? this.props.t(\"Update_Contact\")\n : this.props.t(\"Create_Contact\");\n const submitButtonText = contactRecord\n ? this.props.t(\"Save_Changes_Button\")\n : this.props.t(\"Create_Delegate_Button\");\n console.log(\"isContactFormVisible\", isContactFormVisible);\n return (\n
    \n
    \n
    \n
    \n

    {modalTitle}

    \n {\n this.openHelpModal();\n }}\n >\n {this.props.t(\"regNameScr-needHelp\")}\n \n
    \n\n {\n this.backToContactList();\n }}\n >\n
    \n\n
    \n
    \n\t\t\t{!contactRecord && {this.props.t('addContact_msg')}}\n
    \n\t\t\t\t{isContactFormVisible && this.renderAddEditContactForm()}\n {isModalVisible &&\n isImageWizardVisible &&\n this.showGuidelinesView()}\n\n {isModalVisible && isPreviewVisible && this.showPreviewView()}\n {isModalVisible &&\n isRejectedVisible &&\n this.renderRejectedImagePreview()}\n {isModalVisible &&\n isRemovePhotoPromptVisible &&\n this.removePhotoView()}\n
    \n
    \n
    \n
    \n {isModalVisible && isCameraLaunch && this.showDialogueBox()}\n {isModalVisible && isImageCrop && this.showImageCropper()}\n
    \n );\n };\n\n backToContactList = () => {\n this.props.doHideModal();\n const { callback } = this.props;\n if (callback) callback();\n };\n\n closeModal = () => {\n this.props.doHideModal();\n this.props.doSetOldHelpSetting();\n };\n\n render() {\n return this.renderCreateContactView();\n }\n}\nfunction CropDemo({ src }) {\n const [crop, setCrop] = useState();\n return (\n setCrop(c)}>\n \n \n );\n}\n\nfunction mapStateToProps(state) {\n return {\n userLoginInfo: state.userAccount.userLoginInfo,\n approvedDelegatesResponse: state.userAccount.approvedDelegatesResponse,\n approvedDelegatesChangeResponse:\n state.userAccount.approvedDelegatesChangeResponse,\n delegatesSetDeletedResponse: state.userAccount.delegatesSetDeletedResponse,\n error: state.userAccount.error,\n isFetching: loadingSelector(state),\n setHelpListData: state.userAccount.setHelpListData,\n\n isProcessingVisible: loadingPhotoSelector(state),\n delegateImageUploadErrorResponse:\n state.userAccount.delegateImageUploadError,\n delegateImageUploadResponse: state.userAccount.delegateImageUploadResponse,\n manualReviewRequestResponse: state.userAccount.manualReviewRequest,\n manualReviewCancelResponse: state.userAccount.manualReviewCancelResponse,\n relationshipList: state.student.relationshipList,\n studentsList: state.student.studentsList,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n\n doAddApprovedDelegates: (data) => dispatch(addApprovedDelegates(data)),\n doAddApprovedDelegatesClear: () => dispatch(addApprovedDelegatesClear()),\n doUpdateApprovedDelegatesChange: (data) =>\n dispatch(updateApprovedDelegatesChange(data)),\n doUpdateApprovedDelegatesChangeClear: () =>\n dispatch(updateApprovedDelegatesChangeClear()),\n doDeleteDelegate: (data) => dispatch(deleteDelegate(data)),\n doDeleteDelegateClear: () => dispatch(deleteDelegateClear()),\n\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doSetOldHelpSetting: () => dispatch(setOldHelpSetting()),\n\n doUploadDelegatePhoto: (data) => dispatch(delegateImageUpload(data)),\n doManualReviewRequest: (data) => dispatch(manualReviewRequest(data)),\n doDelegateImageUploadErrorClear: (data) =>\n dispatch(delegateImageUploadErrorClear(data)),\n doManualRequestClear: () => dispatch(manualRequestClear()),\n doManualReviewCancel: (data) => dispatch(manualReviewCancel(data)),\n doManualReviewCancelClear: () => dispatch(manualReviewCancelClear()),\n doGetRelationship: (data) => dispatch(getRelationship(data)),\n doGetStudentsList: (data) => dispatch(getStudentsList(data)),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(AddContact)\n);\n","import React from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport { connect } from \"react-redux\";\nimport { Dropdown } from \"react-bootstrap\";\nimport RingLoader from \"react-spinners/ClipLoader\";\nimport { showModal, hideModal, setHelpList, setOldHelpSetting } from \"../../common/actions/userAccount\";\nimport {\n changeDefaultPickupMode,\n changeDefaultPickupModeClear,\n getAvailableDispatch,\n getAvailableDispatchClear,\n} from \"../../common/actions/students\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\nimport GLOBAL_CONST from '../../helper/AppConstants';\nconst loadingSelector = createLoadingSelector([\n \"get_school_pickup_mode\",\n \"change_default_pickup_mode\",\n]);\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\ntoast.configure();\n\nclass ChangeDefaultPickup extends React.Component {\n\n constructor(props) {\n super(props);\n\n this.state = {\n selectedOptionPickupMode: \"Select\",\n selectedBusRouteOptionLabel: \"Select\",\n selectedOptionPickupBy: \"Select\",\n previousSelectedOptionsPickupMode: null,\n previousSelectedOptionsPickupBy: null,\n selectedSubPickupModeOption: \"Select\",\n previousSelectedSubpickupModeOption: null,\n\n selectedBusRouteOption: \"Select\",\n previousSelecteBusRouteOption: null,\n\n selectChild: false,\n pickupModeList: [],\n schoolSubOptions: [],\n busRouteSubOptions: [],\n avatarSource: null,\n };\n\n this.getDispatchList();\n }\n componentDidMount() {\n this.dosetHelpList()\n }\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"ChildManagement\",\n screen: GLOBAL_CONST.SCREEN_NAMES.DEFAULT_PICKUP_MODE,\n title: this.props.t('changePickupScr-pickupMode'),\n });\n }\n\n openHelpModal = () => {\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n }\n });\n }\n\n getDispatchList = () => {\n const { doGetAvailableDispatch } = this.props;\n const ChildInfo = this.props.ChildInfo;\n doGetAvailableDispatch({ studentIDs: [ChildInfo.StudentID] });\n };\n componentWillUnmount() {\n this.props.doGetAvailableDispatchClear();\n }\n\n submitForm = () => {\n const { doChangeDefaultPickupMode } = this.props;\n const {\n selectedOptionPickupMode,\n selectedSubPickupModeOption,\n selectedBusRouteOption,\n } = this.state;\n const ChildInfo = this.props.ChildInfo;\n\n if (selectedOptionPickupMode === 0) {\n alert(this.props.t(\"Select_PickupMode_Alert\"));\n } else if (\n selectedOptionPickupMode == 4 &&\n selectedSubPickupModeOption == \"Select\"\n ) {\n alert(this.props.t(\"Select_AfterSchool_Program_alert\"));\n } else if (\n selectedOptionPickupMode == 1 &&\n selectedBusRouteOption == \"Select\"\n ) {\n alert(this.props.t(\"Select_Bus_Number_Alert\"));\n } else {\n let pickupModeSubItem;\n\n if (selectedOptionPickupMode == 1) {\n pickupModeSubItem = selectedBusRouteOption;\n } else if (selectedOptionPickupMode == 4) {\n pickupModeSubItem = selectedSubPickupModeOption;\n } else {\n pickupModeSubItem = 0;\n }\n doChangeDefaultPickupMode({\n studentID: ChildInfo.StudentID,\n pickupModeID: selectedOptionPickupMode,\n pickupModeSubItem,\n });\n }\n };\n\n getPickupModeById = (value) => {\n const { pickupModeList } = this.state;\n for (let i = 0; i < pickupModeList.length; i++) {\n if (value === pickupModeList[i].value) return pickupModeList[i].label;\n }\n };\n\n getAfterSchoolProgramById = (value) => {\n const { schoolSubOptions } = this.state;\n for (let i = 0; i < schoolSubOptions.length; i++) {\n if (value === schoolSubOptions[i].value) return schoolSubOptions[i].label;\n }\n };\n\n getBusRouteById = (value) => {\n const { busRouteSubOptions } = this.state;\n for (let i = 0; i < busRouteSubOptions.length; i++) {\n if (value === busRouteSubOptions[i].value)\n return busRouteSubOptions[i].label;\n }\n };\n\n renderChangeDefaultPickupView = () => {\n const { isFetching } = this.props;\n const {\n selectedOptionPickupMode,\n selectedSubPickupModeOption,\n selectedBusRouteOption,\n pickupModeList,\n schoolSubOptions,\n busRouteSubOptions,\n } = this.state;\n const ChildInfo = this.props.ChildInfo;\n const defaultPickupMode = this.props.defaultDismissalResponse;\n\n return (\n
    \n
    \n
    \n
    \n
    \n

    \n {this.props.t(\"changePickupScr-pickupMode\")}\n

    \n \n\n

    \n {ChildInfo.Firstname} {ChildInfo.Lastname}
    \n {ChildInfo.SchoolName}
    \n {defaultPickupMode.PickupModeName}{\" \"}\n {defaultPickupMode.PickupModeSubName != null\n ? defaultPickupMode.PickupModeSubName\n : null}\n

    \n
    \n \n {\n this.closeModal();\n }}\n >\n
    \n\n\n
    \n
    \n
    \n
    \n \n {\n this.setState({\n selectedOptionPickupMode: eventKey,\n });\n }}\n onToggle={() => {\n this.setState({\n previousSelectedOptionsPickupMode: selectedOptionPickupMode,\n });\n }}\n >\n \n {this.getPickupModeById(selectedOptionPickupMode)}\n {pickupModeList.length ===0 && } \n \n\n \n {pickupModeList.map((data) => {\n return (\n \n \n {data.label}\n \n \n );\n })}\n \n \n
    \n\n
    \n {selectedOptionPickupMode == 4 ? (\n \n ) : selectedOptionPickupMode == 1 ? (\n \n ) : null}\n\n {selectedOptionPickupMode == 4 ? (\n {\n this.setState({\n selectedSubPickupModeOption: eventKey,\n });\n }}\n >\n \n {this.getAfterSchoolProgramById(\n selectedSubPickupModeOption\n )}\n \n\n \n {schoolSubOptions.map((data) => {\n return (\n \n \n {data.label}\n \n \n );\n })}\n \n \n ) : selectedOptionPickupMode == 1 ? (\n {\n this.setState({\n selectedBusRouteOption: eventKey,\n });\n }}\n >\n \n {this.getBusRouteById(selectedBusRouteOption)}\n \n\n \n {busRouteSubOptions.map((data) => {\n return (\n \n \n {data.label}\n \n \n );\n })}\n \n \n ) : null}\n
    \n
    \n
    \n
    \n\n
    \n {\n this.closeModal();\n }}\n >\n {this.props.t(\"regNameScr-cancel\")}\n \n \n {isFetching ? (\n \n ) : null}{\" \"}{this.props.t(\"changePickupScr-save\")}\n \n
    \n
    \n
    \n
    \n );\n };\n closeModal = () => {\n this.props.doHideModal();\n this.props.doSetOldHelpSetting()\n };\n\n componentDidUpdate() {\n const {\n availableDispatch,\n changeDefaultPickupModeResponse,\n error,\n doChangeDefaultPickupModeClear,\n doGetAvailableDispatchClear,\n doCallbackRefresh,\n } = this.props;\n\n const { pickupModeList, schoolSubOptions, busRouteSubOptions } = this.state;\n\n const defaultPickupMode = this.props.defaultDismissalResponse;\n let schoolOptions = [];\n let busOptions = [];\n let pickupModes = [];\n\n if (availableDispatch) {\n let methodsAvailableToEveryone =\n availableDispatch.MethodsAvailableToEveryone;\n pickupModes.push({\n label: `Select`,\n value: 'Select',\n });\n for (let i = 0; i < methodsAvailableToEveryone.length; i++) {\n pickupModes.push({\n label: `${methodsAvailableToEveryone[i].Name}`,\n value: `${methodsAvailableToEveryone[i].PickupModeID}`,\n });\n }\n\n if (pickupModeList.length === 0 && pickupModes.length > 0) {\n this.setState({ pickupModeList: pickupModes });\n }\n schoolOptions.push({\n label: `Select`,\n value: `Select`,\n });\n for (let i = 0; i < methodsAvailableToEveryone.length; i++) {\n const subSchool = methodsAvailableToEveryone[i].SubOptions;\n if (methodsAvailableToEveryone[i].PickupModeID === 4) {\n for (let j = 0; j < subSchool.length; j++) {\n schoolOptions.push({\n label: `${subSchool[j].Name}`,\n value: `${subSchool[j].ID}`,\n });\n }\n\n break;\n }\n }\n if (schoolSubOptions.length === 0 && schoolOptions.length > 0) {\n schoolOptions = schoolOptions.sort((a, b) => {\n if (a.label == \"Select\" || b.label == \"Select\") return 1;\n return a.label.toLowerCase() > b.label.toLowerCase()\n ? 1\n : b.label.toLowerCase() > a.label.toLowerCase()\n ? -1\n : 0;\n });\n this.setState({ schoolSubOptions: schoolOptions });\n }\n busOptions.push({\n label: `Select`,\n value: `Select`,\n });\n\n for (let i = 0; i < methodsAvailableToEveryone.length; i++) {\n const subBus = methodsAvailableToEveryone[i].SubOptions;\n if (methodsAvailableToEveryone[i].PickupModeID === 1) {\n for (let j = 0; j < subBus.length; j++) {\n busOptions.push({\n label: `${subBus[j].Name}`,\n value: `${subBus[j].ID}`,\n });\n }\n\n break;\n }\n }\n if (busRouteSubOptions.length === 0 && busOptions.length > 0) {\n busOptions = busOptions.sort((a, b) => {\n if (a.label == \"Select\" || b.label == \"Select\") return 1;\n return a.label.toLowerCase() > b.label.toLowerCase()\n ? 1\n : b.label.toLowerCase() > a.label.toLowerCase()\n ? -1\n : 0;\n });\n\n this.setState({ busRouteSubOptions: busOptions });\n }\n }\n\n if (error) {\n toast.error(error.Message || error.message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n doChangeDefaultPickupModeClear();\n } else if (changeDefaultPickupModeResponse) {\n toast.success(\n changeDefaultPickupModeResponse.Message ||\n changeDefaultPickupModeResponse.Message,\n { autoClose: 2000, transition: Slide, hideProgressBar: true }\n );\n this.closeModal();\n doChangeDefaultPickupModeClear();\n doGetAvailableDispatchClear();\n if (doCallbackRefresh) doCallbackRefresh();\n }\n }\n\n render() {\n return this.renderChangeDefaultPickupView();\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n\n isFetching: loadingSelector(state),\n changeDefaultPickupModeResponse:\n state.student.changeDefaultPickupModeResponse,\n availableDispatch: state.student.availableDispatch,\n error: state.student.error,\n setHelpListData: state.userAccount.setHelpListData,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n\n doChangeDefaultPickupMode: (data) =>\n dispatch(changeDefaultPickupMode(data)),\n doChangeDefaultPickupModeClear: () =>\n dispatch(changeDefaultPickupModeClear()),\n doGetAvailableDispatch: (data) => dispatch(getAvailableDispatch(data)),\n doGetAvailableDispatchClear: () => dispatch(getAvailableDispatchClear()),\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doSetOldHelpSetting: () => dispatch(setOldHelpSetting()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(ChangeDefaultPickup)\n);\n","import React from \"react\";\nimport { withTranslation } from \"react-i18next\";\n\nimport DatePicker from \"react-datepicker\";\nimport \"react-datepicker/dist/react-datepicker.css\";\n\nimport {\n Bootstrap,\n Dropdown,\n DropdownButton,\n DropdownItem,\n DropdownMenu,\n DropdownToggle,\n} from \"react-bootstrap\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { showModal, hideModal, setHelpList, setOldHelpSetting } from \"../../common/actions/userAccount\";\n\nimport { getAbsentReason } from \"../../common/actions/school\";\nimport {\n submitAbsentee,\n submitAbsenteeClear,\n} from \"../../common/actions/students\";\nimport { event } from \"jquery\";\nimport moment from \"moment\";\nimport { Colors } from \"../../theme\";\n\nimport {\n getDismissalInfo,\n isActionAllowed,\n getMarkStyle,\n getUserSettings,\n saveUserSettings,\n isTodayAndAnnounced,\n filterByTypes,\n} from \"../../helper/utility\";\n\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport { confirmAlert } from \"react-confirm-alert\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\nconst loadingSelector = createLoadingSelector([\"save_absentee\"]);\ntoast.configure();\n\nvar currentDate = new Date();\nvar numberOfDaysToAdd = 5;\nconst daysHighlighted = new Array(numberOfDaysToAdd).fill(currentDate);\n\nclass CreateMarkAbsent extends React.Component {\n constructor(props) {\n super(props);\n\n this.setRepeat = this.setRepeat.bind(this);\n\n const school = this.props.school;\n const firstDayOfSchool = new Date(school.Dates.FirstDayOfSchool);\n\n let selectedDate = this.props.selectedDate;\n if (!selectedDate) {\n selectedDate = new Date();\n }\n\n const ChildInfo = this.props.ChildInfo;\n if (isTodayAndAnnounced(new Date(selectedDate), ChildInfo)) {\n selectedDate.setDate(new Date().getDate() + 1);\n }\n\n const isSelectedPriorToFirstDay = moment(firstDayOfSchool).isAfter(\n moment(selectedDate)\n );\n if (isSelectedPriorToFirstDay) selectedDate = firstDayOfSchool;\n\n let selectedTillDate = new Date(selectedDate);\n selectedTillDate = selectedTillDate.setDate(selectedTillDate.getDate() + 1);\n const markedDates = this.props.markedDates;\n this.state = {\n isRepeat: false,\n selectedDate,\n selectedOption: \"Select\",\n selectedTillDate,\n previousSelectedOptions: \"Select\",\n isFromDateTimePickerVisible: false,\n isUntilateTimePickerVisible: false,\n markedDates,\n currentList: [],\n password: \"\",\n\n showCalendarPicker: false,\n showUntilCalendar: false,\n showSelectHowUIFlag: false,\n showWhenCalendarPicker: false,\n showUntilCalendarPicker: false,\n\n selectedAbsentReason: \"Select\",\n };\n\n this.getAbsenteeReason();\n }\n componentDidMount() {\n this.dosetHelpList()\n }\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"ChildManagement\",\n screen: GLOBAL_CONST.SCREEN_NAMES.MARK_ABSENT,\n title: this.props.t('childDetailScr-mark'),\n });\n }\n\n openHelpModal = () => {\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n }\n });\n }\n\n\n changeMonth = (value) => {\n this.calendar.addMonth(value);\n const { currentSelectedMonth } = this.state;\n const currMonth = moment(currentSelectedMonth).add(value, \"M\");\n this.setState({\n currentSelectedMonth: currMonth,\n selectedDate: currMonth.toDate(),\n });\n };\n getAbsenteeReason = () => {\n const { doGetAbsentReason } = this.props;\n const ChildInfo = this.props.ChildInfo;\n\n doGetAbsentReason({ SchoolID: ChildInfo.SchoolID });\n };\n\n onFromDateSelected = (date) => {\n this.hideLegendView();\n this.setState({ selectedDate: date });\n };\n onToDateSelected = (date) => {\n this.hideLegendView();\n this.setState({ selectedTillDate: date });\n };\n hideLegendView = (e) => {\n this.setState({ showCalendarPicker: false });\n };\n\n\n showLegendView = (e) => {\n this.setState({ showCalendarPicker: true });\n this.setState({ showWhenCalendarPicker: true });\n this.setState({ showUntilCalendarPicker: false });\n };\n showUntilLegendView = (e) => {\n this.setState({ showCalendarPicker: true });\n this.setState({ showUntilCalendarPicker: true });\n this.setState({ showWhenCalendarPicker: false });\n };\n showUntilCalendarPicker = (e) => {\n this.setState({ showUntilCalendar: true });\n };\n\n showSelectHowUI = (e) => {\n this.setState({ showSelectHowUIFlag: true });\n };\n\n renderLegendUI = () => {\n return (\n
    \n
    \n
    {this.props.t(\"Legend\")}
    \n
      \n
    • \n {this.props.t(\"Approved_Pickup_Change_Text\")}\n
    • \n
    • \n {this.props.t(\"Approved_EarlyPickup_Change_Text\")}\n
    • \n
    • {this.props.t(\"Mark_Absent_Text\")}
    • \n
    • \n {this.props.t(\"Pending_Approval_Text_p\")} \n
    • \n
    • \n {this.props.t(\"Pending_Approval_Text_e\")}\n
    • \n \n
      \n {this.props.t(\"Pending_Approval_Text2\")}\n
      \n
    \n
    \n
    \n );\n };\n\n renderMarkAbsentView = () => {\n const {\n password,\n selectedOption,\n showCalendarPicker,\n selectedDate,\n selectedTillDate,\n showUntilCalendar,\n showWhenCalendarPicker,\n showUntilCalendarPicker,\n isRepeat,\n markedDates\n } = this.state;\n const {isFetching} = this.props;\n\n const pickupDates = filterByTypes(markedDates)\n\n const absentReason = [];\n const { absentReasonResponse } = this.props;\n\n if (absentReasonResponse != null) {\n const absentReasonResult = absentReasonResponse.AbsenceReasons;\n if (absentReasonResult != null && absentReasonResult != undefined) {\n absentReason.push({\n key: \"Select\",\n value: \"Select\",\n });\n for (let i = 0; i < absentReasonResult.length; i++) {\n absentReason.push({\n key: `${absentReasonResult[i].Name}`,\n value: `${absentReasonResult[i].Name}`,\n });\n }\n }\n }\n\n const ChildInfo = this.props.ChildInfo;\n return (\n
    \n
    \n
    \n
    \n
    \n

    \n {this.props.t(\"childDetailScr-mark\")}\n

    \n \n
    \n\n {\n this.closeModal();\n }}\n >\n
    \n\n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n }\n >\n {showCalendarPicker === true &&\n showWhenCalendarPicker === true &&\n this.renderLegendUI()}\n \n
    \n\n
    \n
    \n
    \n
    \n
    \n \n\n \n {selectedOption}\n\n \n {absentReason.map((data) => {\n return (\n \n \n {data.value}\n \n \n );\n })}\n \n \n
    \n
    \n
    \n\n
    \n
    \n
    \n
    \n \n {\" \"}\n {this.props.t(\"createMarkAbScr-repeatThis\")}\n \n \n
    \n
    \n
    \n\n\n {isRepeat === true && (\n
    \n
    \n \n \n
    \n }\n >\n {showCalendarPicker === true &&\n showUntilCalendarPicker === true &&\n this.renderLegendUI()}\n \n
    \n\n
    \n
    \n
    \n )}\n {this.state.displayPasswordEntry === true &&\n this.showPasswordOptions()}\n
    \n \n
    \n
    \n\n
    \n {\n this.closeModal();\n }}\n >\n {this.props.t(\"editChildScr-cancel\")}\n \n {\n\n if (this.validateForm()) {\n if (absentReasonResponse.PasswordRequiredForChange === true)\n this.setState({ displayPasswordEntry: true });\n else\n this.submitForm();\n }\n }}\n >\n {isFetching ? (\n \n ) : null}{\" \"}{this.props.t(\"changePickupScr-save\")}\n \n
    \n {this.state.displayPasswordEntry === true &&\n this.showPasswordOptions()}\n
    \n \n \n );\n };\n handleSelect = (e) => {\n this.setState({ selectedOption: e });\n };\n handlePassword = ({ target: { value: password } }) => {\n this.setState({ password });\n };\n\n showPasswordOptions = () => {\n const { password } = this.state;\n\n return (\n confirmAlert({\n customUI: ({ onClose }) => {\n return (\n
    \n
    \n
    \n
    \n

    \n

    \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n );\n }\n })\n\n\n );\n };\n componentDidUpdate() {\n const absentReason = [];\n const {\n absentReasonResponse,\n error,\n submitAbsenteeResponse,\n doSubmitAbsenteeClear,\n doCallbackRefresh,\n } = this.props;\n\n if (absentReasonResponse != null) {\n const absentReasonResult = absentReasonResponse.AbsenceReasons;\n if (absentReasonResult != null && absentReasonResult != undefined) {\n absentReason.push({\n key: \"Select\",\n value: \"Select\",\n });\n for (let i = 0; i < absentReasonResult.length; i++) {\n absentReason.push({\n key: `${absentReasonResult[i].Name}`,\n value: `${absentReasonResult[i].Name}`,\n });\n }\n }\n }\n\n if (error) {\n toast.error(error.Message || error.message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n doSubmitAbsenteeClear();\n } else if (submitAbsenteeResponse) {\n toast.success(this.props.t(\"createMarkAbScr-Success\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n doSubmitAbsenteeClear();\n this.setState({ displayPasswordEntry: false, password: \"\" });\n this.props.doHideModal()\n if (doCallbackRefresh) doCallbackRefresh();\n }\n }\n getRecurringDates = (startDate, endDate) => {\n let start = moment(startDate);\n let end = moment(endDate);\n let dates = [];\n\n for (var m = moment(start); m.isBefore(end); m.add(1, \"days\")) {\n dates.push(m.format(\"MM-D-YYYY\"));\n }\n dates.push(end.format(\"MM-D-YYYY\"));\n\n return dates;\n };\n\n validateForm = () => {\n const {\n selectedOption,\n selectedDate,\n selectedTillDate,\n isRepeat,\n } = this.state;\n\n if (selectedDate == \"Select Date\") {\n alert(this.props.t(\"selectWhenScr-selectDate\"));\n return false;\n } else if (selectedOption == undefined || selectedOption == \"Select\") {\n alert(this.props.t(\"markAbsentScr-selectReason\"));\n return false;\n } else if (isRepeat === true) {\n if (selectedTillDate == \"Select Date\") {\n alert(this.props.t(\"Select_Till_Date\"));\n return false;\n }\n }\n\n return true;\n };\n\n submitForm = () => {\n const { doSubmitAbsentee, absentReasonResponse } = this.props;\n const ChildInfo = this.props.ChildInfo;\n\n const {\n selectedOption,\n selectedDate,\n selectedTillDate,\n isRepeat,\n password,\n } = this.state;\n\n //if (!this.validateForm()) return;\n if (isRepeat === false) {\n let selectFromDate = moment(selectedDate).format(\"MM/DD/YYYY\");\n let params = {\n absenteeDate: [selectFromDate],\n reason: selectedOption,\n studentId: ChildInfo.StudentID,\n password,\n };\n if (absentReasonResponse.PasswordRequiredForChange === true) {\n params.password = password;\n }\n doSubmitAbsentee(params);\n } else if (isRepeat === true) {\n let selectFromDate = moment(selectedDate).format(\"MM/DD/YYYY\");\n let selectTillDate = moment(selectedTillDate).format(\"MM/DD/YYYY\");\n let params = {\n absenteeDate: this.getRecurringDates(selectFromDate, selectTillDate),\n absenteetilldate: selectTillDate,\n reason: selectedOption,\n studentId: ChildInfo.StudentID,\n };\n if (absentReasonResponse.PasswordRequiredForChange === true) {\n params.password = password;\n }\n doSubmitAbsentee(params);\n }\n };\n\n setRepeat(value) {\n return this.setState({\n isRepeat: !this.state.isRepeat,\n });\n }\n\n setSelectedDate = (day) => {\n const newDate = new Date(day.year, day.month - 1, day.day);\n this.setState({ selectedDate: newDate }, () => {\n this.getDayRecord(\"from\");\n });\n };\n setSelectedTillDate = (day) => {\n const newDate = new Date(day.year, day.month - 1, day.day);\n this.setState({ selectedTillDate: newDate }, () => {\n this.getDayRecord(\"to\");\n });\n };\n\n getDayRecord(type) {\n const { selectedDate, selectedTillDate } = this.state;\n const setDate = type === \"from\" ? selectedDate : selectedTillDate;\n const markedDates = { ...this.state.markedDates };\n var selectDateStr = moment(new Date(setDate)).format(\"YYYY-MM-DD\");\n\n for (const key in markedDates) {\n if (key === selectDateStr) {\n var selectedMarked = {\n selected: true,\n selectedColor: Colors.blue,\n record: markedDates[key].record,\n };\n markedDates[key] = selectedMarked;\n } else {\n markedDates[key] = getMarkStyle(markedDates[key].record);\n }\n }\n\n this.setState({ markedDates });\n }\n\n confirmPassword = ({ onClose }) => {\n if (this.state.password === \"\") {\n alert(this.props.t(\"createMarkAbScr-passowrdError\"));\n return false;\n }\n this.setState({ displayPasswordEntry: false });\n this.submitForm();\n onClose();\n };\n\n\n\n\n closeModal = () => {\n this.props.doHideModal();\n this.props.doSetOldHelpSetting()\n };\n\n render() {\n return this.renderMarkAbsentView();\n\n }\n}\nconst CustomInput = (props) => {\n return (\n \n )\n}\n\nfunction mapStateToProps(state) {\n return {\n\n absentReasonResponse: state.school.absentReasonResponse,\n submitAbsenteeResponse: state.student.submitAbsenteeResponse,\n error: state.student.error,\n setHelpListData: state.userAccount.setHelpListData,\n isFetching: loadingSelector(state),\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n\n doGetAbsentReason: (data) => dispatch(getAbsentReason(data)),\n doSubmitAbsentee: (data) => dispatch(submitAbsentee(data)),\n doSubmitAbsenteeClear: () => dispatch(submitAbsenteeClear()),\n\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doSetOldHelpSetting: () => dispatch(setOldHelpSetting()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(CreateMarkAbsent)\n);\n","import React from \"react\";\nimport { connect } from \"react-redux\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { dom } from \"@fortawesome/fontawesome-svg-core\";\nimport { faCarAlt } from \"@fortawesome/free-solid-svg-icons\";\nimport { Bootstrap, Dropdown } from \"react-bootstrap\";\nimport RingLoader from \"react-spinners/ClipLoader\";\nimport { Line } from \"rc-progress\";\nimport moment from \"moment\";\nimport { isActionAllowed } from \"../../helper/utility\";\n\nimport {\n changeDelegation,\n changeDelegationClear,\n getAvailableDispatch,\n getAvailableDispatchClear,\n} from \"../../common/actions/students\";\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport { confirmAlert } from \"react-confirm-alert\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport { withTranslation } from \"react-i18next\";\nimport {\n showModal,\n hideModal,\n setHelpList,\n} from \"../../common/actions/userAccount\";\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\nimport contact3 from \"../assets/contacts/contact3.jpg\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\ntoast.configure();\n\nclass DismissalSelectHow extends React.Component {\n constructor(props) {\n super(props);\n\n const manuallExcludedDates = this.props.manuallExcludedDates;\n const selectedDate = this.props.selectedDate;\n const selectedTillDate = this.props.selectedTillDate;\n const currentPageIndex = this.props.currentPageIndex;\n const pageIndexes = this.props.pageIndexes;\n const selectedRepeatOption = this.props.selectedOption;\n const selectRecurringOption = this.props.selectRecurringOption;\n const recurringDates = this.props.recurringDates;\n const markedDates = this.props.markedDates;\n\n const howWillPickupOptions = [\n {\n label: `${this.props.t(\"Select_Contact_Dismissal_Label\")}`,\n value: `${this.props.t(\"Select_Contact_Dismissal_Label\")}`,\n },\n\n {\n label: `${this.props.t(\"Select_Me_Dismissal_Label\")}`,\n value: `${this.props.t(\"Select_Me_Dismissal_Label\")}`,\n },\n ];\n this.state = {\n selectedOptionPickupMode: 0,\n selectedOptionPickupBy: this.props.t(\"Select_Me_Dismissal_Label\"),\n previousSelectedOptionsPickupMode: null,\n previousSelectedOptionsPickupBy: null,\n selectedSubPickupModeOption: null,\n previousSelectedSubpickupModeOption: null,\n\n selectedBusRouteOption: null,\n previousSelecteBusRouteOption: null,\n gaurdianDetails: null,\n pickupModeList: [],\n schoolSubOptions: [],\n busRouteSubOptions: [],\n selectChild: false,\n selectedDate,\n selectedTillDate,\n recurringDates,\n selectedRepeatOption,\n selectRecurringOption,\n currentPageIndex,\n pageIndexes,\n markedDates,\n manuallExcludedDates,\n howWillPickupOptions,\n };\n }\n componentDidMount() {\n this.props.onRef(this);\n this.getDispatchList();\n this.dosetHelpList();\n }\n\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"ChildManagement\",\n screen: GLOBAL_CONST.SCREEN_NAMES.DISMISSAL_HOW,\n title: this.props.t(\"dismSelectTypeScr-newDism\"),\n });\n };\n componentWillUnmount() {\n this.props.onRef(undefined);\n this.props.doGetAvailableDispatchClear();\n }\n getDispatchList = () => {\n const { doGetAvailableDispatch } = this.props;\n const ChildInfo = this.props.ChildInfo;\n doGetAvailableDispatch({ studentIDs: [ChildInfo.StudentID] });\n };\n\n setSelectedDelegate = (item, contactFlag, selectedPhone) => {\n let { gaurdianDetails, selectedOptionPickupBy } = this.state;\n const howWillPickupOptions = [...this.state.howWillPickupOptions];\n if (!item) {\n this.setState({ selectedOptionPickupBy: \"Select dismissal\" });\n return;\n }\n if (contactFlag === true) {\n selectedOptionPickupBy = `${item.givenName} ${\"\"} ${\n item.familyName ? item.familyName : \"\"\n }`;\n\n gaurdianDetails = {\n Firstname: item.givenName,\n Lastname: item.familyName ? item.familyName : \"\",\n PhoneNumber: selectedPhone.number ? selectedPhone.number : \"\",\n };\n } else {\n selectedOptionPickupBy = `${item.Firstname} ${\"\"} ${item.Lastname}`;\n gaurdianDetails = item;\n }\n\n const contactRecord = {\n label: selectedOptionPickupBy,\n value: selectedOptionPickupBy,\n };\n\n const exists = howWillPickupOptions.filter(\n (item) => item.value === contactRecord.value\n );\n\n if (exists.length === 0) howWillPickupOptions.push(contactRecord);\n\n this.setState({\n gaurdianDetails,\n selectedOptionPickupBy,\n howWillPickupOptions,\n });\n };\n\n selectedChild = () => {\n this.setState({ selectChild: !this.state.selectChild });\n };\n\n canAssignParentAllowed = () => {\n const {\n selectedOptionPickupMode,\n selectedBusRouteOption,\n selectedSubPickupModeOption,\n } = this.state;\n console.log(\n \"can assign parent selectedSubPickupModeOption \",\n selectedSubPickupModeOption\n );\n console.log(\n \"can assign parent selectedSubPickupModeOption \",\n this.getAfterSchoolProgramById(selectedSubPickupModeOption)\n );\n console.log(\n \"can assign parent selectedBusRouteOption \",\n selectedBusRouteOption\n );\n console.log(\n \"can assign parent selectedBusRouteOption \",\n this.getBusRouteById(selectedBusRouteOption)\n );\n if (\n selectedOptionPickupMode == 4 &&\n selectedSubPickupModeOption &&\n this.getAfterSchoolProgramById(selectedSubPickupModeOption)\n .canAssignParent\n ) {\n return true;\n } else if (\n selectedOptionPickupMode == 1 &&\n selectedBusRouteOption &&\n this.getBusRouteById(selectedBusRouteOption).canAssignParent\n ) {\n return true;\n } else if (selectedOptionPickupMode > 1 && selectedOptionPickupMode != 4) {\n return true;\n }\n return false;\n };\n\n submitForm = () => {\n const {\n gaurdianDetails,\n selectedOptionPickupMode,\n selectedSubPickupModeOption,\n selectedBusRouteOption,\n selectedOptionPickupBy,\n manuallExcludedDates,\n } = this.state;\n const { doChangeDelegation } = this.props;\n const ChildInfo = this.props.ChildInfo;\n let selectData = this.props.selectData;\n\n const manuallExcludedDatesArr = [];\n for (const key in manuallExcludedDates) {\n const item = moment(key).format(\"MM/DD/YYYY\");\n manuallExcludedDatesArr.push(item);\n }\n const finalDates = [];\n for (var i = 0; i < selectData.selectedDate.length; i++) {\n const item = selectData.selectedDate[i];\n if (!manuallExcludedDatesArr.includes(item)) finalDates.push(item);\n }\n\n const isPickupModeFuture = isActionAllowed(\n ChildInfo.PickupModeCutOffTime,\n selectData.showDate\n );\n\n const isDelegateFuture = isActionAllowed(\n ChildInfo.DelegationCutOffTime,\n selectData.showDate\n );\n\n if (\n (selectedOptionPickupMode == 1 || selectedOptionPickupMode == 4) &&\n isPickupModeFuture === false\n ) {\n toast.error(this.props.t(\"DismSelectHowScr-pastDismissal\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n return;\n } else if (isDelegateFuture === false) {\n let msg = this.props.t(\"Past_Dismissal1\");\n msg = msg.replace(\"#time#\", ChildInfo.DelegationCutOffTime.toUpperCase());\n msg = msg.replace(\"#days#\", moment().format(\"dddd\") + \"s\");\n\n toast.error(msg, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n return;\n }\n\n if (\n selectedOptionPickupMode == 0 ||\n selectedOptionPickupMode == undefined\n ) {\n alert(this.props.t(\"Select_PickupMode_Alert\"));\n return;\n } else if (finalDates.length === 0) {\n alert(this.props.t(\"Dismissal_Date_Error\"));\n return;\n } else if (\n selectedOptionPickupBy ===\n this.props.t(\"Select_Contact_Dismissal_Label\") &&\n this.canAssignParentAllowed()\n ) {\n return;\n }\n\n let params = {};\n params = {\n studentID: ChildInfo.StudentID,\n schoolID: ChildInfo.SchoolID,\n recurringTypeID: selectData.selectedOption,\n fromDate: finalDates,\n pickUpModeId: selectedOptionPickupMode,\n institutionId: null,\n busRouteId: null,\n };\n\n let delegatedPerson = null;\n if (\n selectedOptionPickupBy !== this.props.t(\"Select_Me_Dismissal_Label\") &&\n gaurdianDetails\n ) {\n delegatedPerson = gaurdianDetails;\n }\n if (\n this.canAssignParentAllowed() &&\n delegatedPerson !== null &&\n delegatedPerson !== undefined\n ) {\n params.guardianFirstName = delegatedPerson.Firstname;\n params.guardianLastName = delegatedPerson.Lastname;\n params.guardianPhone = delegatedPerson.PhoneNumber;\n }\n if (selectedOptionPickupMode == 4) {\n params.institutionId = selectedSubPickupModeOption;\n params.isDelegated = false;\n params.isDelegatedToGuardian = delegatedPerson ? true : false;\n } else if (selectedOptionPickupMode == 1) {\n params.isDelegated = false;\n params.isDelegatedToGuardian = false;\n params.busRouteId = selectedBusRouteOption;\n } else {\n params.isDelegated = delegatedPerson ? true : false;\n params.isDelegatedToGuardian = delegatedPerson ? true : false;\n }\n\n doChangeDelegation(params);\n };\n\n openContact = (value) => {\n const ChildInfo = this.props.ChildInfo;\n if (value === this.props.t(\"Select_Contact_Dismissal_Label\")) {\n this.props.doShowModal({\n modalScreenName: \"SelectContact\",\n modalClassName: \"contact-list-modal sidebar-modal right\",\n params: {\n setSelectedDelegate: this.setSelectedDelegate,\n ChildInfo,\n manageDelegate: false,\n },\n });\n }\n };\n\n getPickupModeById = (value) => {\n const { pickupModeList } = this.state;\n for (let i = 0; i < pickupModeList.length; i++) {\n if (value == pickupModeList[i].value) return pickupModeList[i].label;\n }\n };\n\n getAfterSchoolProgramById = (value) => {\n const { schoolSubOptions } = this.state;\n\n for (let i = 0; i < schoolSubOptions.length; i++) {\n if (value === schoolSubOptions[i].value) return schoolSubOptions[i];\n }\n return {\n label: \"\",\n canAssignParent: false,\n };\n };\n\n getBusRouteById = (value) => {\n const { busRouteSubOptions } = this.state;\n\n for (let i = 0; i < busRouteSubOptions.length; i++) {\n if (value === busRouteSubOptions[i].value) return busRouteSubOptions[i];\n }\n return {\n label: \"\",\n canAssignParent: false,\n };\n };\n\n componentDidUpdate() {\n const {\n changeDelegationResponse,\n doChangeDelegationClear,\n error,\n doGetAvailableDispatchClear,\n availableDispatch,\n doHideModal,\n doCallbackRefresh,\n } = this.props;\n\n const { pickupModeList, schoolSubOptions, busRouteSubOptions } = this.state;\n\n let studentPickupModeList;\n let pickupModes = [];\n let schoolOptions = [];\n let busOptions = [];\n let afterSchoolOptions,\n busCompletesOptions,\n subOptions,\n subBus = [];\n let modes = [];\n\n if (availableDispatch) {\n studentPickupModeList = availableDispatch.StudentDismissalMethod;\n pickupModes.push({\n label: `${\"Select\"}`,\n value: 0,\n canAssignParent: false,\n });\n for (let i = 0; i < studentPickupModeList.length; i++) {\n modes = studentPickupModeList[i].Modes;\n afterSchoolOptions = modes.filter((item) => item.PickupModeID === 4);\n busCompletesOptions = modes.filter((item) => item.PickupModeID === 1);\n }\n for (let i = 0; i < modes.length; i++) {\n pickupModes.push({\n label: `${modes[i].Name}`,\n value: modes[i].PickupModeID,\n });\n }\n\n if (pickupModeList.length === 0 && pickupModes.length > 0) {\n this.setState({ pickupModeList: pickupModes });\n }\n\n for (let i = 0; i < afterSchoolOptions.length; i++) {\n subOptions = afterSchoolOptions[i].SubOptions;\n }\n if (subOptions) {\n subOptions = subOptions.sort((a, b) =>\n a.Name.toLowerCase() > b.Name.toLowerCase()\n ? 1\n : b.Name.toLowerCase() > a.Name.toLowerCase()\n ? -1\n : 0\n );\n for (let i = 0; i < subOptions.length; i++) {\n schoolOptions.push({\n label: `${subOptions[i].Name}`,\n value: `${subOptions[i].ID}`,\n canAssignParent: subOptions[i].CanAssignParent,\n });\n }\n }\n\n if (schoolSubOptions.length === 0 && schoolOptions.length > 0) {\n this.setState({\n schoolSubOptions: schoolOptions,\n selectedSubPickupModeOption: schoolOptions[0].value,\n });\n }\n\n for (let i = 0; i < busCompletesOptions.length; i++) {\n subBus = busCompletesOptions[i].SubOptions;\n }\n for (let i = 0; i < subBus.length; i++) {\n busOptions.push({\n label: `${subBus[i].Name}`,\n value: `${subBus[i].ID}`,\n canAssignParent: subBus[i].CanAssignParent,\n });\n }\n\n if (busRouteSubOptions.length === 0 && busOptions.length > 0) {\n busOptions = busOptions.sort((a, b) =>\n a.label.toLowerCase() > b.label.toLowerCase()\n ? 1\n : b.label.toLowerCase() > a.label.toLowerCase()\n ? -1\n : 0\n );\n this.setState({\n busRouteSubOptions: busOptions,\n selectedBusRouteOption: busOptions[0].value,\n });\n }\n }\n\n if (error) {\n toast.error(error.Message || error.message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n doChangeDelegationClear();\n } else if (changeDelegationResponse) {\n toast.success(this.props.t(\"changePickupScr_Success\"), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n doHideModal();\n doChangeDelegationClear();\n doGetAvailableDispatchClear();\n if (doCallbackRefresh) doCallbackRefresh();\n //doHideModal();\n }\n }\n\n render() {\n const {\n selectedOptionPickupMode,\n selectedBusRouteOption,\n selectedSubPickupModeOption,\n pickupModeList,\n schoolSubOptions,\n busRouteSubOptions,\n gaurdianDetails,\n } = this.state;\n\n const { navigation, isFetching } = this.props;\n\n let selectedOptionPickupModeText = \"\";\n if (selectedOptionPickupMode == 4)\n selectedOptionPickupModeText = this.props.t(\"After_School_Program\");\n else if (selectedOptionPickupMode == 1)\n selectedOptionPickupModeText = this.props.t(\"Bus_Route\");\n else if (selectedOptionPickupMode != 0 && selectedOptionPickupMode != null)\n selectedOptionPickupModeText = this.props.t(\"DismSelectHowScr-whoWill\");\n\n return (\n
    \n
    \n
    \n \n {this.props.t(\"Select_How_Label\")}\n
    \n \n \n \n
    \n
    \n
    \n \n\n {\n this.setState({\n selectedOptionPickupMode: eventKey,\n });\n }}\n onClick={() => {\n this.setState({\n previousSelectedOptionsPickupMode: selectedOptionPickupMode,\n });\n }}\n >\n \n {this.getPickupModeById(selectedOptionPickupMode)}\n {pickupModeList.length === 0 && (\n \n )}\n \n\n \n {pickupModeList.map((data) => {\n return (\n \n {data.label}\n \n );\n })}\n \n \n
    \n\n
    \n { selectedOptionPickupMode == 4 ? (\n \n ):null}\n\n {selectedOptionPickupMode == 1 && (\n {\n this.setState({\n selectedBusRouteOption: eventKey,\n });\n }}\n >\n \n {this.getBusRouteById(selectedBusRouteOption).label}\n {busRouteSubOptions.length === 0 && (\n \n )}\n \n\n \n {busRouteSubOptions.map((data) => {\n return (\n \n {data.label}\n \n );\n })}\n \n \n )}\n\n {selectedOptionPickupMode == 4 && (\n {\n this.setState({\n selectedSubPickupModeOption: eventKey,\n });\n }}\n >\n \n {\n this.getAfterSchoolProgramById(selectedSubPickupModeOption)\n .label\n }\n {schoolSubOptions.length === 0 && (\n \n )}\n \n\n \n {schoolSubOptions.map((data) => {\n return (\n \n {data.label}\n \n );\n })}\n \n \n )}\n
    \n {this.canAssignParentAllowed() && (\n
    \n \n {\n this.setState({\n selectedOptionPickupBy: this.props.t(\n \"Select_Me_Dismissal_Label\"\n ),\n });\n }}\n className={\n this.state.selectedOptionPickupBy ===\n this.props.t(\"Select_Me_Dismissal_Label\")\n ? \"custom-radio mb-20 checked\"\n : \"custom-radio mb-20\"\n }\n >\n \n \n \n {this.props.t(\"IWillPickup\")}\n \n
    \n\n {\n if (\n gaurdianDetails !== null &&\n gaurdianDetails !== undefined\n ) {\n this.setState({\n selectedOptionPickupBy: `${\n gaurdianDetails.Firstname\n } ${\"\"} ${gaurdianDetails.Lastname}`,\n });\n }\n this.openContact(\n this.props.t(\"Select_Contact_Dismissal_Label\")\n );\n }}\n className={\n this.state.selectedOptionPickupBy !==\n this.props.t(\"Select_Me_Dismissal_Label\")\n ? \"custom-radio rightArrowLabel mb-20 checked\"\n : \"custom-radio rightArrowLabel mb-20\"\n }\n >\n
    \n \n \n \n {this.props.t(\"change_selection_text\")}\n {/* {this.state.selectedOptionPickupBy ===\n\t\t\t\t\t\t\t this.props.t(\"Select_Me_Dismissal_Label\")\n\t\t\t\t\t\t\t\t? gaurdianDetails === null\n\t\t\t\t\t\t\t\t ? this.props.t(\"change_selection_text\")\n\t\t\t\t\t\t\t\t : `${gaurdianDetails.Firstname} ${\"\"} ${\n\t\t\t\t\t\t\t\t\t gaurdianDetails.Lastname\n\t\t\t\t\t\t\t\t\t}`\n\t\t\t\t\t\t\t\t: this.state.selectedOptionPickupBy} */}\n \n
    \n\n {this.state.selectedOptionPickupBy ===\n this.props.t(\"Select_Me_Dismissal_Label\") ? null : (\n
    \n {gaurdianDetails.PhotoUrl ? (\n
    \n \n \n \n
    \n ) : null}\n
    \n \n {`${gaurdianDetails.Firstname} ${\"\"} ${\n gaurdianDetails.Lastname\n }`}\n \n \n {gaurdianDetails.PhoneNumber}\n \n
    \n
    \n )}\n
    \n \n )}\n \n \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n loadingForPickupMode: state.school.loadingForPickupMode,\n changeDelegationResponse: state.student.changeDelegationResponse,\n userLoginInfo: state.userAccount.userLoginInfo,\n availableDispatch: state.student.availableDispatch,\n error: state.student.error,\n\n setCreatePickupButtonsUI: state.userAccount.setCreatePickupButtonsUI,\n setHelpListData: state.userAccount.setHelpListData,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doChangeDelegation: (data) => dispatch(changeDelegation(data)),\n doChangeDelegationClear: () => dispatch(changeDelegationClear()),\n doGetAvailableDispatch: (data) => dispatch(getAvailableDispatch(data)),\n doGetAvailableDispatchClear: () => dispatch(getAvailableDispatchClear()),\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps, null, {\n forwardRef: true,\n })(DismissalSelectHow)\n);\n","import React from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport { connect } from \"react-redux\";\nimport { getDelegates } from \"../../common/actions/userAccount\";\nimport {\n getDelegationToParent,\n getDelegationToParentClear,\n} from \"../../common/actions/students/studentAction\";\nimport { showModal, hideModal, setHelpList, setOldHelpSetting } from \"../../common/actions/userAccount\";\nimport GLOBAL_CONST from '../../helper/AppConstants';\nimport moment from \"moment\";\n\nclass FutureDelegation extends React.Component {\n constructor(props) {\n super(props);\n \n }\n componentDidMount = () => {\n this.getRecords(false);\n this.dosetHelpList()\n };\n\n dosetHelpList = () => {\n\n this.props.dosetHelpList({\n stackType: \"ChildManagement\",\n screen: GLOBAL_CONST.SCREEN_NAMES.FUTURE_DELEGATIONS,\n title: this.props.t('Future_Delegation'),\n });\n }\n\n openHelpModal = () => {\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n }\n });\n }\n\n\n\n getRecords = (reload) => {\n let ChildInfo = this.props.child;\n const { doGetDelegationToParent, getDelegationsRecord } = this.props;\n let studentId = ChildInfo.StudentDBID;\n const today = new Date();\n let startDate = moment(today).format(\"MM/DD/YYYY\");\n\n let lastRecord = 0;\n if (reload === false && getDelegationsRecord.length > 0) {\n lastRecord =\n getDelegationsRecord[getDelegationsRecord.length - 1].CalendarID;\n }\n doGetDelegationToParent({\n studentId,\n startDate,\n lastRecord,\n pageSize: 20,\n });\n };\n componentWillUnmount() {\n const { doGetDelegationToParentClear } = this.props;\n doGetDelegationToParentClear();\n }\n\n\n getFutureDelegationView = () => {\n\n const { getDelegationsRecord } = this.props;\n let ChildInfo = this.props.ChildInfo;\n return (\n
    \n
    \n
    \n
    \n

    {this.props.t(\"Future_Delegation\")}

    \n \n
    \n\n {\n this.closeModal();\n }}\n >\n
    \n
    \n {getDelegationsRecord.length === 0 &&

    {this.props.t('nopickup_scheduled')}

    }\n {getDelegationsRecord.length > 0 &&
      \n {getDelegationsRecord.map((item) => (\n
    • \n
      \n {moment(item.CalendarDate).format(\"D-MMM\")} \n {moment(item.CalendarDate).format(\"ddd\")}\n
      \n
      \n {this.props.t(\"futureDelegationScr_will_pickup_by\")}-{\" \"}\n {item.PickupMode}\n
      \n
    • \n ))}\n
    \n }\n
    \n
    \n
    \n );\n };\n\n render() {\n return this.getFutureDelegationView();\n }\n closeModal = () => {\n this.props.doHideModal();\n this.props.doSetOldHelpSetting()\n };\n}\n\nfunction mapStateToProps(state) {\n return {\n getDelegationsRecord: state.student.getDelegationsRecord,\n\n setHelpListData: state.userAccount.setHelpListData,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doGetDelegationToParent: (data) => dispatch(getDelegationToParent(data)),\n\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n\n doGetDelegationToParentClear: () =>\n dispatch(getDelegationToParentClear()),\n doSetOldHelpSetting: () => dispatch(setOldHelpSetting()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(FutureDelegation)\n);\n","import React from \"react\";\nimport { connect } from \"react-redux\";\nimport { withTranslation } from \"react-i18next\";\nimport moment from \"moment\";\nimport { Colors } from \"../../theme\";\n\nconst DISPLAY_PER_PAGE = 15;\n\n\nclass PickupSummaryView extends React.Component {\n constructor(props) {\n super(props)\n this.state = {\n selectedDays: [],\n };\n }\n\n\n buildRecurringMainView = () => {\n\n const {\n selectedDate,\n selectedTillDate,\n selectRecurringOption,\n recurringDates,\n selectedOption,\n } = this.props;\n let typeText = selectRecurringOption;\n return (\n
    \n
    \n \n \n {this.props.t(\"Repeat_Type_Label\")}\n \n {typeText}\n \n \n \n {this.props.t(\"Date_Range_Label\")}\n \n \n {`${moment(selectedDate).format(\"MMM-DD\")} ${typeText === this.props.t(\"selectWhenScr-none\")\n ? \"\" : moment(\n selectedTillDate\n ).format(\"MMM-DD\")}`}\n \n \n
    \n\n
    \n {\n recurringDates.length > 0 &&\n
    \n {this.props.t(\"Selected_Days_Label\")}\n
    \n
    \n\n {this.buildRecurringDatesView()}\n
    \n
    \n }\n\n
    \n
    \n {this.props.t(\"Please_Notes_Label\")}\n
    \n
      \n
    • \n {this.props.t(\"Dates_Marked_Label\")}{\" \"}\n {this.props.t(\"Orange_Label\")} {this.props.t(\"Indecates_Text\")}{\" \"}\n {this.props.t(\"Pickup_Already_Schedule_Text\")}\n
    • \n
    • {this.props.t(\"Tap_Select_Text\")}
    • \n
    \n
    \n
    \n
    \n );\n }\n\n buildRecurringDatesView = () => {\n const {\n recurringDates,\n markedDates,\n currentPageIndex,\n pageIndexes,\n saveChangesManuallExcludedDates,\n } = this.props;\n const { selectedDays } = this.state;\n\n const manuallExcludedDates = { ...this.props.manuallExcludedDates };\n\n let days = [];\n const startIndex = 0;\n\n let endIndex = recurringDates.length;\n for (var i = startIndex; i < endIndex; i++) {\n const item = recurringDates[i];\n\n const rec = markedDates[moment(item).format(\"YYYY-MM-DD\")];\n let doesDismissalExists = false;\n const doesExcluded = item in manuallExcludedDates;\n doesDismissalExists =\n rec && rec.record && rec.record.RecordSource !== \"DefaultPickupEntry\";\n let dateStyle = \"btn select-days-btn\"\n if (doesExcluded) {\n dateStyle = \"btn select-days-btn excluded\"\n } else if (doesDismissalExists) {\n dateStyle = \"btn select-days-btn exists\"\n }\n\n\n days.push(\n
    {\n if (item in manuallExcludedDates) delete manuallExcludedDates[item];\n else manuallExcludedDates[item] = item;\n\n saveChangesManuallExcludedDates(manuallExcludedDates);\n }}\n >\n \n
    \n );\n }\n return days;\n }\n\n\n render() {\n return this.buildRecurringMainView();\n }\n}\n\nfunction mapStateToProps(state) {\n return {};\n}\nfunction mapDispatchToProps(dispatch) {\n return {};\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(PickupSummaryView)\n);\n","import React from \"react\";\nimport \"./../../../../node_modules/bootstrap/dist/css/bootstrap.min.css\";\n\nimport \"../../Styles/app.css\";\nimport \"./Styles/style.css\";\nimport \"./Styles/theme-responsive.css\";\nimport { connect } from \"react-redux\";\nimport { saveRegistrationInfo, showModal, hideModal, setHelpList, getCountryCodes } from \"../../../common/actions/userAccount\";\nimport { nextField } from \"../../../helper/utility\";\nimport GLOBAL_CONST from '../../../helper/AppConstants';\nimport {\n RegisterFooter,\n RegisterHeader,\n RegisterWizard,\n SubmitButton,\n} from \"../../CommonComponents\";\nimport \"../../../../node_modules/font-awesome/css/font-awesome.min.css\";\nimport { withTranslation } from \"react-i18next\";\nimport { createLoadingSelector } from \"../../../common/reducers/selectors\";\nconst loadingSelector = createLoadingSelector([\"register_name\"]);\n\nclass RegisterName extends React.Component {\n constructor(props) {\n super(props);\n const { registeredFirstname, registeredLastname } = this.props\n this.state = {\n firstName: registeredFirstname ? registeredFirstname : '',\n lastName: registeredLastname ? registeredLastname : '',\n firstNameError: \"\",\n lastNameError: \"\"\n };\n this.dosetHelpList()\n this.props.doGetCountryCodes()\n }\n\n\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"Registration\",\n screen: GLOBAL_CONST.SCREEN_NAMES.REGISTRATION_NAME,\n title: this.props.t('regCardScr-regAccount'),\n });\n }\n openHelpModal = () => {\n\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n }\n });\n }\n\n\n handleFirstNameChange = ({ target: { value: firstName } }) =>\n this.setState({ firstName, firstNameError: \"\" });\n handleLastNameChange = ({ target: { value: lastName } }) =>\n this.setState({ lastName, lastNameError: \"\" });\n\n submitForm = () => {\n const { firstName, lastName } = this.state;\n const { doSaveRegistrationInfo } = this.props;\n\n if (firstName.trim() === '') {\n this.setState({ firstNameError: this.props.t(\"First_Name_Alert\") });\n return;\n } if (lastName.trim() === '') {\n this.setState({ lastNameError: this.props.t(\"Last_Name_Alert\") });\n return;\n }\n\n doSaveRegistrationInfo({\n registeredFirstname: firstName,\n registeredLastname: lastName,\n });\n\n this.props.history.push(\"/registerEmail\");\n };\n\n render() {\n const { firstName, lastName, firstNameError, lastNameError} = this.state;\n const { isFetching } = this.props;\n\n return (\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n

    \n {this.props.t(\"regNameScr-questName\")}\n

    \n

    \n {this.props.t(\"regNameScr-descript\")}\n

    \n
    \n
    \n nextField(event)}\n />\n \n {\" \"}\n {firstNameError}\n \n
    \n\n
    \n { if (event.key === 'Enter') this.submitForm(); }}\n />\n \n {\" \"}\n {lastNameError}\n \n
    \n\n
    \n \n
    \n {\n this.submitForm();\n }}\n loading={isFetching}\n />\n \n \n
    \n
    \n
    \n
    \n
    \n
    \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n registeredFirstname: state.userAccount.registeredFirstname,\n registeredLastname: state.userAccount.registeredLastname,\n setHelpListData: state.userAccount.setHelpListData,\n isFetching: loadingSelector(state),\n };\n}\n\nfunction mapDispatchToProps(dispatch) {\n return {\n doSaveRegistrationInfo: (data) => dispatch(saveRegistrationInfo(data)),\n\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n doGetCountryCodes: () => dispatch(getCountryCodes()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(RegisterName)\n);\n","import React from \"react\";\nimport \"./../../../../node_modules/bootstrap/dist/css/bootstrap.min.css\";\nimport \"../../Styles/app.css\";\nimport \"./Styles/style.css\";\nimport \"./Styles/theme-responsive.css\";\nimport { connect } from \"react-redux\";\nimport i18n from \"i18next\";\nimport {\n\tRegisterFooter,\n\tRegisterHeader,\n\tRegisterWizard,\n\tSubmitButton,\n} from \"../../CommonComponents\";\nimport \"../../../../node_modules/font-awesome/css/font-awesome.min.css\";\nimport {\n\tsaveRegistrationInfo,\n\tcheckUserEmail,\n\tcheckUserEmailClear,\n\tstartUserRegistration,\n\tstartRegistrationClear,\n\tsetEnvironment,\n\tshowModal, hideModal, setHelpList\n} from \"../../../common/actions/userAccount\";\n\nimport { BootstrapModal } from \"../../CommonComponents\";\nimport GLOBAL_CONST from '../../../helper/AppConstants';\n\nimport { createLoadingSelector } from \"../../../common/reducers/selectors\";\nimport { withTranslation } from \"react-i18next\";\nimport { getLanguageCode } from \"../../../helper/utility\";\nconst loadingSelector = createLoadingSelector([\n\t\"check_email\",\n\t\"start_registartion\",\n]);\n\nclass RegisterEmail extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tconst { registeredEmail } = this.props\n\t\tthis.state = {\n\t\t\temail: registeredEmail ? registeredEmail : '',\n\t\t\temailInvalid: \"\",\n\t\t};\n\t\tthis.dosetHelpList()\n\t}\n\n\n\tdosetHelpList = () => {\n\t\tthis.props.dosetHelpList({\n\t\t\tstackType: \"Registration\",\n\t\t\tscreen: GLOBAL_CONST.SCREEN_NAMES.REGISTRATION_EMAIL,\n\t\t\ttitle: this.props.t('regCardScr-regAccount'),\n\t\t});\n\t}\n\topenHelpModal = () => {\n\t\tthis.props.doShowModal({\n\t\t\tmodalScreenName: \"HelpListing\",\n\t\t\tmodalClassName: \"helpSupportModal sidebar-modal right\",\n\t\t\tparams: {\n\t\t\t\tstackType: this.props.setHelpListData.stackType,\n\t\t\t\tscreen: this.props.setHelpListData.screen,\n\t\t\t\ttitle: this.props.setHelpListData.title,\n\t\t\t}\n\t\t});\n\t}\n\n\thandleEmailChange = ({ target: { value: email } }) =>\n\t\tthis.setState({ email, emailInvalid: \"\" });\n\n\tsubmitForm = () => {\n\t\tlet { env } = this.state;\n\t\tconst { email } = this.state;\n\t\tvar reg = /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n\n\t\tlet isValid = reg.test(email);\n\t\tif (reg.test(email) === false) {\n\t\t\tthis.setState({\n\t\t\t\temailInvalid: `${this.props.t(\"regAcctScr-emailError\")}`,\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tif (email.endsWith(\".con\")) {\n\t\t\tthis.setState({\n\t\t\t\temailInvalid: `${this.props.t(\"regAcctScr-emailError\")}`,\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\n\t\tif (email.includes(\".staging\")) {\n\t\t\tenv = \"staging\";\n\t\t} else if (email.includes(\".develop\")) {\n\t\t\tenv = \"develop\";\n\t\t} else if (email.includes(\".localhost\")) {\n\t\t\tenv = \"localhost\";\n\t\t} else {\n\t\t\tenv = \"prod\";\n\t\t}\n\t\tconst { doSetEnvironment } = this.props;\n\t\tthis.setState({ env }, () => {\n\t\t\tif (env === \"staging\") {\n\t\t\t\tdoSetEnvironment({\n\t\t\t\t\tenv: \"staging\",\n\t\t\t\t\tcallback: this.doCheckEmailProcess,\n\t\t\t\t});\n\t\t\t} else if (env === \"develop\") {\n\t\t\t\tdoSetEnvironment({\n\t\t\t\t\tenv: \"develop\",\n\t\t\t\t\tcallback: this.doCheckEmailProcess,\n\t\t\t\t});\n\t\t\t} else if (env === \"localhost\") {\n\t\t\t\tdoSetEnvironment({\n\t\t\t\t\tenv: \"localhost\",\n\t\t\t\t\tcallback: this.doCheckEmailProcess,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tdoSetEnvironment({ env: \"prod\", callback: this.doCheckEmailProcess });\n\t\t\t}\n\t\t});\n\t};\n\tdoCheckEmailProcess = () => {\n\t\tconst { doCheckEmail } = this.props;\n\t\tlet { email } = this.state;\n\t\tif (email.includes(\".staging\")) {\n\t\t\temail = email.replace(\".staging\", \"\");\n\t\t}else if (email.includes(\".develop\")) {\n\t\t\temail = email.replace(\".develop\", \"\");\n\t\t}else if (email.includes(\".localhost\")) {\n\t\t\temail = email.replace(\".localhost\", \"\");\n\t\t}\n\n\t\tdoCheckEmail({ Email: email, locale: getLanguageCode() });\n\t};\n\tdoRegistration = () => {\n\t\tconst {\n\t\t\tregisteredFirstname,\n\t\t\tregisteredLastname,\n\t\t\tdostartUserRegistration,\n\t\t} = this.props;\n\n\t\tlet { email } = this.state;\n\t\tif (email.includes(\".staging\")) {\n\t\t\temail = email.replace(\".staging\", \"\");\n\t\t}else if (email.includes(\".develop\")) {\n\t\t\temail = email.replace(\".develop\", \"\");\n\t\t}else if (email.includes(\".localhost\")) {\n\t\t\temail = email.replace(\".localhost\", \"\");\n\t\t}\n\n\t\tdostartUserRegistration({\n\t\t\tFirstname: registeredFirstname,\n\t\t\tLastname: registeredLastname,\n\t\t\tEmail: email,\n\t\t\tLocale: getLanguageCode()\n\t\t});\n\t};\n\n\tcomponentDidUpdate() {\n\t\tconst { email } = this.state;\n\t\tconst {\n\t\t\tcheckEmailResponse,\n\t\t\terror,\n\t\t\tdoCheckEmailClear,\n\t\t\tregistartionResponse,\n\t\t\tdostartRegistrationClear,\n\t\t\tdoSaveRegistrationInfo,\n\t\t} = this.props;\n\n\t\tif (error) {\n\t\t\tthis.setState({ emailInvalid: error.Message });\n\t\t\tdoCheckEmailClear();\n\t\t} else if (checkEmailResponse) {\n\t\t\tdoCheckEmailClear();\n\t\t\tthis.doRegistration();\n\t\t} else if (registartionResponse) {\n\t\t\tdoSaveRegistrationInfo({\n\t\t\t\tregisteredEmail: email,\n\t\t\t\tregisteredResultCache: registartionResponse,\n\t\t\t});\n\t\t\tthis.props.history.push(\"/confirmEmail\");\n\t\t\tdostartRegistrationClear();\n\t\t}\n\t}\n\n\trender() {\n\t\tconst { email, emailInvalid } = this.state;\n\t\tconst { isFetching } = this.props;\n\t\treturn (\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    { e.preventDefault() }}>\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t{this.props.t(\"regAcctScr-yourEmail\")}\n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t{this.props.t(\"regAcctScr-enterEmail\")}\n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t { if (event.key === 'Enter') this.submitForm(); }}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{\" \"}\n\t\t\t\t\t\t\t\t\t\t\t\t{emailInvalid}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tthis.submitForm();\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tloading={isFetching}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t);\n\t}\n}\n\nfunction mapStateToProps(state) {\n\treturn {\n\t\tregisteredEmail: state.userAccount.registeredEmail,\n\t\tregisteredFirstname: state.userAccount.registeredFirstname,\n\t\tregisteredLastname: state.userAccount.registeredLastname,\n\t\tisFetching: loadingSelector(state),\n\t\tcheckEmailResponse: state.userAccount.checkEmailResponse,\n\t\tregisteredResultCache: state.userAccount.registeredResultCache,\n\t\tregistartionResponse: state.userAccount.registartionResponse,\n\t\terror: state.userAccount.error,\n\t\tverifiedEmail: state.userAccount.verifiedEmail,\n\t\tsetHelpListData: state.userAccount.setHelpListData,\n\t};\n}\n\nfunction mapDispatchToProps(dispatch) {\n\treturn {\n\t\tdoSaveRegistrationInfo: (data) => dispatch(saveRegistrationInfo(data)),\n\t\tdoCheckEmail: (data) => dispatch(checkUserEmail(data)),\n\t\tdoCheckEmailClear: () => dispatch(checkUserEmailClear()),\n\t\tdostartUserRegistration: (data) => dispatch(startUserRegistration(data)),\n\t\tdostartRegistrationClear: () => dispatch(startRegistrationClear()),\n\t\tdoSetEnvironment: (data) => dispatch(setEnvironment(data)),\n\n\t\tdosetHelpList: (data) => dispatch(setHelpList(data)),\n\t\tdoShowModal: (data) => dispatch(showModal(data)),\n\t\tdoHideModal: () => dispatch(hideModal()),\n\n\n\t};\n}\nexport default withTranslation()(\n\tconnect(mapStateToProps, mapDispatchToProps)(RegisterEmail)\n);\n","export default __webpack_public_path__ + \"static/media/verify-email.ac7f5428.svg\";","export default __webpack_public_path__ + \"static/media/email-verified.25b51211.svg\";","import React from \"react\";\nimport \"./../../../../node_modules/bootstrap/dist/css/bootstrap.min.css\";\nimport \"../../Styles/app.css\";\nimport \"./Styles/style.css\";\nimport \"./Styles/theme-responsive.css\";\nimport { connect } from \"react-redux\";\nimport {\n RegisterFooter,\n RegisterHeader,\n RegisterWizard,\n SubmitButton,\n} from \"../../CommonComponents\";\nimport \"../../../../node_modules/font-awesome/css/font-awesome.min.css\";\nimport verifyEmailImage from \"../../assets/registerImages/verify-email.svg\";\nimport verifiedEmailImage from \"../../assets/registerImages/email-verified.svg\";\nimport { createLoadingSelector } from \"../../../common/reducers/selectors\";\nimport RingLoader from \"react-spinners/ClipLoader\";\nimport { toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport { withTranslation } from \"react-i18next\";\n\nimport {\n verifiedUserEmail,\n verifiedUserEmailClear,\n reSendEmailUser,\n reSendEmailClear,\n saveRegistrationInfo,\n} from \"../../../common/actions/userAccount\";\ntoast.configure();\nconst loadingSelector = createLoadingSelector([\n \"verified_email\",\n \"re_send_email\",\n]);\n\nclass ConfirmEmail extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n isVerified: false,\n };\n }\n\n verifiedEmail = () => {\n this.setState({ isVerified: true });\n };\n\n submitForm = () => {\n this.props.history.push(\"/registerPhone\");\n };\n back = () => {\n this.props.history.goBack();\n };\n\n advancePage = () => {\n const { doVerifiedUserEmail, registeredToken } = this.props;\n\n let { registeredEmail } = this.props;\n if(registeredEmail.includes(\".staging\")){\n\t\tregisteredEmail = registeredEmail.replace(\".staging\", \"\");\n\t}else if(registeredEmail.includes(\".develop\")){\n\t\tregisteredEmail = registeredEmail.replace(\".develop\", \"\");\n\t}else if(registeredEmail.includes(\".localhost\")){\n\t\tregisteredEmail = registeredEmail.replace(\".localhost\", \"\");\n\t}\n\t\n\n doVerifiedUserEmail({\n Email: registeredEmail,\n RegistrationTokenID: registeredToken,\n });\n };\n\n resendEmail = () => {\n const { doReSendEmailUser } = this.props;\n let { registeredEmail } = this.props;\n if(registeredEmail.includes(\".staging\")){\n\t\tregisteredEmail = registeredEmail.replace(\".staging\", \"\");\n\t}else if(registeredEmail.includes(\".develop\")){\n\t\tregisteredEmail = registeredEmail.replace(\".develop\", \"\");\n\t}else if(registeredEmail.includes(\".localhost\")){\n\t\tregisteredEmail = registeredEmail.replace(\".localhost\", \"\");\n\t}\n\n doReSendEmailUser({ Email: registeredEmail });\n };\n\n componentDidUpdate() {\n const { isVerified } = this.state;\n const {\n verifiedEmailResponse,\n doVerifiedUserEmailClear,\n error,\n reSendEmailResponse,\n doReSendEmailClear,\n doSaveRegistrationInfo,\n registeredEmail,\n } = this.props;\n\n \n if (verifiedEmailResponse) {\n if (verifiedEmailResponse.Success === true) {\n doVerifiedUserEmailClear();\n this.setState({ isVerified: true });\n doSaveRegistrationInfo({\n verifiedEmail: registeredEmail,\n });\n } else if (\n isVerified === false &&\n verifiedEmailResponse.Success === false\n ) {\n doVerifiedUserEmailClear();\n toast.error(`${this.props.t(\"confirmEmailScr-check-mailbox\")}`, {\n autoClose: 2000,\n });\n }\n } else if (error) {\n toast.error(error.Message || error.message, { autoClose: 2000 });\n } else if (reSendEmailResponse) {\n toast.info(reSendEmailResponse.Message, { autoClose: 2000 });\n doReSendEmailClear();\n }\n }\n\n render() {\n const { isVerified } = this.state;\n const { registeredEmail, isFetching } = this.props;\n\n return (\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n {isVerified === true ? (\n <>\n {\" \"}\n
    \n \n
    \n
    \n

    \n {this.props.t(\"regConEmailScr-EmailVerify\")}\n

    \n

    \n {this.props.t(\"regConEmailScr-regProcess\")}\n

    \n
    \n
    \n {\n this.submitForm();\n }}\n />\n
    {\" \"}\n \n ) : (\n <>\n {\" \"}\n
    \n \n
    \n
    \n

    \n {this.props.t(\"regConEmailScr-verify-emailLabel\")}\n

    \n

    \n {this.props.t(\"regConEmailScr-sentEmail\")}{\" \"}\n \n {registeredEmail}\n {\" \"}\n {this.props.t(\"regConEmailScr-EmailLink\")}{\" \"}\n \n {this.props.t(\"regConEmailScr-clickhere\")}\n {\" \"}\n {this.props.t(\"regConEmailScr-resend-link\")}\n

    \n
    \n
    \n \n {this.props.t(\"regConEmailScr-changeEmail\")}\n \n
    \n
    \n \n {\" \"}\n {isFetching ? (\n \n ) : null}{\" \"}\n   {this.props.t(\"regCardScr-verifyEmail\")}\n \n
    \n \n )}\n \n\n \n
    \n
    \n
    \n
    \n
    \n
    \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n registeredToken: state.userAccount.registeredToken,\n registeredEmail: state.userAccount.registeredEmail,\n verifiedEmailResponse: state.userAccount.verifiedEmailResponse,\n reSendEmailResponse: state.userAccount.reSendEmailResponse,\n isFetching: loadingSelector(state),\n error: state.userAccount.error,\n emailResendError: state.userAccount.emailResendError,\n verifiedEmail: state.userAccount.verifiedEmail,\n };\n}\n\nfunction mapDispatchToProps(dispatch) {\n return {\n doVerifiedUserEmail: (data) => dispatch(verifiedUserEmail(data)),\n doVerifiedUserEmailClear: () => dispatch(verifiedUserEmailClear()),\n doReSendEmailUser: (data) => dispatch(reSendEmailUser(data)),\n doReSendEmailClear: () => dispatch(reSendEmailClear()),\n doSaveRegistrationInfo: (data) => dispatch(saveRegistrationInfo(data)),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(ConfirmEmail)\n);\n","import React from \"react\";\nimport \"./../../../../node_modules/bootstrap/dist/css/bootstrap.min.css\";\nimport \"./../../../../node_modules/jquery/src/jquery.js\";\nimport \"./../../../../node_modules/bootstrap/dist/js/bootstrap.min.js\";\nimport \"../../../../node_modules/font-awesome/css/font-awesome.min.css\";\nimport \"../../Styles/app.css\";\nimport \"./Styles/style.css\";\nimport \"react-bootstrap-country-select/dist/react-bootstrap-country-select.css\";\nimport { connect } from \"react-redux\";\nimport { withTranslation } from \"react-i18next\";\nimport Select from \"react-dropdown-select\";\nimport { formatPhone } from \"../../../helper/utility\";\nimport GLOBAL_CONST from '../../../helper/AppConstants';\n\nimport {\n saveRegistrationInfo,\n addUserPhoneNumber,\n userPhoneNumberClear,\n getCountryCodes,\n setHelpList,\n showModal, hideModal,\n} from \"../../../common/actions/userAccount\";\nimport {\n RegisterFooter,\n RegisterHeader,\n RegisterWizard,\n SubmitButton,\n} from \"../../CommonComponents\";\n\nimport { createLoadingSelector } from \"../../../common/reducers/selectors\";\nconst loadingSelector = createLoadingSelector([\"add_phone_number_user\"]);\n// toast.configure() ;\nconst regExpr = /^((\\+\\d{1,3}(-| )?\\(?\\d\\)?(-| )?\\d{1,5})|(\\(?\\d{2,6}\\)?))(-| )?(\\d{3,4})(-| )?(\\d{4})(( x| ext)\\d{1,5}){0,1}$/;\nconst defaultCountry = { \"CountryId\": 1, \"CountryName\": \"USA\", \"CountryCode\": \"+1\", \"label\": \"USA(+1)\" }\n\nclass RegisterPhone extends React.Component {\n constructor(props) {\n super(props);\n let { registeredCountryCode, registeredCountryName } = this.props;\n if (registeredCountryCode === null) registeredCountryCode = \"+1\";\n if (registeredCountryName === null) registeredCountryName = \"USA\";\n const { registeredPhone } = this.props\n this.state = {\n countryCode: registeredCountryCode,\n countryName: registeredCountryName,\n phone: (registeredPhone?registeredPhone:''),\n phoneInvalid: \"\",\n selectedCountryCode:\n registeredCountryCode !== null ? registeredCountryCode : \"\",\n selectedCountry: this.getCountry(),\n };\n this.selectedCountry = React.createRef();\n this.phone = React.createRef();\n\n this.dosetHelpList()\n this.props.doGetCountryCodes()\n }\n\n\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"Registration\",\n screen: GLOBAL_CONST.SCREEN_NAMES.REGISTRATION_PHONE,\n title: this.props.t('regCardScr-regAccount'),\n });\n }\n openHelpModal = () => {\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n }\n });\n }\n\n getCountry() {\n const { registeredCountryName, countryCodeListing } = this.props\n if (!countryCodeListing) return\n const items = countryCodeListing.filter(item => {\n return item.CountryName === registeredCountryName\n })\n if (items && items.length > 0) {\n return items\n }\n return [defaultCountry]\n }\n\n saveCountry = (value) => {\n if (value && value.length > 0) {\n this.setState({ selectedCountry: value, countryCode: value[0].CountryCode, countryName: value[0].CountryName });\n this.phone.current.focus();\n }\n };\n submitForm = () => {\n const { phone, countryCode, countryName } = this.state;\n const { doSaveRegistrationInfo, doAddUserPhoneNumber } = this.props;\n //const reg = /^\\(?([0-9]{3})\\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})$/\n // const reg = /^\\+(?:[0-9] ?){6,14}[0-9]$/;\n // console.log(phone.match(reg))\n\n // if (phone.match(reg)=== null) {\n // this.setState({ phoneInvalid: translate(\"regPhoneScr-phoneInvalid\") });\n // return;\n // } \n if (phone.length <= 7) {\n this.setState({ phoneInvalid: this.props.t(\"regPhoneScr-phoneInvalid\") });\n return;\n }\n // else if(countryCode=='+1' && phone.startsWith(\"1\")){\n // this.setState({ phoneInvalid: translate(\"regPhoneScr-phoneInvalid\") });\n\n // }\n if (phone === this.props.registeredPhone && countryName === this.props.registeredCountryName) {\n this.props.history.replace(\"/confirmPhone\");\n return;\n }\n let finalPhone = phone.replace(/[^0-9]/g, '')\n let countryCodeOnly = countryCode.replace('+', '')\n\n if (countryName === \"USA\" && finalPhone.charAt(0) == countryCodeOnly) {\n finalPhone = finalPhone.substring(1)\n console.log(\"finalPhone \" + finalPhone)\n }\n\n this.setState({ phone: finalPhone }, () => {\n doAddUserPhoneNumber({\n PhoneNumber: this.state.phone,\n CountryCode: countryCode,\n ResendOTP: true,\n });\n })\n\n };\n handlePhoneChange = ({ target: { value: phone } }) => {\n this.setState({ phone: formatPhone(phone), phoneInvalid: \"\" });\n }\n\n componentDidUpdate() {\n const { addPhoneNumberResponse, error, userPhoneNumberClear, doSaveRegistrationInfo } = this.props;\n const { phone, countryCode, countryName } = this.state;\n if (error) {\n console.log(\"error\",error)\n this.setState({ phoneInvalid: error.Message });\n userPhoneNumberClear();\n } else if (addPhoneNumberResponse) {\n doSaveRegistrationInfo({\n registeredPhone: phone,\n registeredCountryCode: countryCode,\n registeredCountryName: countryName,\n });\n this.props.history.push(\"/confirmPhone\");\n userPhoneNumberClear();\n }\n }\n render() {\n const { phone, phoneInvalid, selectedCountry, countryCode } = this.state;\n const { isFetching, countryCodeListing } = this.props;\n console.log(\"phoneInvalid\", phoneInvalid)\n return (\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n

    \n {this.props.t(\"regPhoneScr-phoneNumber\")}\n

    \n

    \n {this.props.t(\"regPhoneScr-phoneDescription\")}\n

    \n
    \n
    \n\n this.saveCountry(value)}\n searchBy={\"label\"}\n clearOnSelect={true}\n placeholder={this.props.t(\"Select_Country\")}\n name={this.selectedCountry}\n className=\"form-control\"\n ref={this.selectedCountry}\n />\n
    \n
    \n
    \n \n { if (event.key === 'Enter') this.submitForm(); }}\n name=\"phone\"\n ref={this.phone}\n />\n\n
    \n\n \n {\" \"}\n {phoneInvalid}\n \n
    \n\n
    \n \n
    \n {\n this.submitForm();\n }}\n loading={isFetching}\n />\n \n \n
    \n
    \n
    \n
    \n
    \n
    \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n registeredPhone: state.userAccount.registeredPhone,\n registeredCountryCode: state.userAccount.registeredCountryCode,\n registeredCountryName: state.userAccount.registeredCountryName,\n addPhoneNumberResponse: state.userAccount.addPhoneNumberResponse,\n isFetching: loadingSelector(state),\n error: state.userAccount.error,\n countryCodeListing: state.userAccount.countryCodeListing,\n\n setHelpListData: state.userAccount.setHelpListData,\n };\n}\n\nfunction mapDispatchToProps(dispatch) {\n return {\n doSaveRegistrationInfo: (data) => dispatch(saveRegistrationInfo(data)),\n doAddUserPhoneNumber: (data) => dispatch(addUserPhoneNumber(data)),\n userPhoneNumberClear: () => dispatch(userPhoneNumberClear()),\n doGetCountryCodes: () => dispatch(getCountryCodes()),\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(RegisterPhone)\n);\n","import React from \"react\";\nimport \"./../../../../node_modules/bootstrap/dist/css/bootstrap.min.css\";\n\nimport \"../../Styles/app.css\";\nimport \"./Styles/style.css\";\nimport \"./Styles/theme-responsive.css\";\nimport { connect } from \"react-redux\";\nimport {\n verifyUserOtp,\n verifyUserOtpClear,\n resendOTP,\n resendOTPClear,\n} from \"../../../common/actions/userAccount\";\nimport {\n RegisterFooter,\n RegisterHeader,\n RegisterWizard,\n SubmitButton,\n} from \"../../CommonComponents\";\nimport \"../../../../node_modules/font-awesome/css/font-awesome.min.css\";\nimport { Link } from \"react-router-dom\";\nimport OtpInput from \"react-otp-input\";\nimport { createLoadingSelector } from \"../../../common/reducers/selectors\";\nimport { toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport { withTranslation } from \"react-i18next\";\nimport { Callbacks } from \"jquery\";\ntoast.configure();\nconst loadingSelector = createLoadingSelector([\n \"verify_otp\",\n \"add_phone_number_user\",\n]);\n\nclass ConfirmPhone extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n otp: \"\",\n otpError: \"\"\n };\n }\n\n handleChange = (otp) => {\n this.setState({ otp, otpError: \"\" });\n if(otp.length == 7){\n setTimeout(() => {\n this.submitForm()\n }, 100);\n \n }\n };\n submitForm = () => {\n const { otp } = this.state;\n const { doVerifyUserOtp } = this.props;\n if (otp === \"\") {\n this.setState({\n otpError: `${this.props.t(\"confirmPhoneScr-valid-otpError\")}`,\n });\n return;\n }\n if (otp.length < 7) {\n this.setState({\n otpError: `${this.props.t(\"confirmPhoneScr-valid-otpError\")}`,\n });\n return;\n }\n\n doVerifyUserOtp({ OTPCode: otp });\n };\n\n resendCode = () => {\n const { doResendOTP, registeredPhone, registeredCountryCode } = this.props;\n\n doResendOTP({\n PhoneNumber: registeredPhone,\n CountryCode: registeredCountryCode,\n ResendOTP: true,\n });\n };\n\n buildTitle = () => {\n const { registeredPhone, registeredCountryCode } = this.props;\n var showPhoneNumber = registeredPhone;\n showPhoneNumber = showPhoneNumber\n .replace(/\\D+/g, \"\")\n .replace(/(\\d{3})(\\d{3})(\\d{4})/, \"$1-$2-$3\");\n return (\n
    \n

    \n {this.props.t(\"regConPhoneScr-verifyNumber\")}\n

    \n

    \n {this.props.t(\"regConPhoneScr-confirmCode\")}
    \n \n {\" \"}\n {registeredCountryCode + \" \" + showPhoneNumber}\n \n

    \n

    \n \n {this.props.t(\"regConPhoneScr-changeNumber\")}\n \n

    \n
    \n );\n };\n\n componentDidUpdate() {\n const {\n verifyOtpResponse,\n error,\n doVerifyUserOtpClear,\n reSendOtpResponse,\n doResendOTPClear,\n } = this.props;\n\n if (error) {\n this.setState({ otpError: error.Message });\n doVerifyUserOtpClear();\n } else if (verifyOtpResponse) {\n this.props.history.push(\"/registerPassword\");\n doVerifyUserOtpClear();\n } else if (reSendOtpResponse) {\n toast.info(reSendOtpResponse.Message, { autoClose: 2000 });\n doResendOTPClear();\n }\n }\n\n render() {\n const { otpError } = this.state;\n const { isFetching } = this.props;\n return (\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n\n {this.buildTitle()}\n
    \n \n \n {\" \"}\n {otpError}\n \n
    \n
    \n \n {this.props.t(\"regConPhoneScr-resendCode\")}\n \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n registeredPhone: state.userAccount.registeredPhone,\n registeredCountryCode: state.userAccount.registeredCountryCode,\n verifyOtpResponse: state.userAccount.verifyOtpResponse,\n registeredToken: state.userAccount.registeredToken,\n isFetching: loadingSelector(state),\n error: state.userAccount.error,\n reSendOtpResponse: state.userAccount.reSendOtpResponse,\n };\n}\n\nfunction mapDispatchToProps(dispatch) {\n return {\n doVerifyUserOtp: (data) => dispatch(verifyUserOtp(data)),\n doVerifyUserOtpClear: () => dispatch(verifyUserOtpClear()),\n doResendOTP: (data) => dispatch(resendOTP(data)),\n doResendOTPClear: () => dispatch(resendOTPClear()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(ConfirmPhone)\n);\n","import React from \"react\";\nimport \"./../../../../node_modules/bootstrap/dist/css/bootstrap.min.css\";\n\nimport \"../../Styles/app.css\";\nimport \"./Styles/style.css\";\nimport \"./Styles/theme-responsive.css\";\nimport { connect } from \"react-redux\";\nimport { saveRegistrationInfo, showModal, hideModal, setHelpList } from \"../../../common/actions/userAccount\";\nimport { BootstrapModal } from \"../../CommonComponents\";\nimport GLOBAL_CONST from '../../../helper/AppConstants';\nimport { nextField } from \"../../../helper/utility\";\n\nimport {\n RegisterFooter,\n RegisterHeader,\n RegisterWizard,\n SubmitButton,\n} from \"../../CommonComponents\";\nimport \"../../../../node_modules/font-awesome/css/font-awesome.min.css\";\nimport { withTranslation } from \"react-i18next\";\nimport { createLoadingSelector } from \"../../../common/reducers/selectors\";\nconst loadingSelector = createLoadingSelector([\"register_password\"]);\n\n\nclass RegisterPassword extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n password: null,\n repeatPassword: null,\n passwordStrength: \"\",\n passwordInvalid: \"\",\n confirmError: \"\",\n termsAccepted: false,\n hidePassword: true,\n hideConfirmPassword: true,\n termAcceptError: \"\"\n };\n this.dosetHelpList()\n }\n\n componentDidMount() {\n this.dosetHelpList()\n\n }\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"Registration\",\n screen: GLOBAL_CONST.SCREEN_NAMES.REGISTRATION_PASSWORD,\n title: this.props.t('regCardScr-regAccount'),\n });\n }\n openHelpModal = () => {\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n }\n });\n }\n\n acceptTermAndCondition = () => {\n this.setState({ termsAccepted: !this.state.termsAccepted });\n };\n setPasswordVisibility = () => {\n this.setState({ hidePassword: !this.state.hidePassword });\n };\n\n setConfirmPasswordVisibility = () => {\n this.setState({ hideConfirmPassword: !this.state.hideConfirmPassword });\n };\n handlePassword = (event) => {\n const rating = [\n 0,\n \"Weak\",\n 25,\n \"Medium\",\n 50,\n \"Good\",\n 75,\n \"Strong\",\n 100,\n \"Very Strong\",\n ];\n\n let score = 0;\n let pass = \"\";\n if (event.target.value.length > 8 && event.target.value.match(/[0-9]/)) {\n score += 25;\n }\n if (\n event.target.value.length > 4 &&\n event.target.value.match(/[a-z]/) &&\n event.target.value.match(/[A-Z]/)\n ) {\n score += 25;\n }\n if (event.target.value.match(/[\\!\\@\\#\\$\\%\\^\\&\\*\\?\\_\\~\\-\\(\\)]+/)) {\n score += 25;\n }\n for (let i = rating.length - 1; i >= 0; i -= 1) {\n if (score >= rating[i]) {\n pass = rating[i + 1];\n break;\n }\n }\n\n this.setState({\n passwordStrength: pass,\n password: event.target.value,\n passwordInvalid: \"\",\n });\n };\n secondTextInput(event) {\n const form = event.target.form;\n const index = Array.prototype.indexOf.call(form, event.target);\n if (event.key === 'Enter') {\n form.elements[index + 1].focus();\n }\n }\n handleConfirmPassword = (e) => {\n this.setState({\n repeatPassword: e.target.value,\n confirmError: \"\",\n });\n };\n handletermAccespted = (e) => {\n this.setState({ termsAccepted: e.target.checked, termAcceptError: \"\" });\n };\n renderPasswordString = () => {\n const { password, passwordStrength } = this.state;\n if (password !== \"\") {\n if (passwordStrength === \"Weak\") {\n return {this.props.t(\"regPwdScr-weak\")};\n }\n if (passwordStrength === \"Good\") {\n return (\n {this.props.t(\"regPwdScr-good\")}\n );\n }\n if (passwordStrength === \"Medium\") {\n return (\n \n {this.props.t(\"regPwdScr-medium\")}\n \n );\n }\n if (passwordStrength === \"Strong\" || passwordStrength === \"Strong\") {\n return (\n {this.props.t(\"regPwdScr-strong\")}\n );\n }\n }\n return -;\n };\n\n submitForm = () => {\n const { password, repeatPassword, termsAccepted } = this.state;\n const { doSaveRegistrationInfo } = this.props;\n if (password === null || password.length <= 5) {\n this.setState({\n passwordInvalid: this.props.t(\"regPwdScr-pwdInvalid\"),\n });\n return;\n }\n if (password !== repeatPassword) {\n this.setState({\n confirmError: this.props.t(\"regPwdScr-pwdNotMatch\"),\n });\n return;\n }\n\n if (!termsAccepted) {\n this.setState({\n termAcceptError: this.props.t(\"regPwdScr-please-accept-termsCondition\"),\n });\n return;\n }\n\n doSaveRegistrationInfo({ registeredPassword: password });\n this.props.history.push(\"/registerSuccess\");\n };\n\n render() {\n const {\n hidePassword,\n hideConfirmPassword,\n password,\n repeatPassword,\n passwordInvalid,\n confirmError,\n termsAccepted,\n termAcceptError,\n } = this.state;\n const { isFetching } = this.props;\n return (\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n

    \n {this.props.t(\"regPwdScr-passwordTitle\")}\n

    \n

    \n {this.props.t(\"regPwdScr-passwordDescript\")}\n

    \n
    \n
    \n nextField(event)}\n />\n \n \n {\" \"}\n {passwordInvalid}\n \n
    \n\n
    \n {if (event.key === 'Enter') this.submitForm();}}\n />\n \n\n \n {confirmError != \"\"\n ? confirmError\n : termAcceptError != \"\"\n ? termAcceptError\n : null}\n \n
    \n
    \n

    \n {this.props.t(\"regPwdScr-strength\")}:\n {this.renderPasswordString()}{\" \"}\n

    \n
    \n \n
    \n \n
    \n {\n this.submitForm();\n }}\n loading={isFetching}\n\n />\n \n \n
    \n
    \n
    \n
    \n
    \n
    \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n registeredPassword: state.userAccount.registeredPassword,\n setHelpListData: state.userAccount.setHelpListData,\n };\n}\n\nfunction mapDispatchToProps(dispatch) {\n return {\n doSaveRegistrationInfo: (data) => dispatch(saveRegistrationInfo(data)),\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n\n\n\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(RegisterPassword)\n);\n","export default __webpack_public_path__ + \"static/media/successImage.7e1f747e.svg\";","import React from \"react\";\nimport \"./../../../../node_modules/bootstrap/dist/css/bootstrap.min.css\";\nimport \"../../Styles/app.css\";\nimport \"./Styles/style.css\";\nimport \"./Styles/theme-responsive.css\";\nimport { connect } from \"react-redux\";\nimport { RegisterFooter, RegisterHeader } from \"../../CommonComponents\";\nimport \"../../../../node_modules/font-awesome/css/font-awesome.min.css\";\nimport Success from \"../../assets/registerImages/successImage.svg\";\nimport RingLoader from \"react-spinners/ClipLoader\";\nimport { toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport {\n completeRegisterUser,\n completeRegisterUserClear,\n getUserInformation,\n getUserInfoClear,\n loginRegisteredUser, showModal, hideModal, setHelpList\n} from \"../../../common/actions/userAccount\";\nimport GLOBAL_CONST from '../../../helper/AppConstants';\nimport { withTranslation } from \"react-i18next\";\nimport { createLoadingSelector } from \"../../../common/reducers/selectors\";\nconst loadingSelector = createLoadingSelector([\"complete_registration_user\"]);\ntoast.configure();\n\nclass RegisterSuccess extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n modalVisible: false,\n isRegistered: false,\n message: \"\",\n };\n this.dosetHelpList()\n this.getUserDetails();\n }\n\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"Registration\",\n screen: GLOBAL_CONST.SCREEN_NAMES.REGISTRATION_SUCCESS,\n title: this.props.t('regCardScr-regAccount'),\n });\n }\n openHelpModal = () => {\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n }\n });\n }\n\n\n submitForm = () => {\n const { doCompleteRegisterUser, registeredPassword } = this.props;\n doCompleteRegisterUser({\n Password: registeredPassword,\n });\n };\n getUserDetails = () => {\n const { doGetUserInformation } = this.props;\n doGetUserInformation();\n };\n\n doNavigation = (isParent, isDelegate) => {\n const { completeRegisterUserResponse, doLoginRegisteredUser } = this.props;\n doLoginRegisteredUser(completeRegisterUserResponse.LoggedInParentInfo);\n if (isParent || isDelegate) {\n this.props.history.push(\"/childManagement\");\n } else {\n this.props.history.push(\"/chooseRole\");\n }\n getUserInfoClear();\n };\n\n render() {\n const {\n getUserInfoResponse,\n completeRegisterUserResponse,\n isFetching,\n error,\n doCompleteRegisterUserClear,\n registeredFirstname,\n } = this.props;\n\n const { isRegistered } = this.state;\n let message = \"\",\n title = \"\";\n let isParent = false,\n isDelegate = false;\n if (getUserInfoResponse && getUserInfoResponse.Data.KidsAtSchools > 0) {\n isParent = true;\n }\n if (\n getUserInfoResponse &&\n getUserInfoResponse.Data.KidsDelegatedCurrently > 0\n ) {\n isDelegate = true;\n }\n\n if (isParent) {\n title = `${this.props.t(\n \"regSuccessScr-messageCongrats\"\n )} ${registeredFirstname}`;\n message = this.props.t(\"regSuccessScr-messageParent\");\n } else if (isDelegate) {\n title = `${this.props.t(\n \"regSuccessScr-messageCongrats\"\n )} ${registeredFirstname}`;\n message = this.props.t(\"regSuccessScr-messageDelegate\");\n } else {\n title = `${this.props.t(\n \"regSuccessScr-messageGreeting\"\n )} ${registeredFirstname}`;\n message = this.props.t(\"regSuccessScr-messageHi\");\n }\n if (error) {\n toast.error(error.Message || error.message, { autoClose: 2000 });\n\n doCompleteRegisterUserClear();\n } else if (completeRegisterUserResponse && isRegistered === false) {\n this.setState({ isRegistered: true }, () => {\n this.doNavigation(isParent, isDelegate);\n });\n }\n return (\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n {/*
    \n \n
    */}\n
    \n \"PikMyKid\"\n
    \n {/* {isFetching &&\n
    \n \n
    \n } */}\n
    \n

    {title}

    \n

    {message}

    \n
    \n\n
    \n \n {isFetching ? : null}{\" \"}\n {this.props.t(\"regSuccessScr-get-started\")}\n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n registeredPassword: state.userAccount.registeredPassword,\n registeredFirstname: state.userAccount.registeredFirstname,\n registeredLastname: state.userAccount.registeredLastname,\n isFetching: loadingSelector(state),\n completeRegisterUserResponse:\n state.userAccount.completeRegisterUserResponse,\n getUserInfoResponse: state.userAccount.getUserInfoResponse,\n error: state.userAccount.error,\n setHelpListData: state.userAccount.setHelpListData,\n };\n}\n\nfunction mapDispatchToProps(dispatch) {\n return {\n doCompleteRegisterUser: (data) => dispatch(completeRegisterUser(data)),\n doCompleteRegisterUserClear: () => dispatch(completeRegisterUserClear()),\n doGetUserInformation: () => dispatch(getUserInformation()),\n getUserInfoClear: () => dispatch(getUserInfoClear()),\n doLoginRegisteredUser: (data) => dispatch(loginRegisteredUser(data)),\n\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(RegisterSuccess)\n);\n","export default __webpack_public_path__ + \"static/media/parent-kid-car.2e092676.svg\";","import React from \"react\";\nimport { withRouter, Link } from \"react-router-dom\";\nimport \"./../../../../node_modules/bootstrap/dist/css/bootstrap.min.css\";\n\nimport \"../../Styles/app.css\";\nimport \"./Styles/style.css\";\nimport \"./Styles/theme-responsive.css\";\nimport { connect } from \"react-redux\";\nimport { RegisterFooter, RegisterHeader } from \"../../CommonComponents\";\nimport \"../../../../node_modules/font-awesome/css/font-awesome.min.css\";\nimport kids from \"../../assets/registerImages/parent-kid-car.svg\";\nimport { loginRegisteredUser } from \"../../../common/actions/userAccount\";\nimport { withTranslation } from \"react-i18next\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\ntoast.configure();\n\n\n\nclass ChooseRole extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n userRole: -1,\n submitButton: true,\n roleData: this.setRoles()\n };\n\n }\n\n setRoles = () => {\n return [\n {\n id: 1,\n title: this.props.t(\"boardCardScr-titlePrimary\"),\n content: this.props.t(\"boardCardScr-descriptPrimary\"),\n select: true,\n },\n {\n id: 2,\n title: this.props.t(\"boardCardScr-titleDelagate\"),\n content: this.props.t(\"boardCardScr-descriptDelagate\"),\n },\n {\n id: 3,\n title: this.props.t(\"boardCardScr-titleSure\"),\n content: this.props.t(\"boardCardScr-descriptSure\"),\n },\n ]\n\n }\n changeRole = (index) => {\n this.setState({ userRole: index, submitButton: false });\n };\n\n submitForm = () => {\n const { userRole } = this.state;\n\n if (userRole === -1) {\n\n toast.error(this.props.t('role_select_error'), {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n return\n }\n if (userRole === 0) {\n this.props.history.push(\"/support\");\n } else {\n this.props.history.push(\"/childManagement\");\n }\n };\n displayRoles = () => {\n const { userRole, roleData } = this.state;\n const roleDetails = roleData.map((item, index) => (\n {\n this.changeRole(index);\n }}\n key={item.id}\n >\n

    {item.title}

    \n

    {item.content}

    \n \n ));\n return
    {roleDetails}
    ;\n };\n\n back = (event) => {\n event.preventDefault();\n event.stopPropagation();\n this.props.history.goBack();\n };\n\n render() {\n const { submitButton } = this.state;\n return (\n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n \"PikMyKid\"\n
    \n\n
    \n

    \n {this.props.t(\"ChooseRoleScr-helpUs\")}\n

    \n

    \n {this.props.t(\"ChooseRoleScr-paragraph\")}\n

    \n
    \n {this.displayRoles()}\n
    \n \n {this.props.t(\"regSuccessScr-get-started\")}\n \n
    \n\n \n
    \n
    \n
    \n
    \n
    \n
    \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n registeredPassword: state.userAccount.registeredPassword,\n registeredFirstname: state.userAccount.registeredFirstname,\n registeredLastname: state.userAccount.registeredLastname,\n completeRegisterUserResponse:\n state.userAccount.completeRegisterUserResponse,\n getUserInfoResponse: state.userAccount.getUserInfoResponse,\n error: state.userAccount.error,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doLoginRegisteredUser: (data) => dispatch(loginRegisteredUser(data)),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(ChooseRole)\n);\n","import React from \"react\";\nimport \"./../../../../node_modules/bootstrap/dist/css/bootstrap.min.css\";\nimport \"../../Styles/app.css\";\nimport \"./Styles/style.css\";\nimport \"./Styles/theme-responsive.css\";\nimport { Colors } from \"../../../theme\";\nimport { connect } from \"react-redux\";\nimport { toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport { RegisterFooter, RegisterHeader } from \"../../CommonComponents\";\nimport { nextField } from \"../../../helper/utility\";\nimport \"../../../../node_modules/font-awesome/css/font-awesome.min.css\";\nimport {\n loginRegisteredUser,\n feedbackSubmit,\n feedbackSubmitClear,\n} from \"../../../common/actions/userAccount\";\n\nimport { createLoadingSelector } from \"../../../common/reducers/selectors\";\nimport { withTranslation } from \"react-i18next\";\n\ntoast.configure();\nconst loadingSelector = createLoadingSelector([\"submit_feedback\"]);\n\nclass RegisterSupport extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n schoolNameInvalid: \"\",\n childrenInformationInvalid: \"\",\n dismissalNumberInavlid: \"\",\n schoolName: \"\",\n childrenInformation: \"\",\n dismissalNumber: \"\",\n };\n this.handleChange = this.handleChange.bind(this);\n this.submitForm = this.submitForm.bind(this);\n }\n\n \n submitForm(event) {\n const { schoolName, childrenInformation, dismissalNumber } = this.state;\n const {\n doFeedbackSubmit,\n completeRegisterUserResponse,\n userLoginInfo,\n } = this.props;\n event.preventDefault();\n\n let tokenNumber;\n if (completeRegisterUserResponse === null) {\n tokenNumber = userLoginInfo.AuthTokenID;\n } else {\n tokenNumber = completeRegisterUserResponse.LoginTokenID;\n }\n if (schoolName === \"\") {\n this.setState({\n schoolNameInvalid: `${this.props.t(\"School_Info_Alert\")}`,\n });\n return;\n }\n if (childrenInformation === \"\") {\n this.setState({\n childrenInformationInvalid: `${this.props.t(\"Children_Name_Alert\")}`,\n });\n return;\n }\n if (dismissalNumber === \"\") {\n this.setState({\n dismissalNumberInavlid: `${this.props.t(\n \"Children_Dismissal_Number_Alert\"\n )}`,\n });\n return;\n }\n\n var FeedbackToSend = \"\";\n FeedbackToSend += \"School: \" + schoolName.concat(\", \");\n FeedbackToSend += \"Child: \" + childrenInformation.concat(\", \");\n FeedbackToSend += \"Dismissal: \" + dismissalNumber;\n\n doFeedbackSubmit({ feedback: FeedbackToSend, token: tokenNumber });\n\n this.props.history.push(\"/childManagement\");\n }\n\n handleChange(event) {\n this.setState({\n [event.target.name]: event.target.value,\n schoolNameInvalid: \"\",\n childrenInformationInvalid: \"\",\n dismissalNumberInavlid: \"\",\n });\n }\n\n goDashboard = () => {\n const { completeRegisterUserResponse, doLoginRegisteredUser } = this.props;\n\n doLoginRegisteredUser(completeRegisterUserResponse.LoggedInParentInfo);\n this.props.history.replace(\"/childManagement\");\n };\n\n componentDidUpdate() {\n const { doFeedbackSubmitClear, submitFeedbackResponse, error } = this.props;\n\n if (error) {\n toast.error(error.Message || error.message, { autoClose: 2000 });\n doFeedbackSubmitClear();\n } else if (submitFeedbackResponse) {\n toast.success(submitFeedbackResponse.Message, { autoClose: 2000 });\n this.goDashboard();\n doFeedbackSubmitClear();\n }\n }\n\n render() {\n const {\n schoolName,\n childrenInformation,\n dismissalNumber,\n schoolNameInvalid,\n childrenInformationInvalid,\n dismissalNumberInavlid,\n } = this.state;\n const { isFetching } = this.props;\n console.log(\"schoolNameInvalid\",schoolNameInvalid)\n return (\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n {\n this.props.history.goBack();\n }}\n className=\"previous-steps\"\n >\n \n {this.props.t(\"supportNoScr-back\")}\n \n {/* */}\n
    \n
    \n
    \n

    \n {this.props.t(\"IsParent_Header\")}\n

    \n

    \n {this.props.t(\"IsParent_disc_Text\")}\n

    \n
    \n
    \n

    \n {\" \"}\n {this.props.t(\"supportNoScr-school-information\")}\n

    \n

    \n {\" \"}\n {this.props.t(\"School_Name_Label\")}{\" \"}\n

    \n nextField(event)}\n />\n {schoolNameInvalid}\n
    \n \n
    \n

    \n {this.props.t(\"Children_Info_Label\")}\n

    \n

    \n {this.props.t(\"Children_Name_label\")}\n

    \n nextField(event)}\n />\n {childrenInformationInvalid}\n
    \n \n
    \n

    \n {this.props.t(\"Children_dismissal_number_label\")}\n

    \n {if (event.key === 'Enter') this.submitForm(event)}}\n />\n {dismissalNumberInavlid}\n
    \n \n
    \n

    \n {this.props.t(\"Children_dismissal_number_info\")}\n

    \n
    \n\n
    \n \n {\" \"}\n {isFetching ? (\n \n ) : null}{\" \"}\n   {this.props.t(\"Confirm_Button\")}\n \n
    \n\n \n \n
    \n
    \n
    \n
    \n
    \n
    \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n registeredPassword: state.userAccount.registeredPassword,\n registeredFirstname: state.userAccount.registeredFirstname,\n registeredLastname: state.userAccount.registeredLastname,\n registeredResultCache: state.userAccount.registeredResultCache,\n userLoginInfo: state.userAccount.userLoginInfo,\n isFetching: loadingSelector(state),\n completeRegisterUserResponse:\n state.userAccount.completeRegisterUserResponse,\n getUserInfoResponse: state.userAccount.getUserInfoResponse,\n submitFeedbackResponse: state.userAccount.submitFeedbackResponse,\n error: state.userAccount.error,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doLoginRegisteredUser: (data) => dispatch(loginRegisteredUser(data)),\n doFeedbackSubmit: (data) => dispatch(feedbackSubmit(data)),\n doFeedbackSubmitClear: () => dispatch(feedbackSubmitClear()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(RegisterSupport)\n);\n","import React from \"react\";\nimport {\n BrowserRouter as Router,\n withRouter,\n Switch,\n Route,\n Link,\n useHistory,\n useLocation,\n useParams,\n} from \"react-router-dom\";\nimport { BootstrapModal } from \"../CommonComponents\";\nimport { connect } from \"react-redux\";\nimport { AddContact } from \"../ChildManagement\";\nimport { RegisterName } from \"../UserAccount/Registration\";\nimport {\n getDelegates,\n getDelegatesClear,\n showModal,\n hideModal,\n setHelpList,\n setOldHelpSetting,\n} from \"../../common/actions/userAccount\";\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\nimport { checkIsEmergency } from \"../../helper/utility\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\nimport RingLoader from \"react-spinners/ClipLoader\";\n\nimport { param } from \"jquery\";\nimport { withTranslation } from \"react-i18next\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nconst loadingSelector = createLoadingSelector([\"get_delegates\"]);\ntoast.configure();\n//Image path for dummy contacts\nimport contact1 from \"../assets/contacts/contact1.jpg\";\nimport contact2 from \"../assets/contacts/contact2.jpg\";\nimport contact3 from \"../assets/contacts/contact3.jpg\";\n\nclass SelectContact extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n isSearch: false,\n records: [],\n allRecords: [],\n searchText: \"\",\n };\n }\n componentDidMount() {\n this.getGaurdianList();\n this.dosetHelpList();\n if (this.props.showEmergencyContactAlert) {\n toast.info(this.props.t(\"select_Contact_message\"), {\n autoClose: true,\n hideProgressBar: true,\n transition: Slide,\n closeOnClick: true,\n });\n }\n }\n\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"ChildManagement\",\n screen: GLOBAL_CONST.SCREEN_NAMES.ADD_CONTACT,\n title:\n this.props.manageDelegate === true\n ? this.props.t(\"Contact\")\n : this.props.t(\"Select_Contact\"),\n });\n };\n openHelpModal = () => {\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n },\n });\n };\n\n getGaurdianList = () => {\n const { doGetDelegates, manageDelegate } = this.props;\n let fetchAll;\n if (manageDelegate === true) {\n fetchAll = true;\n } else {\n fetchAll = false;\n }\n doGetDelegates({ fetchAll });\n };\n\n searchAction = (text) => {\n let allDelegates = [...this.state.allRecords];\n allDelegates = allDelegates.filter((item) => {\n const delNames = [];\n item.delegates &&\n item.delegates.forEach(function (delegate) {\n delNames.push(delegate.Firstname);\n });\n const itemData = `${item.Firstname.toUpperCase()} ${item.Lastname.toUpperCase()}`;\n const textData = text.toUpperCase();\n const delegateString = delNames.toString().toLowerCase();\n return (\n itemData.indexOf(textData) > -1 ||\n delegateString.indexOf(textData.toLowerCase()) > -1\n );\n });\n this.setState({\n records: allDelegates,\n searchText: text,\n });\n };\n handleSearchTextChange = ({ target: { value: searchText } }) => {\n this.setState({ searchText }, () => {\n this.searchAction(searchText);\n });\n };\n\n showSearchView = () => {\n const { searchText } = this.state;\n\n return (\n
    \n
    \n {\n // this.searchAction(value);\n // }}\n />\n {\n this.setState({\n searchText: \"\",\n records: this.state.allRecords,\n });\n }}\n >\n \n \n
    \n {/* {\n this.setState({\n isSearch: !this.state.isSearch,\n searchText: \"\",\n records: this.state.allRecords,\n });\n }}\n >\n {this.props.t(\"regNameScr-cancel\")}\n */}\n\n {/*
    Recent Searches
    */}\n \n );\n };\n renderContactListView = () => {\n const { isSearch, records } = this.state;\n const {\n getDelegatesResponse,\n manageDelegate,\n isFetching,\n displayAds,\n } = this.props;\n\n let sortByActive = [];\n if (records != null && records != undefined && records.length > 0) {\n const sortByFirstName =\n records &&\n records.sort((a, b) =>\n a.Firstname.localeCompare(b.Firstname, \"es\", { sensitivity: \"base\" })\n );\n sortByActive =\n sortByFirstName &&\n sortByFirstName.sort(function (a, b) {\n return b.IsActive - a.IsActive;\n });\n // console.log('SortArray',JSON.stringify(sortByActive));\n if (!sortByActive) {\n sortByActive = [];\n }\n }\n return (\n
    \n
    \n
    \n
    \n

    \n {manageDelegate === true\n ? this.props.t(\"Contact\")\n : this.props.t(\"Select_Contact\")}\n

    \n {\n this.openHelpModal();\n }}\n >\n {this.props.t(\"regNameScr-needHelp\")}\n \n
    \n {\n this.openNewModal({ modalScreenName: \"AddContact\" });\n }}\n >\n \n \n \n
    \n
    \n {records.length === 0 && isFetching && (\n
    \n \n
    \n )}\n {records.length === 0 && !isFetching && (\n
    \n {this.props.t(\"noDelegateContact\")}\n
    \n )}\n
    \n {this.showSearchView()}\n {/* {isSearch ? (\n this.showSearchView()\n ) : (\n {\n this.setState({ isSearch: true });\n }}\n >\n {this.props.t(\"search_contacts\")}\n {\n this.setState({ isSearch: !this.state.isSearch });\n console.log(\"navigate searchText contact\");\n }}\n >\n \n \n
    \n )} */}\n
    \n\n
    \n
    \n
      \n {records &&\n records.map((item) => (\n {\n if (!manageDelegate) {\n this.props.setSelectedDelegate(item, false);\n this.closeModal();\n } else {\n this.openNewModal({\n modalScreenName: \"EditContact\",\n delegate: item,\n });\n }\n }}\n >\n
      \n {item.PhotoUrl ? (\n \n \n \n ) : (\n \n \n \n )}\n
      \n\n \n \n {item.Firstname} {\"\"} {item.Lastname}\n \n \n {\" \"}\n {item.PhoneNumber}\n \n
    \n {checkIsEmergency(item) ? (\n \n ) : null}\n \n ))}\n \n
    \n \n
    \n \n \n );\n };\n openNewModal = (params) => {\n const { manageDelegate, setSelectedDelegate } = this.props;\n this.props.doShowModal({\n modalScreenName: params.modalScreenName,\n modalClassName: \"create-contact-modal sidebar-modal right\",\n params: {\n delegate: params.delegate,\n manageDelegate: manageDelegate,\n setSelectedDelegate: setSelectedDelegate,\n callback: this.getGaurdianList,\n },\n });\n };\n closeModal = () => {\n this.props.doHideModal();\n this.props.doSetOldHelpSetting();\n };\n\n componentDidUpdate() {\n const {\n getDelegatesResponse,\n doGetDelegatesClear,\n isFetching,\n } = this.props;\n const { records } = this.state;\n\n if (getDelegatesResponse.length > 0) {\n this.setState(\n { allRecords: getDelegatesResponse, records: getDelegatesResponse },\n doGetDelegatesClear\n );\n }\n }\n\n render() {\n console.log(\"this.props.showEmergencyContactMessage\", this.props);\n return this.renderContactListView();\n }\n}\n\nfunction mapStateToProps(state) {\n console.log(\"state\", state);\n return {\n getDelegatesResponse: state.userAccount.getDelegatesResponse,\n\n isFetching: loadingSelector(state),\n setHelpListData: state.userAccount.setHelpListData,\n displayAds: state.userAccount.displayAds,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doGetDelegates: (data) => dispatch(getDelegates(data)),\n doGetDelegatesClear: () => dispatch(getDelegatesClear()),\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doSetOldHelpSetting: () => dispatch(setOldHelpSetting()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(SelectContact)\n);\n","export default __webpack_public_path__ + \"static/media/contact1.0bf87f42.jpg\";","import React from \"react\";\nimport { connect } from \"react-redux\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { dom } from \"@fortawesome/fontawesome-svg-core\";\nimport { faCalendarAlt } from \"@fortawesome/free-regular-svg-icons\";\nimport { faCarAlt } from \"@fortawesome/free-solid-svg-icons\";\nimport moment from \"moment\";\nimport { PickupSummaryView } from \"../ChildManagement\";\nimport DatePicker from \"react-datepicker\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport { Colors } from \"../../theme\";\nimport { filterByTypes, getMarkStyle } from \"../../helper/utility\";\n\nimport { Bootstrap, Dropdown } from \"react-bootstrap\";\nimport {\n ButtonDropdown,\n DropdownItem,\n DropdownMenu,\n DropdownToggle,\n} from \"react-bootstrap\";\nimport {\n showModal,\n hideModal,\n setHelpList,\n setOldHelpSetting,\n} from \"../../common/actions/userAccount\";\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\n\nimport { Line } from \"rc-progress\";\nimport { event } from \"jquery\";\nimport \"../ChildManagement/styles/style.css\";\nimport DismissalSelectHow from \"./DismissalSelectHow\";\nimport { withTranslation } from \"react-i18next\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\nconst loadingSelector = createLoadingSelector([\"change_delegation\"]);\n\nvar currentDate = new Date();\nvar numberOfDaysToAdd = 5;\nconst daysHighlighted = new Array(numberOfDaysToAdd).fill(currentDate);\nconst DISPLAY_PER_PAGE = 15;\nvar SelectedWeekDays = [];\n\nclass SelectWhen extends React.Component {\n constructor(props) {\n super(props);\n\n const DOW = [\n { id: 0, DOW: \"SU\", value: \"sunday\", isSelected: false },\n { id: 1, DOW: \"MO\", value: \"monday\", isSelected: false },\n { id: 2, DOW: \"TU\", value: \"tuesday\", isSelected: false },\n { id: 3, DOW: \"WE\", value: \"wednesday\", isSelected: false },\n { id: 4, DOW: \"TH\", value: \"thursday\", isSelected: false },\n { id: 5, DOW: \"FR\", value: \"friday\", isSelected: false },\n { id: 6, DOW: \"SA\", value: \"saturday\", isSelected: false },\n ];\n\n let selectDismissalDate = this.props.selectDate;\n let dismissalData = this.props.dismissalData;\n let markedDates = this.props.markedDates;\n\n const school = this.props.school;\n const firstDayOfSchool = new Date(school.Dates.FirstDayOfSchool);\n\n if (!selectDismissalDate) selectDismissalDate = new Date();\n if (moment(selectDismissalDate).isBefore(moment()))\n selectDismissalDate = new Date();\n\n const isSelectedPriorToFirstDay = moment(firstDayOfSchool).isAfter(\n moment(selectDismissalDate)\n );\n\n if (isSelectedPriorToFirstDay) selectDismissalDate = firstDayOfSchool;\n\n // let selectedTillDate = new Date(selectDismissalDate);\n // selectedTillDate = selectedTillDate.setDate(selectedTillDate.getDate() + 7);\n\n let selectedTillDate = new Date(selectDismissalDate);\n selectedTillDate.setHours(23);\n selectedTillDate.setMinutes(59);\n selectedTillDate = selectedTillDate.setDate(selectedTillDate.getDate() + 7);\n\n this.state = {\n DOW,\n isRepeat: false,\n selectedDate: selectDismissalDate,\n selectedTillDate,\n selectedPreviousDate: selectDismissalDate,\n selectedPreviousTillDate: selectedTillDate,\n selectedOption: 0,\n previousSelectedOptions: null,\n repeatOptions: this.buildRepeatOptions(selectDismissalDate),\n isFromDateTimePickerVisible: false,\n isUntilDateTimePickerVisible: false,\n recurringDates: [],\n markedDates,\n dismissalData,\n lastFetchedDate: null,\n currentPageIndex: 0,\n pageIndexes: [],\n manuallExcludedDates: {},\n showCalendarPicker: false,\n showUntillCalendarPicker: false,\n showSelectHowUIFlag: false,\n showPickupSummary: false,\n };\n this.dismissalSelectHow = React.createRef();\n }\n\n componentDidMount() {\n this.dosetHelpList();\n }\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"ChildManagement\",\n screen: GLOBAL_CONST.SCREEN_NAMES.SELECT_WHEN,\n title: this.props.t(\"selectWhenScr-selectWhen\"),\n });\n };\n\n openHelpModal = () => {\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n },\n });\n };\n\n buildRepeatOptions = (selectedDate) => {\n const options = [\n { label: this.props.t(\"selectWhenScr-none\"), value: 0 },\n { label: this.props.t(\"selectWhenScr-daily\"), value: 1 },\n ];\n const weekDay = moment(selectedDate).format(\"dddd\");\n const monthDay = moment(selectedDate).format(\"Do\");\n options.push({\n label: this.props.t(\"selectWhenScr-recWeekly\") + \" \" + weekDay,\n value: 2,\n });\n options.push({\n label: this.props.t(\"selectWhenScr-recMonthly\") + \" \" + monthDay,\n value: 3,\n });\n options.push({\n label: this.props.t(\"selectWhenScr-recWeekdays\"),\n value: 4,\n });\n\n return options;\n };\n\n selectRecurringOption = (value) => {\n const { repeatOptions } = this.state;\n for (let i = 0; i < repeatOptions.length; i++) {\n if (value == repeatOptions[i].value) return repeatOptions[i].label;\n }\n };\n\n setRepeatType = (value) => {\n this.setState({ selectedOption: Number(value) });\n this.setRecurringWeekly(value);\n if (value != 0) {\n this.setState(\n {\n isRepeat: true,\n },\n this.buildRecurringDates\n );\n } else {\n this.setState({ isRepeat: false }, this.buildRecurringDates);\n }\n };\n\n setRecurringWeekly = (selectedOption) => {\n if (selectedOption === 4) {\n const DOW = [\n { id: 0, DOW: \"SU\", value: \"sunday\", isSelected: false },\n { id: 1, DOW: \"MO\", value: \"monday\", isSelected: true },\n { id: 2, DOW: \"TU\", value: \"tuesday\", isSelected: true },\n { id: 3, DOW: \"WE\", value: \"wednesday\", isSelected: true },\n { id: 4, DOW: \"TH\", value: \"thursday\", isSelected: true },\n { id: 5, DOW: \"FR\", value: \"friday\", isSelected: true },\n { id: 6, DOW: \"SA\", value: \"saturday\", isSelected: false },\n ];\n this.setState({ DOW });\n } else if (selectedOption === 5) {\n const DOW = [\n { id: 0, DOW: \"SU\", value: \"sunday\", isSelected: false },\n { id: 1, DOW: \"MO\", value: \"monday\", isSelected: false },\n { id: 2, DOW: \"TU\", value: \"tuesday\", isSelected: false },\n { id: 3, DOW: \"WE\", value: \"wednesday\", isSelected: false },\n { id: 4, DOW: \"TH\", value: \"thursday\", isSelected: false },\n { id: 5, DOW: \"FR\", value: \"friday\", isSelected: false },\n { id: 6, DOW: \"SA\", value: \"saturday\", isSelected: false },\n ];\n this.setState({ DOW });\n }\n };\n\n buildRecurringDates = () => {\n const { selectedOption, selectedDate, selectedTillDate } = this.state;\n let { recurringDates } = this.state;\n if (selectedOption === 0) recurringDates = [];\n if (selectedOption == 1)\n recurringDates = this.getDailyRecurringDates(\n selectedDate,\n selectedTillDate\n ).actualDates;\n else if (selectedOption > 1)\n recurringDates = this.getRecurringDates(selectedDate, selectedTillDate)\n .actualDates;\n\n this.setState({\n recurringDates,\n manuallExcludedDates: {},\n currentPageIndex: 0,\n });\n };\n\n getDailyRecurringDates = (startDate, endDate) => {\n let start = moment(startDate);\n let end = moment(endDate);\n let formatedDates = [];\n let actualDates = [];\n const pageIndexes = [];\n pageIndexes.push(0);\n let index = 0;\n for (var m = moment(start); m.isBefore(end); m.add(1, \"days\")) {\n formatedDates.push(m.format(\"MM/DD/YYYY\"));\n actualDates.push(m.toDate());\n index++;\n if (index % DISPLAY_PER_PAGE === 0) {\n pageIndexes.push(index);\n }\n }\n // formatedDates.push(end.format(\"MM/DD/YYYY\"));\n // actualDates.push(end.toDate());\n return {\n formatedDates,\n actualDates,\n };\n };\n\n getRecurringDates = (startDate, endDate) => {\n const { selectedOption } = this.state;\n if (selectedOption === 4 || selectedOption === 5) {\n return this.recurringWeekdays(startDate, endDate);\n } else {\n const start = moment(startDate);\n const end = moment(endDate);\n let formatedDates = [];\n let actualDates = [];\n const current = start.clone();\n formatedDates.push(start.format(\"MM/DD/YYYY\"));\n actualDates.push(start);\n const unit = selectedOption === 2 ? \"d\" : \"M\";\n const value = selectedOption === 2 ? 7 : 1;\n\n const pageIndexes = [];\n\n pageIndexes.push(0);\n let index = 0;\n\n while (current.add(value, unit).isSameOrBefore(end)) {\n const nextDate = current.clone();\n formatedDates.push(nextDate.format(\"MM/DD/YYYY\"));\n actualDates.push(nextDate);\n index++;\n if (index % DISPLAY_PER_PAGE === 0) {\n pageIndexes.push(index);\n }\n }\n\n return {\n formatedDates,\n actualDates,\n };\n }\n };\n\n recurringWeekdays = (startDate, endDate) => {\n const { DOW } = this.state;\n let start = moment(startDate);\n let end = moment(endDate);\n\n const selectedDays = [];\n\n for (var i = 0; i < DOW.length; i++) {\n if (DOW[i].isSelected) selectedDays.push(DOW[i].DOW.toLowerCase());\n }\n let dt = start;\n let formatedDates = [];\n let actualDates = [];\n const pageIndexes = [];\n\n pageIndexes.push(0);\n let index = 0;\n\n while (dt <= end) {\n const isExists = selectedDays.includes(\n moment(dt).format(\"dd\").toLowerCase()\n );\n if (isExists) {\n formatedDates.push(moment(dt).format(\"MM/DD/YYYY\"));\n actualDates.push(dt);\n index++;\n if (index % DISPLAY_PER_PAGE === 0) {\n pageIndexes.push(index);\n }\n }\n const newDt = new Date(dt);\n newDt.setDate(newDt.getDate() + 1);\n dt = newDt;\n }\n\n return {\n formatedDates,\n actualDates,\n };\n };\n buttonclick() {\n const { x } = this.state;\n }\n\n getDayRecord(type) {\n const { selectedDate, selectedTillDate } = this.state;\n const setDate = type === \"from\" ? selectedDate : selectedTillDate;\n const markedDates = { ...this.state.markedDates };\n var selectDateStr = moment(new Date(setDate)).format(\"YYYY-MM-DD\");\n\n for (const key in markedDates) {\n if (key === selectDateStr) {\n var selectedMarked = {\n selected: true,\n selectedColor: Colors.blue,\n record: markedDates[key].record,\n };\n markedDates[key] = selectedMarked;\n } else {\n markedDates[key] = getMarkStyle(markedDates[key].record);\n }\n }\n this.setState({ markedDates });\n }\n\n onFromDateSelected = (date) => {\n console.log(\"date\", date);\n this.hideLegendView();\n\n // var newDate = new moment().add(4, 'day')\n var newDate = date.setHours(0, 1, 0, 0);\n let { selectedTillDate } = this.state;\n const isFuture = moment(selectedTillDate).isAfter(moment(newDate));\n console.log(\"day\", date, \"newDate\", newDate);\n console.log(\"isFuture\", isFuture);\n // console.log('get new today date--->',newDate)\n // console.log('get new isFuture date--->',isFuture)\n // console.log('get new isAfter date--->',moment(newDate).isAfter())\n // var fourDaysForward = new Date ()\n // fourDaysForward = moment(fourDaysForward).add(3, 'day')\n // console.log('get new fourDaysForward date--->',fourDaysForward)\n // {\n // global.IS_TESTING === true\n // ? newDate = fourDaysForward //= new Date(fourDaysForward.year, fourDaysForward.month - 1, fourDaysForward.day) //this.detoxDateSetup()\n // : newDate = new Date(day.year, day.month - 1, day.day)\n // }\n // console.log('## get new today date--->',newDate)\n if (!isFuture) {\n selectedTillDate = date.setDate(date.getDate() + 1);\n }\n console.log(\"selectedTillDate\", selectedTillDate);\n\n this.setState(\n {\n selectedDate: date,\n repeatOptions: this.buildRepeatOptions(date),\n selectedTillDate,\n },\n () => {\n this.getDayRecord(\"from\");\n this.buildRecurringDates();\n }\n );\n\n console.log(\"selectedTillDate\", selectedTillDate);\n };\n onToDateSelected = (date) => {\n this.hideLegendView();\n const dateSelected = date.setHours(23, 59, 0, 0);\n this.setState({ selectedTillDate: dateSelected }, () => {\n this.getDayRecord(\"to\");\n this.buildRecurringDates();\n });\n };\n hideLegendView = (e) => {\n this.setState({\n showCalendarPicker: false,\n showUntillCalendarPicker: false,\n });\n };\n hideUntilLegendView = (e) => {\n this.setState({\n showUntillCalendarPicker: false,\n showCalendarPicker: false,\n });\n };\n\n showLegendView = (e) => {\n this.setState({\n showCalendarPicker: true,\n showUntillCalendarPicker: false,\n });\n };\n showUntillLegendView = (e) => {\n this.setState({\n showUntillCalendarPicker: true,\n showCalendarPicker: false,\n });\n };\n\n showSelectHowUI = (e) => {\n const { ChildInfo, school } = this.props;\n const { selectedDate } = this.state;\n\n if (\n school.ReunificationEnabled &&\n moment(selectedDate).isSame(moment(), \"date\")\n ) {\n alert(this.props.t(\"emergency_reunification_pickup_msg\"));\n return;\n } else {\n this.setState({ showSelectHowUIFlag: !this.state.showSelectHowUIFlag });\n this.dosetHelpList();\n }\n };\n\n renderLegendUI = () => {\n const { showUntillCalendarPicker, showCalendarPicker } = this.state;\n return (\n
    \n
    \n
    {this.props.t(\"Legend\")}
    \n
      \n
    • \n {this.props.t(\"Approved_Pickup_Change_Text\")}\n
    • \n
    • \n {this.props.t(\"Approved_EarlyPickup_Change_Text\")}\n
    • \n
    • {this.props.t(\"Mark_Absent_Text\")}
    • \n
    • \n {this.props.t(\"Pending_Approval_Text_p\")} \n
    • \n
    • \n {this.props.t(\"Pending_Approval_Text_e\")}\n
    • \n \n
      \n {this.props.t(\"Pending_Approval_Text2\")}\n
      \n
    \n
    \n
    \n );\n };\n\n saveChangesManuallExcludedDates = (manuallExcludedDates) => {\n this.setState({ manuallExcludedDates });\n };\n\n getSelectHowUI = () => {\n const { school } = this.props;\n const {\n selectedDate,\n selectedTillDate,\n selectedOption,\n isRepeat,\n manuallExcludedDates,\n recurringDates,\n currentPageIndex,\n pageIndexes,\n markedDates,\n } = this.state;\n const ChildInfo = this.props.ChildInfo;\n let selectData = {};\n\n if (selectedDate == \"Select Date\") {\n alert(this.props.t(\"selectWhenScr-selectDate\"));\n } else if (isRepeat === false) {\n selectData = {\n selectedDate: [moment(selectedDate).format(\"MM/DD/YYYY\")],\n selectedOption: 0,\n showDate: selectedDate,\n };\n const selectRecurringOption = this.selectRecurringOption(\n this.state.selectedOption\n );\n\n return (\n (this.dismissalSelectHow = ref)}\n ChildInfo={ChildInfo}\n selectData={selectData}\n doCallbackRefresh={this.props.doCallbackRefresh}\n selectedDate={selectedDate}\n selectedTillDate={selectedTillDate}\n recurringDates={recurringDates}\n selectedOption={selectedOption}\n selectRecurringOption={selectRecurringOption}\n currentPageIndex={currentPageIndex}\n pageIndexes={pageIndexes}\n markedDates={markedDates}\n manuallExcludedDates={manuallExcludedDates}\n saveChangesManuallExcludedDates={this.saveChangesManuallExcludedDates}\n saveChangesCurrentPageIndex={this.saveChangesCurrentPageIndex}\n goBack={() => {\n this.setState({ showSelectHowUIFlag: false });\n }}\n />\n );\n } else if (isRepeat === true && selectedOption == \"Select\") {\n alert(this.props.t(\"Select_Recurring_Option\"));\n } else if (isRepeat === true && selectedTillDate == \"Select Date\") {\n alert(this.props.t(\"Select_Till_Date\"));\n } else if (isRepeat === true && recurringDates.length === 0) {\n alert(this.props.t(\"Recurring_Days_Error\"));\n } else if (selectedTillDate < selectedDate) {\n alert(this.props.t(\"Select_proper_Date\"));\n } else {\n selectData = {\n selectedDate:\n selectedOption == 1\n ? this.getDailyRecurringDates(selectedDate, selectedTillDate)\n .formatedDates\n : this.getRecurringDates(selectedDate, selectedTillDate)\n .formatedDates,\n selectedOption,\n showDate: selectedDate,\n };\n const selectRecurringOption = this.selectRecurringOption(\n this.state.selectedOption\n );\n\n return (\n (this.dismissalSelectHow = ref)}\n ChildInfo={ChildInfo}\n selectData={selectData}\n doCallbackRefresh={this.props.doCallbackRefresh}\n selectedDate={selectedDate}\n selectedTillDate={selectedTillDate}\n recurringDates={recurringDates}\n selectedOption={selectedOption}\n selectRecurringOption={selectRecurringOption}\n currentPageIndex={currentPageIndex}\n pageIndexes={pageIndexes}\n markedDates={markedDates}\n manuallExcludedDates={manuallExcludedDates}\n saveChangesManuallExcludedDates={this.saveChangesManuallExcludedDates}\n saveChangesCurrentPageIndex={this.saveChangesCurrentPageIndex}\n />\n );\n }\n };\n\n selectDOW = (item) => {\n let DOW = [...this.state.DOW];\n let selectedDays = { ...this.state.selectedDays };\n\n item.isSelected = !item.isSelected;\n DOW[item.id] = item;\n if (item.isSelected) {\n selectedDays[item.value.toLowerCase()] = true;\n } else {\n delete selectedDays[item.value.toLowerCase()];\n }\n this.setState({ DOW, selectedDays });\n };\n\n renderDOW = () => {\n let days = [];\n const { DOW } = this.state;\n for (var i = 0; i < DOW.length; i++) {\n const item = DOW[i];\n days.push(\n {\n this.selectDOW(item);\n this.buildRecurringDates();\n }}\n >\n {item.DOW}\n \n );\n }\n return days;\n };\n\n getMinMaxDate = (type) => {\n const { selectedDate, selectedTillDate } = this.state;\n\n let minimumDate, maximumDate;\n const school = this.props.school;\n const firstDayOfSchool = new Date(school.Dates.FirstDayOfSchool);\n const isFuture = moment(firstDayOfSchool).isAfter(moment());\n\n const maxDate = new Date(school.Dates.LastDayOfSchool);\n if (type === \"from\") {\n minimumDate = isFuture ? firstDayOfSchool : new Date();\n maximumDate = new Date(maxDate);\n } else if (type === \"to\") {\n minimumDate = new Date(selectedDate);\n minimumDate = minimumDate.setDate(minimumDate.getDate() + 1);\n maximumDate = new Date(maxDate);\n }\n return {\n minimumDate,\n maximumDate,\n };\n };\n getSelectDateUI = () => {\n const {\n selectedDate,\n showCalendarPicker,\n showUntillCalendarPicker,\n selectedTillDate,\n repeatOptions,\n selectedOption,\n markedDates,\n } = this.state;\n\n const pickupDates = filterByTypes(markedDates);\n const startMinMax = this.getMinMaxDate(\"from\");\n const endMinMax = this.getMinMaxDate(\"to\");\n return (\n
    \n
    \n
    \n \n \n {this.props.t(\"createMarkAbScr-selectDate\")}\n \n
    \n \n \n \n
    \n
    \n
    \n \n
    \n
    \n }\n >\n {showCalendarPicker === true && this.renderLegendUI()}\n \n
    \n
    \n
    \n\n
    \n \n\n {\n this.setRepeatType(eventKey);\n }}\n >\n \n {this.selectRecurringOption(this.state.selectedOption)}\n \n\n \n {repeatOptions.map((data) => {\n return (\n \n {data.label}\n \n );\n })}\n \n \n {selectedOption == 4 || selectedOption == 5 ? (\n
    {this.renderDOW()}
    \n ) : null}\n
    \n {this.state.isRepeat == true && (\n
    \n \n
    \n
    \n }\n >\n {showUntillCalendarPicker === true && this.renderLegendUI()}\n \n
    \n
    \n
    \n )}\n
    \n
    \n );\n };\n\n schedulePickupView = () => {\n const {\n showCalendarPicker,\n showUntillCalendarPicker,\n repeatPickupData,\n repeatOptions,\n showSelectHowUIFlag,\n pickupModeData,\n selectedDate,\n selectedTillDate,\n selectedOption,\n isRepeat,\n manuallExcludedDates,\n recurringDates,\n currentPageIndex,\n pageIndexes,\n markedDates,\n showPickupSummary,\n } = this.state;\n const { isFetching } = this.props;\n console.log(\"isFetching isFetching\", isFetching);\n return (\n
    \n
    \n
    \n
    \n
    \n

    \n {this.props.t(\"modifyPickupLabel\")}\n

    \n

    \n {this.props.t(\"editPickupHereText\")}\n

    \n {\n this.openHelpModal();\n }}\n >\n {this.props.t(\"regNameScr-needHelp\")}\n \n
    \n {\n this.closeModal();\n }}\n >\n
    \n\n
    \n
    \n
    \n {showSelectHowUIFlag\n ? this.getSelectHowUI()\n : this.getSelectDateUI()}\n
    \n\n
    \n
    \n

    \n {this.props.t(\"Pickup_Summary_Label\")}\n

    \n
    \n

    {this.props.t(\"SelectRepeatedPickup_Summary\")}

    \n \n
    \n
    \n
    \n {\n this.togglePickupSummary();\n }}\n >\n {this.props.t(\"Pickup_Summary_Label\")}\n \n {showPickupSummary === true && (\n
    \n

    {this.props.t(\"SelectRepeatedPickup_Summary\")}

    \n \n
    \n )}\n
    \n
    \n
    \n
    \n
    \n {showSelectHowUIFlag\n ? this.getHowFooterContent()\n : this.getWhenFooterContent()}\n
    \n
    \n
    \n
    \n );\n };\n togglePickupSummary = () => {\n const { showPickupSummary } = this.state;\n if (showPickupSummary === true) {\n this.setState({ showPickupSummary: false });\n } else {\n this.setState({ showPickupSummary: true });\n }\n };\n submitForm = () => {\n this.dismissalSelectHow.submitForm();\n };\n\n getHowFooterContent = () => {\n const { isFetching } = this.props;\n //console.log(\"isFetching\", isFetching)\n return (\n
    \n \n {this.props.t(\"supportNoScr-back\")}\n \n \n {isFetching ? : null}{\" \"}\n {this.props.t(\"changePickupScr-save\")}\n \n
    \n );\n };\n getWhenFooterContent = () => {\n return (\n \n {this.props.t(\"regNameScr-next\")}\n \n );\n };\n\n closeModal = () => {\n this.props.doHideModal();\n this.props.doSetOldHelpSetting();\n };\n\n render() {\n return this.schedulePickupView();\n }\n}\nconst CustomInput = (props) => {\n return (\n \n );\n};\nfunction mapStateToProps(state) {\n return {\n setCreatePickupButtonsUI: state.userAccount.setCreatePickupButtonsUI,\n setHelpListData: state.userAccount.setHelpListData,\n isFetching: loadingSelector(state),\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doSetOldHelpSetting: () => dispatch(setOldHelpSetting()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(SelectWhen)\n);\n","import React from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport RingLoader from \"react-spinners/ClipLoader\";\nimport { connect } from \"react-redux\";\nimport { showModal, hideModal } from \"../../common/actions/userAccount\";\nimport {\n delegationCancel,\n delegationCancelClear,\n removeMultipleDelegations,\n removeMultipleDelegationsClear,\n relatedDelegationsDetails,\n relatedDelegationsClear,\n} from \"../../common/actions/students\";\nimport moment from \"moment\";\n\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport { toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\ntoast.configure();\n\nclass CancelPickup extends React.Component {\n\n constructor(props) {\n super(props);\n this.state={\n relatedDelegations:null\n }\n }\n componentDidMount(){\n this.getRelatedDelegationsDetails();\n }\n\n getRelatedDelegationsDetails = () => {\n const { cancelpickups } = this.props;\n const { doRelatedDelegationsDetails } = this.props;\n let calendarId = cancelpickups.CalendarID;\n\n if (calendarId != null) {\n doRelatedDelegationsDetails({ calendarId });\n }\n };\n cancelAllOcurence = () => {\n const { doRemoveMultipleDelegations } = this.props;\n const { relatedDelegations } = this.state;\n const { cancelpickups } = this.props;\n const calenderIds = [];\n let CalendarID;\n let result = [];\n let calendarId = cancelpickups.CalendarID;\n if (relatedDelegations) {\n const relatedCalendarIds = relatedDelegations.CalendarItems;\n result = relatedCalendarIds.filter(\n (item) => item.CalendarID >= calendarId\n );\n }\n for (let i = 0; i < result.length; i++) {\n CalendarID = result[i].CalendarID;\n calenderIds.push({ CalendarID });\n }\n doRemoveMultipleDelegations({\n calendarId: calenderIds,\n });\n this.props.doHideModal();\n\n };\n cancelSingleDelegation = () => {\n const { docancelDelegation } = this.props;\n const { cancelpickups } = this.props;\n\n let cancelDate = moment(cancelpickups.CalendarDate).format(\"MM-D-YYYY\");\n\n docancelDelegation({\n calendarId: cancelpickups.CalendarID,\n cancelToDate: cancelDate,\n });\n this.props.doHideModal()\n };\n\n showConfirmation = () => {\n const { cancelpickups } = this.props;\n const { relatedDelegations } = this.state;\n const dates = [];\n let calendarDates;\n let result = [];\n let calendarId = cancelpickups.CalendarID;\n if (relatedDelegations) {\n const relatedCalendarIds = relatedDelegations.CalendarItems;\n result = relatedCalendarIds.filter(\n (item) => item.CalendarID >= calendarId\n );\n }\n for (let i = 0; i < result.length; i++) {\n calendarDates = result[i].CalendarDate;\n dates.push(calendarDates);\n }\n let lastDate = dates[dates.length - 1];\n\n console.log(\"cancelpickups::\",cancelpickups);\n\tconsole.log(\"lastDate \",lastDate);\n // console.log(\"cancelpickups \",cancelpickups.CalendarDate)\n // console.log(\"IsRecurring \",cancelpickups.IsRecurring)\n const isSingleCancel = cancelpickups.IsRecurring === false || cancelpickups.isrecurring === false\n || ((cancelpickups.IsRecurring || cancelpickups.isrecurring) && moment(lastDate).format(\"MMM-DD-YYYY\") === moment(cancelpickups.CalendarDate).format(\"MMM-DD-YYYY\"))\n\n\tconst calc = (\n
    \n
    \n
    \n
    \n

    \n {this.props.t(\"Cancel_Pickup_Change\")}\n

    \n {relatedDelegations?

    \n {isSingleCancel\n ? this.props.t(\"Change_Single_Pickup\") +\n \" \" +\n moment(cancelpickups.CalendarDate).format(\"MMM-DD-YYYY\")\n : this.props.t(\"Change_Multiple_Pickup1\") +\n \" \" +\n moment(cancelpickups.CalendarDate).format(\"MMM-DD-YYYY\") +\n \" \" +\n this.props.t(\"Change_Multiple_Pickup2\") +\n \" \" +\n moment(cancelpickups.CalendarDate).format(\"MMM-DD-YYYY\") +\n \" \" +\n this.props.t(\"to\") +\n \" \" +\n moment(lastDate).format(\"MMM-DD-YYYY\")}\n

    :\n }\n
    \n {\n this.closeModal();\n }}\n >\n
    \n
    \n \n {this.props.t(\"Cancel_Pickup_Label\")}\n \n {relatedDelegations && !isSingleCancel ? (\n \n {this.props.t(\"Cancel_All_Occurence_Label\")}\n \n ) : null}\n
    \n
    \n
    \n );\n\n return calc;\n };\n\n CanceThisPickupView = () => {};\n\n closeModal = () => {\n this.props.doHideModal();\n };\n\n componentDidUpdate(){\n const { doRelatedDelegationsClear, relatedDelegations} = this.props\n if(relatedDelegations){\n this.setState({relatedDelegations},doRelatedDelegationsClear)\n }\n }\n render() {\n return this.showConfirmation()\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n modalScreenName: state.userAccount.modalScreenName,\n modalClassName: state.userAccount.modalClassName,\n\n\n delegationCancelResponse: state.student.delegationCancelResponse,\n relatedDelegations: state.student.relatedDelegations,\n deleteMultipleDelegations: state.student.deleteMultipleDelegations,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n\n doRelatedDelegationsDetails: (data) =>\n dispatch(relatedDelegationsDetails(data)),\n \n doRelatedDelegationsClear: () =>\n dispatch(relatedDelegationsClear()), \n doRemoveMultipleDelegations: (data) =>\n dispatch(removeMultipleDelegations(data)),\n doRemoveMultipleDelegationsClear: () =>\n dispatch(removeMultipleDelegationsClear()),\n docancelDelegation: (data) => dispatch(delegationCancel(data)),\n doCancelDelegationClear: () => dispatch(delegationCancelClear()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(CancelPickup)\n);\n","import React from \"react\";\nimport { connect } from \"react-redux\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { dom } from \"@fortawesome/fontawesome-svg-core\";\nimport { faCarAlt } from \"@fortawesome/free-solid-svg-icons\";\nimport { Bootstrap, Dropdown } from \"react-bootstrap\";\nimport RingLoader from \"react-spinners/ClipLoader\";\nimport { Line } from \"rc-progress\";\nimport moment from \"moment\";\nimport {\n earlyDismissNeedPassword,\n getUserSettings,\n isActionAllowed,\n parseDaytime,\n} from \"../../../helper/utility\";\n\nimport {\n earlyDismissalSubmit,\n changeDelegation,\n changeDelegationClear,\n getAvailableDispatch,\n getAvailableDispatchClear,\n earlyDismissalClear,\n} from \"../../../common/actions/students\";\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport { confirmAlert } from \"react-confirm-alert\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport { withTranslation } from \"react-i18next\";\nimport {\n showModal,\n hideModal,\n setHelpList,\n} from \"../../../common/actions/userAccount\";\nimport GLOBAL_CONST from \"../../../helper/AppConstants\";\nimport contact3 from \"../../assets/contacts/contact3.jpg\";\nimport successEarlyDismissal from \"../../assets/registerImages/email-verified.svg\";\nimport { createLoadingSelector } from \"../../../common/reducers/selectors\";\nconst loadingSelector = createLoadingSelector([\"early_dismissal\"]);\ntoast.configure();\n\nclass EarlyDismissalPickup extends React.Component {\n constructor(props) {\n super(props);\n\n this.inputRefs = {\n selectedOptionPickupMode: null,\n selectedOptionPickupBy: this.props.t(\"Select_Me_Dismissal_Label\"),\n selectedSubPickupModeOption: null,\n selectedBusRouteOption: null,\n };\n\n const selectedDate = this.props.selectedDate;\n const pickedTime = this.props.pickedTime;\n const markedDates = this.props.markedDates;\n const disTime = parseDaytime(moment(pickedTime).format(\"h:mm a\"));\n const dismissalDate = new Date(selectedDate);\n dismissalDate.setHours(disTime[0]);\n dismissalDate.setMinutes(disTime[1]);\n dismissalDate.setSeconds(0);\n const howWillPickupOptions = [\n {\n label: `${this.props.t(\"Select_Contact_Dismissal_Label\")}`,\n value: `${this.props.t(\"Select_Contact_Dismissal_Label\")}`,\n },\n ];\n this.state = {\n selectedOptionPickupMode: null,\n selectedOptionPickupBy: this.props.t(\"Select_Me_Dismissal_Label\"),\n previousSelectedOptionsPickupMode: null,\n previousSelectedOptionsPickupBy: null,\n selectedSubPickupModeOption: null,\n previousSelectedSubpickupModeOption: null,\n dismissalDate,\n selectedBusRouteOption: null,\n previousSelecteBusRouteOption: null,\n gaurdianDetails: null,\n selectChild: false,\n selectedDate,\n markedDates,\n howWillPickupOptions,\n isSuccessPrompt: false,\n password: \"\",\n };\n }\n componentDidMount() {\n this.props.onRef(this);\n this.getDispatchList();\n this.dosetHelpList();\n }\n\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"ChildManagement\",\n screen: GLOBAL_CONST.SCREEN_NAMES.DISMISSAL_HOW,\n title: this.props.t(\"dismSelectTypeScr-newDism\"),\n });\n };\n componentWillUnmount() {\n this.props.onRef(undefined);\n this.props.doGetAvailableDispatchClear();\n let howWillPickupOptions = [\n {\n label: `${this.props.t(\"Select_Contact_Dismissal_Label\")}`,\n value: `${this.props.t(\"Select_Contact_Dismissal_Label\")}`,\n },\n\n {\n label: `${this.props.t(\"Select_Me_Dismissal_Label\")}`,\n value: `${this.props.t(\"Select_Me_Dismissal_Label\")}`,\n },\n ];\n }\n getDispatchList = () => {\n const { doGetAvailableDispatch } = this.props;\n const ChildInfo = this.props.ChildInfo;\n doGetAvailableDispatch({ studentIDs: [ChildInfo.StudentID] });\n };\n\n setSelectedDelegate = (item, contactFlag, selectedPhone) => {\n let { gaurdianDetails, selectedOptionPickupBy } = this.state;\n const howWillPickupOptions = [...this.state.howWillPickupOptions];\n if (!item) {\n this.setState({ selectedOptionPickupBy: \"Select dismissal\" });\n return;\n }\n if (contactFlag === true) {\n selectedOptionPickupBy = `${item.givenName} ${\"\"} ${\n item.familyName ? item.familyName : \"\"\n }`;\n\n gaurdianDetails = {\n Firstname: item.givenName,\n Lastname: item.familyName ? item.familyName : \"\",\n PhoneNumber: selectedPhone.number ? selectedPhone.number : \"\",\n };\n } else {\n selectedOptionPickupBy = `${item.Firstname} ${\"\"} ${item.Lastname}`;\n gaurdianDetails = item;\n }\n\n const contactRecord = {\n label: selectedOptionPickupBy,\n value: selectedOptionPickupBy,\n };\n\n const exists = howWillPickupOptions.filter(\n (item) => item.value === contactRecord.value\n );\n\n if (exists.length === 0) howWillPickupOptions.push(contactRecord);\n\n this.setState({\n gaurdianDetails,\n selectedOptionPickupBy,\n howWillPickupOptions,\n });\n };\n\n selectedChild = () => {\n this.setState({ selectChild: !this.state.selectChild });\n };\n\n // canAssignParentAllowed = () => {\n // const {\n // selectedOptionPickupMode,\n // selectedBusRouteOption,\n // selectedSubPickupModeOption,\n // } = this.state;\n // console.log(\n // \"can assign parent selectedSubPickupModeOption \",\n // selectedSubPickupModeOption\n // );\n // console.log(\n // \"can assign parent selectedSubPickupModeOption \",\n // this.getAfterSchoolProgramById(selectedSubPickupModeOption)\n // );\n // console.log(\n // \"can assign parent selectedBusRouteOption \",\n // selectedBusRouteOption\n // );\n // console.log(\n // \"can assign parent selectedBusRouteOption \",\n // this.getBusRouteById(selectedBusRouteOption)\n // );\n // if (\n // selectedOptionPickupMode == 4 &&\n // selectedSubPickupModeOption &&\n // this.getAfterSchoolProgramById(selectedSubPickupModeOption)\n // .canAssignParent\n // ) {\n // return true;\n // } else if (\n // selectedOptionPickupMode == 1 &&\n // selectedBusRouteOption &&\n // this.getBusRouteById(selectedBusRouteOption).canAssignParent\n // ) {\n // return true;\n // } else if (selectedOptionPickupMode > 1 && selectedOptionPickupMode != 4) {\n // return true;\n // }\n // return false;\n // };\n\n canAssignParentAllowed = () => {\n return true;\n };\n submitForm = () => {\n const {\n gaurdianDetails,\n selectedOptionPickupBy,\n dismissalDate,\n password,\n } = this.state;\n const ChildInfo = this.props.ChildInfo;\n let params = {};\n params = {\n StudentId: ChildInfo.StudentID,\n SchoolId: ChildInfo.SchoolID,\n DismissalTime: moment(dismissalDate).format(\"YYYY-MM-DD HH:mm:ss\"),\n isDelegated: false,\n delegate: {\n firstName: \"\",\n lastName: \"\",\n contactNumber: \"\",\n },\n };\n\n let delegatedPerson = null;\n\n if (\n this.canAssignParentAllowed() &&\n selectedOptionPickupBy !== this.props.t(\"Select_Me_Dismissal_Label\") &&\n gaurdianDetails\n ) {\n params.isDelegated = true;\n params.delegate = {\n firstName: gaurdianDetails.Firstname,\n lastName: gaurdianDetails.Lastname,\n contactNumber: gaurdianDetails.PhoneNumber,\n };\n }\n\n const school = this.props.school;\n const isPasswordRequired = earlyDismissNeedPassword(school);\n if (isPasswordRequired) {\n params.password = password;\n }\n console.log(\"doEarlyDismissalSubmit \" + JSON.stringify(params));\n const { doEarlyDismissalSubmit } = this.props;\n doEarlyDismissalSubmit(params);\n };\n\n renderEarlyDismissalSuccessView = () => {\n confirmAlert({\n customUI: ({ onClose }) => {\n return (\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n

    \n {this.props.t(\"earlydismissal_created\")}\n

    \n

    \n {this.props.t(\"earlydismissal_createdfor_text\")}
    \n Danny Chavez sceduled\n at March 29, 12:30 PM\n

    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n },\n });\n };\n\n openContact = (value) => {\n const ChildInfo = this.props.ChildInfo;\n if (value === this.props.t(\"Select_Contact_Dismissal_Label\")) {\n this.props.doShowModal({\n modalScreenName: \"SelectContact\",\n modalClassName: \"contact-list-modal sidebar-modal right\",\n params: {\n setSelectedDelegate: this.setSelectedDelegate,\n ChildInfo,\n manageDelegate: false,\n },\n });\n }\n };\n\n getPickupModeById = (value) => {\n const { pickupModeList } = this.state;\n for (let i = 0; i < pickupModeList.length; i++) {\n if (value == pickupModeList[i].value) return pickupModeList[i].label;\n }\n };\n\n componentDidUpdate() {\n const {\n changeDelegationResponse,\n doChangeDelegationClear,\n error,\n availableDispatch,\n earlyDismissalResponse,\n doearlyDismissalClear,\n doGetAvailableDispatchClear,\n doHideModal,\n doCallbackRefresh,\n } = this.props;\n\n const { pickupModeList, gaurdianDetails } = this.state;\n\n console.log(\"gaurdianDetails\", JSON.stringify(gaurdianDetails));\n let studentPickupModeList;\n let pickupModes = [];\n\n console.log(\"earlyDismissalResponse result \", earlyDismissalResponse);\n console.log(\"earlyDismissalResponse error \", error);\n if (error) {\n toast.error(error.Message || error.message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n\n doearlyDismissalClear();\n this.setState({ displayPasswordEntry: false, password: \"\" });\n }\n if (earlyDismissalResponse) {\n toast.success(\"Early dismissal successfully created.\", {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n this.setState({ displayPasswordEntry: false, password: \"\" });\n doHideModal();\n doearlyDismissalClear();\n doGetAvailableDispatchClear();\n if (doCallbackRefresh) doCallbackRefresh();\n //doHideModal();\n }\n\n if (availableDispatch) {\n studentPickupModeList = availableDispatch.StudentDismissalMethod;\n pickupModes.push({\n label: `${this.props.t(\"Select_Dismissal_Label\")}`,\n value: 0,\n canAssignParent: false,\n });\n if (\n pickupModeList &&\n pickupModeList.length === 0 &&\n pickupModes.length > 0\n ) {\n this.setState({ pickupModeList: pickupModes });\n }\n }\n\n const ChildInfo = this.props.ChildInfo;\n const selectData = this.props.selectData;\n\n console.log(\n \">>>DelegationCutOffTime\",\n JSON.stringify(ChildInfo.DelegationCutOffTime)\n );\n console.log(\n \">>>PickupModeCutOffTime\",\n JSON.stringify(ChildInfo.PickupModeCutOffTime)\n );\n console.log(\">>>PickupModeDate\", JSON.stringify(selectData.showDate));\n\n if (changeDelegationResponse) {\n console.log(\n \"change DeleGation\",\n JSON.stringify(changeDelegationResponse)\n );\n doChangeDelegationClear();\n if (doCallbackRefresh) doCallbackRefresh();\n }\n }\n\n render() {\n const { gaurdianDetails, isSuccessPrompt } = this.state;\n console.log(\"gaurdianDetails\", JSON.stringify(gaurdianDetails));\n\n const ChildInfo = this.props.ChildInfo;\n const selectData = this.props.selectData;\n const pickedTime = this.props.pickedTime;\n const school = this.props.school;\n\n const isPasswordRequired = earlyDismissNeedPassword(school);\n\n return (\n
    \n
    \n
    \n \n {this.props.t(\"Select_How_Label\")}\n
    \n \n \n \n
    \n
    \n
    \n \n {\n this.setState({\n selectedOptionPickupBy: this.props.t(\n \"Select_Me_Dismissal_Label\"\n ),\n });\n }}\n className={\n this.state.selectedOptionPickupBy ===\n this.props.t(\"Select_Me_Dismissal_Label\")\n ? \"custom-radio mb-20 checked\"\n : \"custom-radio mb-20\"\n }\n >\n \n \n \n {this.props.t(\"IWillPickup\")}\n \n
    \n\n {\n if (gaurdianDetails !== null && gaurdianDetails !== undefined) {\n this.setState({\n selectedOptionPickupBy: `${\n gaurdianDetails.Firstname\n } ${\"\"} ${gaurdianDetails.Lastname}`,\n });\n }\n this.openContact(\n this.props.t(\"Select_Contact_Dismissal_Label\")\n );\n }}\n className={\n this.state.selectedOptionPickupBy !==\n this.props.t(\"Select_Me_Dismissal_Label\")\n ? \"custom-radio rightArrowLabel mb-20 checked\"\n : \"custom-radio rightArrowLabel mb-20\"\n }\n >\n
    \n \n \n \n {this.props.t(\"change_selection_text\")}\n {/* {this.state.selectedOptionPickupBy ===\n this.props.t(\"Select_Me_Dismissal_Label\")\n ? gaurdianDetails === null\n ? this.props.t(\"change_selection_text\")\n : `${gaurdianDetails.Firstname} ${\"\"} ${\n gaurdianDetails.Lastname\n }`\n : this.state.selectedOptionPickupBy} */}\n \n
    \n\n {this.state.selectedOptionPickupBy ===\n this.props.t(\"Select_Me_Dismissal_Label\") ? null : (\n
    \n {gaurdianDetails.PhotoUrl ? (\n
    \n \n \n \n
    \n ) : null}\n
    \n \n {`${gaurdianDetails.Firstname} ${\"\"} ${\n gaurdianDetails.Lastname\n }`}\n \n \n {gaurdianDetails.PhoneNumber}\n \n
    \n
    \n )}\n
    \n \n \n \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n loadingForPickupMode: state.school.loadingForPickupMode,\n changeDelegationResponse: state.student.changeDelegationResponse,\n userLoginInfo: state.userAccount.userLoginInfo,\n availableDispatch: state.student.availableDispatch,\n error: state.student.error,\n\n setCreatePickupButtonsUI: state.userAccount.setCreatePickupButtonsUI,\n setHelpListData: state.userAccount.setHelpListData,\n\n isFetching: loadingSelector(state),\n earlyDismissalResponse: state.student.earlyDismissalResponse,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doChangeDelegation: (data) => dispatch(changeDelegation(data)),\n doChangeDelegationClear: () => dispatch(changeDelegationClear()),\n doGetAvailableDispatch: (data) => dispatch(getAvailableDispatch(data)),\n doGetAvailableDispatchClear: () => dispatch(getAvailableDispatchClear()),\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n\n doEarlyDismissalSubmit: (data) => dispatch(earlyDismissalSubmit(data)),\n doearlyDismissalClear: () => dispatch(earlyDismissalClear()),\n };\n}\nexport default withTranslation()(\n //connect(mapStateToProps, mapDispatchToProps)(EarlyDismissalPickup)\n connect(mapStateToProps, mapDispatchToProps, null, {\n forwardRef: true,\n })(EarlyDismissalPickup)\n);\n","import React from \"react\";\nimport { connect } from \"react-redux\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { dom } from \"@fortawesome/fontawesome-svg-core\";\nimport { faCalendarAlt } from \"@fortawesome/free-regular-svg-icons\";\nimport { faCarAlt } from \"@fortawesome/free-solid-svg-icons\";\nimport moment from \"moment\";\nimport { PickupSummaryView } from \"../../ChildManagement\";\nimport DatePicker from \"react-datepicker\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport { Colors } from \"../../../theme\";\nimport {\n filterByTypes,\n getMarkStyle,\n canEarlyDismissToday,\n getDismissalInfo,\n earlyDismissNeedPassword,\n getLanguageCode,\n isEarlyDismissalAvailable,\n} from \"../../../helper/utility\";\nimport {\n showModal,\n hideModal,\n setHelpList,\n setOldHelpSetting,\n} from \"../../../common/actions/userAccount\";\nimport GLOBAL_CONST from \"../../../helper/AppConstants\";\n\nimport { Line } from \"rc-progress\";\nimport { event } from \"jquery\";\nimport \"../../ChildManagement/styles/style.css\";\nimport EarlyDismissalPickup from \"../EarlyDismissal/EarlyDismissalPickup\";\nimport { withTranslation } from \"react-i18next\";\n\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport { confirmAlert } from \"react-confirm-alert\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport DateTimePicker from \"react-datetime-picker\";\n\nimport { createLoadingSelector } from \"../../../common/reducers/selectors\";\nimport { ThemeProvider } from \"react-bootstrap\";\nconst loadingSelector = createLoadingSelector([\"change_delegation\"]);\ntoast.configure();\n\nvar currentDate = new Date();\nvar numberOfDaysToAdd = 5;\nconst daysHighlighted = new Array(numberOfDaysToAdd).fill(currentDate);\nconst DISPLAY_PER_PAGE = 15;\nvar SelectedWeekDays = [];\n\nclass CreateEarlyDismissal extends React.Component {\n constructor(props) {\n super(props);\n this.inputRefs = {\n selectedOption: null,\n };\n let selectDismissalDate = this.props.selectDate;\n let markedDates = this.props.markedDates;\n\n const school = this.props.school;\n const firstDayOfSchool = new Date(school.Dates.FirstDayOfSchool);\n const isEarlyAllowedForToday = canEarlyDismissToday(school);\n\n if (!selectDismissalDate) selectDismissalDate = new Date();\n if (!isEarlyAllowedForToday) {\n selectDismissalDate = selectDismissalDate.setDate(\n selectDismissalDate.getDate() + 1\n );\n }\n if (moment(selectDismissalDate).isBefore(moment()))\n selectDismissalDate = new Date();\n\n const isSelectedPriorToFirstDay = moment(firstDayOfSchool).isAfter(\n moment(selectDismissalDate)\n );\n\n if (isSelectedPriorToFirstDay) selectDismissalDate = firstDayOfSchool;\n\n let selectedTillDate = new Date(selectDismissalDate);\n selectedTillDate = selectedTillDate.setDate(selectedTillDate.getDate() + 7);\n\n this.state = {\n // bounceValue: new Animated.Value(0),\n selectedDate: selectDismissalDate,\n selectedTillDate,\n selectedPreviousDate: selectDismissalDate,\n selectedPreviousTillDate: selectedTillDate,\n selectedOption: 0,\n previousSelectedOptions: null,\n isFromDateTimePickerVisible: false,\n isUntilDateTimePickerVisible: false,\n markedDates,\n lastFetchedDate: null,\n currentPageIndex: 0,\n showTimePicker: true,\n pickedTime: new Date().setMinutes(new Date().getMinutes() + 0),\n earlyDismissalPickupData: {},\n isSubmitNext: false,\n password: \"\",\n isCollapse: true,\n };\n this.earlyDismissalPickup = React.createRef();\n }\n\n componentDidMount() {\n this.dosetHelpList();\n }\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"ChildManagement\",\n screen: GLOBAL_CONST.SCREEN_NAMES.SELECT_WHEN,\n title: this.props.t(\"selectWhenScr-selectWhen\"),\n });\n };\n\n openHelpModal = () => {\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n },\n });\n };\n\n changeMonth = (value) => {\n this.calendar.addMonth(value);\n const { currentSelectedMonth } = this.state;\n const currMonth = moment(currentSelectedMonth).add(value, \"M\");\n this.setState({\n currentSelectedMonth: currMonth,\n selectedDate: currMonth.toDate(),\n });\n };\n\n onLeftFlingHandlerStateChange = () => {\n this.changeMonth(1);\n };\n\n onRightFlingHandlerStateChange = ({ nativeEvent }) => {\n // if (nativeEvent.oldState === State.ACTIVE) {\n // this.changeMonth(-1);\n // }\n this.changeMonth(-1);\n };\n\n saveChangesManuallExcludedDates = (manuallExcludedDates) => {\n this.setState({ manuallExcludedDates });\n };\n\n saveChangesCurrentPageIndex = (currentPageIndex) => {\n this.setState({ currentPageIndex });\n };\n\n setSelectedDate = (day) => {\n console.log(\"date\", day);\n var newDate = day.setHours(0, 1, 0, 0);\n this.setState(\n {\n selectedDate: newDate,\n },\n () => {\n this.getDayRecord(\"from\");\n }\n );\n };\n\n showDayDetail = (day) => {\n const { markedDates } = this.state;\n const dt = new Date(day.timestamp);\n const selectDateStr = moment(dt).format(\"YYYY-MM-DD\");\n const markedRecord = markedDates[selectDateStr];\n\n if (markedRecord && markedRecord.record) {\n const dismissalInfo = getDismissalInfo(markedRecord.record);\n var day2 = moment(markedRecord.record.CalendarDate).format(\n \"ddd, MMM Do YYYY\"\n );\n toast.info(\n `${dismissalInfo.dismissalText} ${dismissalInfo.dismissalTextSubText}`,\n {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n }\n );\n // Toast.show({\n // type: \"info\",\n // position: \"bottom\",\n // text2: day,\n // text1: `${dismissalInfo.dismissalText} ${dismissalInfo.dismissalTextSubText}`,\n // visibilityTime: 4000,\n // autoHide: true,\n // });\n }\n };\n\n getDayRecord(type) {\n const { selectedDate, selectedTillDate } = this.state;\n const setDate = type === \"from\";\n const markedDates = { ...this.state.markedDates };\n var selectDateStr = moment(new Date(setDate)).format(\"YYYY-MM-DD\");\n\n for (const key in markedDates) {\n if (key === selectDateStr) {\n var selectedMarked = {\n selected: true,\n selectedColor: Colors.blue,\n record: markedDates[key].record,\n };\n markedDates[key] = selectedMarked;\n } else {\n markedDates[key] = getMarkStyle(markedDates[key].record);\n }\n }\n this.setState({ markedDates });\n }\n setSelectedTillDate = (day) => {\n const dateSelected = new Date(\n day.year,\n day.month - 1,\n day.day,\n 23,\n 59,\n 0,\n 0\n );\n this.setState({ selectedTillDate: dateSelected }, () => {\n this.getDayRecord(\"to\");\n });\n };\n\n submitNext = () => {\n const {\n selectedDate,\n selectedOption,\n markedDates,\n pickedTime,\n } = this.state;\n const ChildInfo = this.props.ChildInfo;\n const school = this.props.school;\n let selectData = {};\n\n if (selectedDate == \"Select Date\") {\n alert(this.props.t(\"selectWhenScr-selectDate\"));\n }\n if (pickedTime == null) {\n alert(this.props.t(\"earlyDisScr-selectTime\"));\n } else {\n selectData = {\n selectedOption,\n showDate: selectedDate,\n };\n if (\n school.ReunificationEnabled &&\n moment(selectedDate).isSame(moment(), \"date\")\n ) {\n alert(this.props.t(\"emergency_reunification_pickup_msg\"));\n return;\n }\n\n const result = isEarlyDismissalAvailable(\n school,\n selectedDate,\n pickedTime,\n this.props\n );\n if (result.success === false) {\n alert(result.message);\n return;\n }\n\n this.showSelectHowUI(selectData);\n\n // this.props.navigation.navigate(\"EarlyDismissalPickup\", {\n // ChildInfo,\n // school,\n // selectData,\n // doCallbackRefresh: this.props.navigation.state.params.doCallbackRefresh,\n // selectedDate,\n // pickedTime,\n // });\n console.log(\"******* dismissal param \" + JSON.stringify(selectData));\n }\n };\n\n detoxDateSetup = () => {\n console.log(\"@@@@ detoxDateSetup call\");\n let { selectedTillDate } = this.state;\n let newDate = new Date();\n const isFuture = moment(selectedTillDate).isAfter(moment(newDate));\n console.log(\"get new today date--->\", newDate);\n console.log(\"get new isFuture date--->\", isFuture);\n console.log(\"get new isAfter date--->\", moment(newDate).isAfter());\n var fourDaysForward = new moment().add(4, \"day\");\n console.log(\"get new fourDaysForward date--->\", fourDaysForward);\n };\n showSelectHowUI = (selectData) => {\n this.setState({\n showSelectHowUIFlag: !this.state.showSelectHowUIFlag,\n earlyDismissalPickupData: selectData,\n });\n this.dosetHelpList();\n };\n\n renderLegendUI = () => {\n const { showUntillCalendarPicker, showCalendarPicker } = this.state;\n return (\n
    \n
    \n
    {this.props.t(\"Legend\")}
    \n
      \n
    • \n {this.props.t(\"Approved_Pickup_Change_Text\")}\n
    • \n
    • \n {this.props.t(\"Approved_EarlyPickup_Change_Text\")}\n
    • \n
    • {this.props.t(\"Mark_Absent_Text\")}
    • \n
    • \n {this.props.t(\"Pending_Approval_Text_p\")} \n
    • \n
    • \n {this.props.t(\"Pending_Approval_Text_e\")}\n
    • \n \n
      \n {this.props.t(\"Pending_Approval_Text2\")}\n
      \n
    \n
    \n
    \n );\n };\n\n saveChangesManuallExcludedDates = (manuallExcludedDates) => {\n this.setState({ manuallExcludedDates });\n };\n\n getSelectHowUI = () => {\n const {\n earlyDismissalPickupData,\n selectedDate,\n selectedOption,\n markedDates,\n pickedTime,\n } = this.state;\n\n const ChildInfo = this.props.ChildInfo;\n const school = this.props.school;\n\n console.log(\"pickedTime=======>\", pickedTime);\n\n return (\n (this.earlyDismissalPickup = ref)}\n ChildInfo={ChildInfo}\n school={school}\n selectData={earlyDismissalPickupData}\n doCallbackRefresh={this.props.doCallbackRefresh}\n selectedDate={selectedDate}\n pickedTime={pickedTime}\n />\n );\n };\n\n selectDOW = (item) => {\n let DOW = [...this.state.DOW];\n let selectedDays = { ...this.state.selectedDays };\n\n item.isSelected = !item.isSelected;\n DOW[item.id] = item;\n if (item.isSelected) {\n selectedDays[item.value.toLowerCase()] = true;\n } else {\n delete selectedDays[item.value.toLowerCase()];\n }\n this.setState({ DOW, selectedDays });\n };\n\n renderDOW = () => {\n let days = [];\n const { DOW } = this.state;\n for (var i = 0; i < DOW.length; i++) {\n const item = DOW[i];\n days.push(\n {\n this.selectDOW(item);\n this.buildRecurringDates();\n }}\n >\n {item.DOW}\n \n );\n }\n return days;\n };\n\n getMinMaxDate = (type) => {\n const { selectedDate, selectedTillDate } = this.state;\n\n let minimumDate, maximumDate;\n const school = this.props.school;\n const firstDayOfSchool = new Date(school.Dates.FirstDayOfSchool);\n const isFuture = moment(firstDayOfSchool).isAfter(moment());\n\n const maxDate = new Date(school.Dates.LastDayOfSchool);\n if (type === \"from\") {\n minimumDate = isFuture ? firstDayOfSchool : new Date();\n maximumDate = new Date(maxDate);\n } else if (type === \"to\") {\n minimumDate = new Date(selectedDate);\n minimumDate = minimumDate.setDate(minimumDate.getDate() + 1);\n maximumDate = new Date(maxDate);\n }\n return {\n minimumDate,\n maximumDate,\n };\n };\n drawTodayEarlyDismissalSchedule = () => {\n const schools = this.props.school;\n const isEarlyAllowedForToday =\n schools.EarlyDismissalSettings.AllowParentSameDayScheduling;\n const timeTable = schools.EarlyDismissalSettings.EarlyDismissalTimeTable;\n let timeTableView = [];\n const dayIndex = moment(new Date()).format(\"d\");\n const StartTime = new Date(`1/1/2015 ${timeTable[dayIndex].StartTime}`);\n const EndTime = new Date(`1/1/2015 ${timeTable[dayIndex].EndTime}`);\n const { selectedDate, doTodayFlash, doSelectedDateFlash } = this.state;\n const daySelectedIndex = moment(new Date(selectedDate)).format(\"d\");\n let day =\n getLanguageCode() === \"en\"\n ? GLOBAL_CONST.DAYS_FULL_EN[daySelectedIndex]\n : GLOBAL_CONST.DAYS_FULL_ES[daySelectedIndex];\n let timeStyle = \"time\";\n if (!timeTable[dayIndex].Active) {\n timeStyle = \"time disabletime\";\n }\n console.log(\"----->\", moment(selectedDate).isBefore(new Date()));\n console.log(\"daySelectedIndex =\", daySelectedIndex, \"dayIndex =\", dayIndex);\n console.log(\"----->day\", day);\n if (daySelectedIndex === dayIndex) {\n timeTableView.push(\n
      \n
    • \n {moment(selectedDate).isBefore(new Date()) ? (\n {this.props.t(\"lbl_Today\")}\n ) : (\n {day}\n )}\n {/*
      */}\n
      \n {`${moment(StartTime).format(\n \"hh:mm A\"\n )}`}\n \n {`${moment(EndTime).format(\n \"hh:mm A\"\n )}`}\n
      \n
    • \n
    \n );\n }\n if (daySelectedIndex !== dayIndex)\n timeTableView.push(\n
      \n {this.createDay(timeTable, daySelectedIndex, true)}\n
    \n );\n return timeTableView;\n };\n createDay = (timeTable, i, isLastRecord) => {\n const StartTime = new Date(`1/1/2015 ${timeTable[i].StartTime}`);\n const EndTime = new Date(`1/1/2015 ${timeTable[i].EndTime}`);\n console.log(\"getLanguageCode()--\", getLanguageCode());\n const day =\n getLanguageCode() === \"en\"\n ? GLOBAL_CONST.DAYS_FULL_EN[i]\n : GLOBAL_CONST.DAYS_FULL_ES[i];\n // const viewStyle = [styles.scheduleInfo]\n\n const lastRecordView = {\n borderBottomLeftRadius: 12,\n borderBottomRightRadius: 12,\n };\n\n let timeStyle = \"time\";\n\n if (!timeTable[i].Active) {\n timeStyle = \"time disabletime\";\n }\n return (\n
  • \n {day}\n
    \n {`${moment(StartTime).format(\n \"hh:mm A\"\n )}`}\n \n {`${moment(EndTime).format(\n \"hh:mm A\"\n )}`}\n
    \n
  • \n );\n };\n drawEarlyDismissalSchedule = () => {\n const schools = this.props.school;\n let timeTableView = [];\n const timeTable = schools.EarlyDismissalSettings.EarlyDismissalTimeTable;\n for (let j = 1; j < timeTable.length; j++) {\n timeTableView.push(this.createDay(timeTable, j, false));\n }\n timeTableView.push(this.createDay(timeTable, 0, true));\n return
      {timeTableView}
    ;\n };\n\n getSelectDateUI = () => {\n const {\n selectedDate,\n selectedOption,\n isFromDateTimePickerVisible,\n pickedTime,\n isCollapse,\n } = this.state;\n\n const { school, ChildInfo } = this.props;\n const isEarlyAllowedForToday = canEarlyDismissToday(school);\n\n return (\n
    \n
    \n
    \n
    \n \n {this.props.t(\"select_when_text\")}\n
    \n \n \n \n
    \n
    \n
    \n \n {this.showCalendarView()}\n
    \n\n
    \n \n
    \n {this.renderTimePicker()}\n
    \n
    \n
    \n
    \n\n
    \n {\n this.setState({ isCollapse: !isCollapse });\n }}\n >\n
    \n
    \n {/* */}\n \n {this.props.t(\"early_dismissal_schedule\")}\n \n \n {console.log(\n \"isEarlyAllowedForToday--> \",\n isEarlyAllowedForToday\n )}\n {isEarlyAllowedForToday === false\n ? this.props.t(\"early_dismissal_allow_today_message\")\n : null}\n \n
    \n {isCollapse && (\n
    \n {this.drawTodayEarlyDismissalSchedule()}\n
    \n )}\n
    \n
    \n \n {this.drawEarlyDismissalSchedule()}\n
    \n \n \n );\n };\n\n schedulePickupView = () => {\n const {\n showCalendarPicker,\n showUntillCalendarPicker,\n repeatPickupData,\n repeatOptions,\n showSelectHowUIFlag,\n pickupModeData,\n selectedDate,\n selectedTillDate,\n selectedOption,\n isRepeat,\n manuallExcludedDates,\n recurringDates,\n currentPageIndex,\n pageIndexes,\n markedDates,\n showPickupSummary,\n } = this.state;\n const { isFetching, ChildInfo } = this.props;\n console.log(\"isFetching isFetching\", isFetching);\n return (\n
    \n
    \n
    \n
    \n
    \n

    \n {this.props.t(\"create_earlydismissal\")}\n

    \n

    \n {this.props.t(\"early_dismissalfor\")}\n

    \n

    \n {ChildInfo.Firstname + \" \" + ChildInfo.Lastname}\n

    \n {\n this.openHelpModal();\n }}\n >\n {this.props.t(\"regNameScr-needHelp\")}\n \n
    \n {\n this.closeModal();\n }}\n >\n
    \n\n
    \n
    \n
    \n {showSelectHowUIFlag\n ? this.getSelectHowUI()\n : this.getSelectDateUI()}\n
    \n
    \n
    \n
    \n {showSelectHowUIFlag\n ? this.getHowFooterContent()\n : this.getWhenFooterContent()}\n
    \n
    \n
    \n
    \n );\n };\n\n showCalendarView = () => {\n const { selectedDate, selectedTillDate, markedDates } = this.state;\n let date, minimumDate, maximumDate;\n\n const pickupDates = filterByTypes(markedDates);\n\n const school = this.props.school;\n const firstDayOfSchool = new Date(school.Dates.FirstDayOfSchool);\n const isFuture = moment(firstDayOfSchool).isAfter(moment());\n const isEarlyAllowedForToday = canEarlyDismissToday(school);\n const maxDate = new Date(school.Dates.LastDayOfSchool);\n\n console.log(\"******* school param \" + JSON.stringify(school));\n date =\n selectedDate && selectedDate !== \"\"\n ? moment(selectedDate).toDate()\n : new Date();\n minimumDate = isFuture ? firstDayOfSchool : new Date();\n maximumDate = new Date(maxDate);\n if (!isEarlyAllowedForToday) {\n minimumDate = minimumDate.setDate(minimumDate.getDate() + 1);\n }\n\n const calc = (\n
    \n
    \n }\n >\n
    \n
    \n {isEarlyAllowedForToday && (\n {\n this.setState({ selectedDate: new Date() });\n }}\n >\n {this.props.t(\"lbl_Today\")}\n \n )}\n {\n let tomarrow = new Date();\n tomarrow.setDate(tomarrow.getDate() + 1);\n this.setState({ selectedDate: tomarrow });\n }}\n >\n {this.props.t(\"lbl_Tomorrow\")}\n \n
    \n
    \n );\n return calc;\n };\n\n renderTimePicker = () => {\n const { pickedTime, showTimePicker } = this.state;\n let timepicker = null;\n {\n timepicker = showTimePicker && (\n {\n this.handleConfirm(value);\n }}\n // onClockOpen={() => {\n // this.setState({ showTimePicker: true });\n // }}\n // onClockClose={() => {\n // this.setState({isSubmitNext : true})\n // }}\n className=\"form-control\"\n />\n );\n }\n return timepicker;\n };\n hideDatePicker = () => {\n this.setState({ showTimePicker: false });\n };\n handleConfirm = (value) => {\n console.log(\"pickedTime\", moment(value).format(\"MM/DD/YYYY hh:mm A\"));\n this.setState({ pickedTime: moment(value).format(\"MM/DD/YYYY hh:mm A\") });\n };\n submitForm = () => {\n this.earlyDismissalPickup.submitForm();\n };\n\n confirmPassword = ({ onClose }) => {\n if (this.state.password === \"\") {\n alert(\"Please enter your password\");\n return false;\n }\n setTimeout(this.submitForm, 500);\n onClose();\n };\n\n handlePassword = ({ target: { value: password } }) => {\n this.setState({ password });\n this.earlyDismissalPickup.setState({ password: password });\n };\n\n showPasswordOptions = () => {\n let text = this.props.t(\"EarlyDismissal_Password_Desc\");\n\n return confirmAlert({\n customUI: ({ onClose }) => {\n return (\n
    \n
    \n
    \n
    \n

    \n \n

    \n \n
    \n
    \n {\n this.confirmPassword({ onClose });\n }}\n >\n {this.props.t(\"CONFIRM_EarlyDismissal_Btn\")}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n },\n });\n };\n\n getHowFooterContent = () => {\n const { isFetching, school } = this.props;\n\n const isPasswordRequired = earlyDismissNeedPassword(school);\n //console.log(\"isFetching\", isFetching)\n return (\n
    \n {\n if (isPasswordRequired) {\n this.showPasswordOptions();\n } else {\n this.submitForm();\n }\n }}\n >\n {isFetching ? : null}{\" \"}\n {this.props.t(\"create_earlydismissal\")}\n \n {\n this.submitNext();\n }}\n >\n {this.props.t(\"supportNoScr-back\")}\n \n
    \n );\n };\n getWhenFooterContent = () => {\n return (\n \n {this.props.t(\"regNameScr-next\")}\n \n );\n };\n\n closeModal = () => {\n this.props.doHideModal();\n this.props.doSetOldHelpSetting();\n };\n\n render() {\n return this.schedulePickupView();\n }\n}\nconst CustomInput = (props) => {\n return (\n \n );\n};\nfunction mapStateToProps(state) {\n return {\n setCreatePickupButtonsUI: state.userAccount.setCreatePickupButtonsUI,\n setHelpListData: state.userAccount.setHelpListData,\n isFetching: loadingSelector(state),\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doSetOldHelpSetting: () => dispatch(setOldHelpSetting()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(CreateEarlyDismissal)\n);\n","export default __webpack_public_path__ + \"static/media/pickupBlue.58c46ea8.svg\";","import React from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { withRouter } from \"react-router-dom\";\n\nimport {\n getAvailableDispatch,\n getAvailableDispatchClear,\n saveBackToSchoolInformation,\n saveBackToSchoolInformationClear,\n} from \"../../common/actions/students\";\nimport {\n showModal,\n hideModal,\n setHelpList,\n setOldHelpSetting,\n saveNextAskMeDate,\n backtoschoolDataInfo,\n} from \"../../common/actions/userAccount\";\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\nimport {\n nextField,\n formatPhone,\n createImageFileURL,\n} from \"../../helper/utility\";\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport { confirmAlert } from \"react-confirm-alert\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport ImageUploader from \"react-image-upload\";\nimport \"react-image-upload/dist/index.css\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\nimport { Bootstrap, Dropdown } from \"react-bootstrap\";\nimport RingLoader from \"react-spinners/ClipLoader\";\nimport successChecked from \"../assets/commonImages/successChecked.svg\";\n\nimport { FilePicker } from \"react-file-picker\";\nimport { ImagePicker } from \"react-file-picker\";\nimport Resizer from \"react-image-file-resizer\";\nimport Modal from \"react-modal\";\nimport { Camera } from \"react-camera-pro\";\nimport pickupBlue from \"../assets/menus/pickupBlue.svg\";\nimport { SelectRelationship } from \"../ChildManagement\";\nimport { getfillBacktoschoolinfoData } from \"../../common/actions/students/studentAction\";\n\ntoast.configure();\nconst loadingSelector = createLoadingSelector([\n \"save_back_school\",\n \"get_available_dispatch\",\n]);\n\nconst loadingPhotoSelector = createLoadingSelector([\"upload_delegate_image\"]);\nclass BackToSchool extends React.Component {\n constructor(props) {\n super(props);\n const { delegate } = this.props;\n\n this.inputRefs = {\n selectedOptionPickupMode: 0,\n selectedSubPickupModeOption: null,\n selectedBusRouteOption: null,\n };\n\n let backToSchoolInfoData = this.props.backToSchoolInfoData;\n backToSchoolInfoData = { ...backToSchoolInfoData };\n if (\n backToSchoolInfoData === null ||\n backToSchoolInfoData === undefined ||\n Object.keys(backToSchoolInfoData).length === 0\n ) {\n backToSchoolInfoData = this.getBackToSchoolTemplate();\n } else {\n backToSchoolInfoData.StudentID = backToSchoolInfoData.StudentId;\n backToSchoolInfoData.PickupMode = {};\n }\n\n // let backToSchoolInfoData = this.props.backToSchoolInfoData;\n // backToSchoolInfoData = { ...backToSchoolInfoData };\n // if (!backToSchoolInfoData) {\n // backToSchoolInfoData = {};\n // }\n // backToSchoolInfoData.StudentID = backToSchoolInfoData.StudentId;\n // backToSchoolInfoData.PickupMode = {};\n console.log(\"back to school data \" + JSON.stringify(backToSchoolInfoData));\n\n this.state = {\n backToSchoolInfoData,\n isExpandYourInfo: false,\n isExpandAdditionalParent: false,\n isExpandPickupMode: false,\n isExpandAddress: false,\n isCollapse: true,\n isEditable: false,\n selectedOptionPickupMode: 0,\n previousSelectedOptionsPickupMode: null,\n selectedSubPickupModeOption: null,\n previousSelectedSubpickupModeOption: null,\n selectedBusRouteOption: null,\n previousSelecteBusRouteOption: null,\n pickupModeList: [],\n schoolSubOptions: [],\n busRouteSubOptions: [],\n OtherPickupMode: null,\n };\n // this.InputAccessoryViewPickupMode = this.InputAccessoryViewPickupMode.bind(this);\n // this.InputAccessoryViewSubPickupModeOption = this.InputAccessoryViewSubPickupModeOption.bind(this);\n // this.InputAccessoryViewBusRoute = this.InputAccessoryViewBusRoute.bind(this);\n }\n componentDidMount() {\n this.dosetHelpList();\n this.getDispatchList();\n const { doGetFillbacktoschoolinfo, isReadOnly } = this.props;\n const ChildInfo = this.props.studentData;\n if (ChildInfo != \"\" && isReadOnly) {\n doGetFillbacktoschoolinfo({\n studentId: ChildInfo.StudentID,\n callback: (fillbacktoschoolinfo) => {\n if (fillbacktoschoolinfo) {\n this.setState({ backToSchoolInfoData: fillbacktoschoolinfo });\n this.setState({\n selectedOptionPickupMode:\n fillbacktoschoolinfo.PickupMode.PickupModeId,\n });\n }\n },\n });\n }\n }\n componentWillUnmount() {\n this.props.doGetAvailableDispatchClear();\n }\n\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"ChildManagement\",\n screen: GLOBAL_CONST.SCREEN_NAMES.ADD_CONTACT,\n title: this.props.t(\"Create_Contact\"),\n });\n };\n getBackToSchoolTemplate = () => {\n const ChildInfo = this.props.studentData;\n return {\n StudentId: ChildInfo.StudentID,\n Primary: {\n FirstName: \"\",\n LastName: \"\",\n Mobile: \"\",\n Email: \"\",\n Relationship: \"\",\n },\n Secondary: {\n FirstName: \"\",\n LastName: \"\",\n Mobile: \"\",\n Email: \"\",\n Relationship: \"\",\n },\n PickupMode: {},\n Carpooling: null,\n Address: \"\",\n StudentID: ChildInfo.StudentID,\n };\n };\n\n getDispatchList = () => {\n //const ChildInfo = this.props.ChildInfo;\n // doGetAvailableDispatch({ studentIDs: [789890] });\n const { doGetAvailableDispatch } = this.props;\n const ChildInfo = this.props.studentData;\n doGetAvailableDispatch({ studentIDs: [ChildInfo.StudentID] });\n };\n openHelpModal = () => {\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n },\n });\n };\n\n getPickupModeById = (value) => {\n const { pickupModeList } = this.state;\n for (let i = 0; i < pickupModeList.length; i++) {\n if (parseInt(value) === parseInt(pickupModeList[i].value))\n return pickupModeList[i].label;\n }\n };\n\n getAfterSchoolProgramById = (value) => {\n const { schoolSubOptions } = this.state;\n for (let i = 0; i < schoolSubOptions.length; i++) {\n if (parseInt(value) === parseInt(schoolSubOptions[i].value))\n return schoolSubOptions[i];\n }\n return {\n label: \"\",\n canAssignParent: false,\n };\n };\n\n getBusRouteById = (value) => {\n const { busRouteSubOptions } = this.state;\n\n for (let i = 0; i < busRouteSubOptions.length; i++) {\n if (parseInt(value) === parseInt(busRouteSubOptions[i].value))\n return busRouteSubOptions[i];\n }\n return {\n label: \"\",\n canAssignParent: false,\n };\n };\n\n updateBackToSchoolData = (fieldType, fieldName, value) => {\n const backToSchoolInfoData = { ...this.state.backToSchoolInfoData };\n if (fieldType) {\n const fieldData = { ...backToSchoolInfoData[fieldType] };\n fieldData[fieldName] = value;\n backToSchoolInfoData[fieldType] = fieldData;\n } else {\n backToSchoolInfoData[fieldName] = value;\n }\n this.setState({ backToSchoolInfoData });\n console.log(\n \"updateBackToSchoolData \" + JSON.stringify(backToSchoolInfoData)\n );\n };\n\n setupPickupModes = () => {\n const { pickupModeList, schoolSubOptions, busRouteSubOptions } = this.state;\n const { availableDispatch } = this.props;\n\n let studentPickupModeList;\n let pickupModes = [];\n let schoolOptions = [];\n let busOptions = [];\n let afterSchoolOptions,\n busCompletesOptions,\n subOptions,\n subBus = [];\n let modes = [];\n\n if (availableDispatch) {\n studentPickupModeList = availableDispatch.StudentDismissalMethod;\n pickupModes.push({\n label: `${this.props.t(\"Select_Dismissal_Label\")}`,\n value: 0,\n canAssignParent: false,\n });\n for (let i = 0; i < studentPickupModeList.length; i++) {\n modes = studentPickupModeList[i].Modes;\n afterSchoolOptions = modes.filter(\n (item) => parseInt(item.PickupModeID) === 4\n );\n busCompletesOptions = modes.filter(\n (item) => parseInt(item.PickupModeID) === 1\n );\n }\n for (let i = 0; i < modes.length; i++) {\n pickupModes.push({\n label: `${modes[i].Name}`,\n value: modes[i].PickupModeID,\n });\n }\n pickupModes.push({\n label: `${this.props.t(\"selectProblemScr-other\")}`,\n value: -9,\n canAssignParent: false,\n });\n\n if (pickupModeList.length === 0 && pickupModes.length > 0) {\n this.setState({ pickupModeList: pickupModes });\n }\n\n // console.log(\"BusOptions\", JSON.stringify(busCompletesOptions));\n for (let i = 0; i < afterSchoolOptions.length; i++) {\n subOptions = afterSchoolOptions[i].SubOptions;\n //console.log(\"SchoolOptions\", JSON.stringify(subOptions));\n }\n if (subOptions) {\n subOptions = subOptions.sort((a, b) =>\n a.Name.toLowerCase() > b.Name.toLowerCase()\n ? 1\n : b.Name.toLowerCase() > a.Name.toLowerCase()\n ? -1\n : 0\n );\n for (let i = 0; i < subOptions.length; i++) {\n schoolOptions.push({\n label: `${subOptions[i].Name}`,\n value: `${subOptions[i].ID}`,\n canAssignParent: subOptions[i].CanAssignParent,\n });\n }\n if (schoolOptions.length > 0)\n schoolOptions.push({\n label: `${this.props.t(\"selectProblemScr-other\")}`,\n value: -9,\n canAssignParent: false,\n });\n }\n\n if (schoolSubOptions.length === 0 && schoolOptions.length > 0) {\n this.setState({\n schoolSubOptions: schoolOptions,\n selectedSubPickupModeOption: schoolOptions[0].value,\n });\n }\n\n for (let i = 0; i < busCompletesOptions.length; i++) {\n subBus = busCompletesOptions[i].SubOptions;\n }\n for (let i = 0; i < subBus.length; i++) {\n busOptions.push({\n label: `${subBus[i].Name}`,\n value: `${subBus[i].ID}`,\n canAssignParent: subBus[i].CanAssignParent,\n });\n }\n if (busOptions.length > 0)\n busOptions.push({\n label: `${this.props.t(\"selectProblemScr-other\")}`,\n value: -9,\n canAssignParent: false,\n });\n if (busRouteSubOptions.length === 0 && busOptions.length > 0) {\n //console.log('busOptions ', busOptions)\n busOptions = busOptions.sort((a, b) =>\n a.label.toLowerCase() > b.label.toLowerCase()\n ? 1\n : b.label.toLowerCase() > a.label.toLowerCase()\n ? -1\n : 0\n );\n this.setState({\n busRouteSubOptions: busOptions,\n selectedBusRouteOption: busOptions[0].value,\n });\n }\n }\n };\n\n componentDidUpdate = () => {\n const {\n saveBackSchoolInfoResponse,\n error,\n isSingleKid,\n doSaveBackToSchoolDataClear,\n } = this.props;\n console.log(\"saveBackSchoolInfoResponse===>\", saveBackSchoolInfoResponse);\n const { doCallbackRefresh } = this.props;\n this.setupPickupModes();\n if (error) {\n toast.error(error.Message || error.message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n } else if (saveBackSchoolInfoResponse != null) {\n toast.success(saveBackSchoolInfoResponse.Message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n doSaveBackToSchoolDataClear();\n this.props.doHideModal();\n if (doCallbackRefresh) doCallbackRefresh();\n\n if (isSingleKid) this.props.history.replace(\"/childManagement\");\n }\n };\n\n setSelectedDelegate = () => {};\n\n getStudentRelationship = (studentID) => {\n const { relationshipList, studentData } = this.props;\n const rec = studentData.studentID;\n let relationshipText = null;\n if (rec && rec !== undefined) {\n if (rec.RelationshipTypeId) {\n if (\n relationshipList &&\n relationshipList !== undefined &&\n relationshipList.length > 0\n )\n relationshipText = relationshipList.find(\n (item) => parseInt(item.Id) === parseInt(rec.RelationshipTypeId)\n ).Id;\n } else if (rec.RelationshipTypeOther) {\n relationshipText = rec.RelationshipTypeOther;\n }\n }\n console.log(\"relationshipText \", relationshipText);\n return relationshipText;\n };\n\n doSetuserRelation = (selectedRelationData) => {\n console.log(\"selectedRelationData========>\", selectedRelationData);\n this.updateBackToSchoolData(\n \"Primary\",\n \"Relationship\",\n selectedRelationData.Relationship\n );\n };\n doSetSecRelation = (selectedRelationData) => {\n this.updateBackToSchoolData(\n \"Secondary\",\n \"Relationship\",\n selectedRelationData.Relationship\n );\n };\n saveBackToSchool = () => {\n const { doSaveBackToSchoolData, doBacktoschoolInfoFill } = this.props;\n const backToSchoolInfoData = { ...this.state.backToSchoolInfoData };\n const {\n selectedOptionPickupMode,\n selectedSubPickupModeOption,\n selectedBusRouteOption,\n OtherPickupMode,\n } = this.state;\n const PickupMode = {};\n\n if (selectedOptionPickupMode) {\n if (parseInt(selectedOptionPickupMode) === -9) {\n PickupMode.Other = OtherPickupMode;\n } else {\n PickupMode.PickupModeId = selectedOptionPickupMode;\n PickupMode.PickupModeName = this.getPickupModeById(\n selectedOptionPickupMode\n );\n }\n if (selectedOptionPickupMode == 4) {\n if (parseInt(selectedSubPickupModeOption) === -9) {\n PickupMode.Other = OtherPickupMode;\n } else {\n PickupMode.InstitutionId = selectedSubPickupModeOption;\n PickupMode.InstitutionName = this.getAfterSchoolProgramById(\n selectedSubPickupModeOption\n ).label;\n }\n } else if (selectedOptionPickupMode == 1) {\n if (parseInt(selectedBusRouteOption) === -9) {\n PickupMode.Other = OtherPickupMode;\n } else {\n PickupMode.BusRouteId = selectedBusRouteOption;\n PickupMode.BusName = this.getBusRouteById(\n selectedBusRouteOption\n ).label;\n }\n }\n }\n\n backToSchoolInfoData.PickupMode = PickupMode;\n\n console.log(\n \" backToSchoolInfoData \" + JSON.stringify(backToSchoolInfoData)\n );\n doSaveBackToSchoolData(backToSchoolInfoData);\n doBacktoschoolInfoFill();\n };\n\n render() {\n const {\n selectedOptionPickupMode,\n selectedBusRouteOption,\n selectedSubPickupModeOption,\n pickupModeList,\n schoolSubOptions,\n busRouteSubOptions,\n isExpandYourInfo,\n isExpandAdditionalParent,\n isExpandAddress,\n isExpandPickupMode,\n isEditable,\n isCollapse,\n backToSchoolInfoData,\n OtherPickupMode,\n } = this.state;\n const { studentData, isSingleKid, stackType, isReadOnly } = this.props;\n const { avatarsPaths, isFetching } = this.props;\n\n let selectedOptionPickupModeText = \"\";\n if (selectedOptionPickupMode == 4)\n selectedOptionPickupModeText = this.props.t(\"After_School_Program\");\n else if (selectedOptionPickupMode == 1)\n selectedOptionPickupModeText = this.props.t(\"Bus_Route\");\n\n console.log(\"selectedOptionPickupMode \" + selectedOptionPickupMode);\n console.log(\"selectedSubPickupModeOption \" + selectedSubPickupModeOption);\n console.log(\"selectedBusRouteOption \" + selectedBusRouteOption);\n console.log(\"studentData\", studentData);\n return (\n
    \n
    \n
    \n
    \n
    \n

    \n {this.props.t(\"Back_to_school\")}\n

    \n
    \n {/* {\n this.openHelpModal();\n }}\n >\n {this.props.t(\"regNameScr-needHelp\")}\n */}\n
    \n\n {\n if (isSingleKid && stackType === \"Setting\") {\n this.closeModal();\n } else if (isSingleKid) {\n this.askMeAlerts();\n } else {\n this.closeModal();\n }\n }}\n >\n
    \n\n
    \n
    \n
    \n {\n if (isCollapse === true) {\n this.setState({ isEditable: false });\n }\n this.setState({ isCollapse: !isCollapse });\n }}\n >\n
    \n \n {this.props.t(\"your_info\")}\n {isCollapse === false && !isReadOnly ? (\n {\n event.stopPropagation();\n this.setState({ isEditable: true });\n }}\n >\n \n \n ) : null}\n
    \n
    \n \n
    \n
    \n \n
    \n {\n this.updateBackToSchoolData(\n \"Primary\",\n \"FirstName\",\n event.target.value\n );\n }}\n maxLength={50}\n onKeyPress={(event) => nextField(event)}\n />\n \n
    \n {/* {firstNameInvalid} */}\n
    \n\n
    \n \n
    \n nextField(event)}\n value={backToSchoolInfoData.Primary.LastName}\n onChange={(event) => {\n this.updateBackToSchoolData(\n \"Primary\",\n \"LastName\",\n event.target.value\n );\n }}\n maxLength={50}\n //ref={(input) => { this.secondTextInput = input; }}\n />\n \n
    \n {/* {lastNameInvalid} */}\n
    \n
    \n \n
    \n nextField(event)}\n value={backToSchoolInfoData.Primary.Mobile}\n placeholder={this.props.t(\"phone-format\")}\n onChange={(event) => {\n this.updateBackToSchoolData(\n \"Primary\",\n \"Mobile\",\n event.target.value\n );\n }}\n maxLength={30}\n // ref={(input) => {\n // this.thirdTextInput = input;\n // }}\n />\n \n
    \n {/* {mobileNumberInvalid} */}\n
    \n
    \n \n
    \n nextField(event)}\n value={backToSchoolInfoData.Primary.Email}\n onChange={(event) => {\n this.updateBackToSchoolData(\n \"Primary\",\n \"Email\",\n event.target.value\n );\n }}\n // ref={(input) => {\n // this.fourthTextInput = input;\n // }}\n />\n \n
    \n {/* {userNameError} */}\n
    \n
    \n \n \n \n
    \n
    \n \n
    \n\n
    \n \n
    \n \n \n {this.props.t(\"Secondary_Parent\")}\n \n
    \n
    \n \n
    \n
    \n \n
    \n {\n this.updateBackToSchoolData(\n \"Secondary\",\n \"FirstName\",\n event.target.value\n );\n }}\n maxLength={50}\n onKeyPress={(event) => nextField(event)}\n />\n \n
    \n {/* {firstNameInvalid} */}\n
    \n\n
    \n \n
    \n nextField(event)}\n value={backToSchoolInfoData.Secondary.LastName}\n onChange={(event) => {\n this.updateBackToSchoolData(\n \"Secondary\",\n \"LastName\",\n event.target.value\n );\n }}\n maxLength={50}\n //ref={(input) => { this.secondTextInput = input; }}\n />\n \n
    \n {/* {lastNameInvalid} */}\n
    \n
    \n \n
    \n nextField(event)}\n value={backToSchoolInfoData.Secondary.Mobile}\n placeholder={this.props.t(\"phone-format\")}\n onChange={(event) => {\n this.updateBackToSchoolData(\n \"Secondary\",\n \"Mobile\",\n event.target.value\n );\n }}\n maxLength={30}\n // ref={(input) => {\n // this.thirdTextInput = input;\n // }}\n />\n \n
    \n {/* {mobileNumberInvalid} */}\n
    \n
    \n \n
    \n nextField(event)}\n value={backToSchoolInfoData.Secondary.Email}\n onChange={(event) => {\n this.updateBackToSchoolData(\n \"Secondary\",\n \"Email\",\n event.target.value\n );\n }}\n // ref={(input) => {\n // this.fourthTextInput = input;\n // }}\n />\n \n
    \n {/* {userNameError} */}\n
    \n
    \n \n \n\n \n
    \n
    \n \n
    \n\n
    \n \n
    \n {/* */}\n \n {this.props.t(\"pickupMode\")}\n
    \n
    \n \n
    \n
    \n \n\n {\n this.setState({\n selectedOptionPickupMode: eventKey,\n selectedSubPickupModeOption: null,\n });\n }}\n onClick={() => {\n this.setState({\n previousSelectedOptionsPickupMode: selectedOptionPickupMode,\n });\n }}\n >\n \n {this.getPickupModeById(selectedOptionPickupMode)}\n {pickupModeList.length === 0 && (\n \n )}\n \n\n \n {pickupModeList.map((data) => {\n return (\n \n \n {data.label}\n \n \n );\n })}\n \n \n
    \n
    \n {selectedOptionPickupModeText !== \"\" && (\n \n )}\n\n {selectedOptionPickupMode == 1 && (\n {\n this.setState({\n selectedBusRouteOption: eventKey,\n });\n }}\n >\n \n {selectedBusRouteOption\n ? this.getBusRouteById(selectedBusRouteOption)\n .label\n : this.props.t(\"Select_Dismissal_Label\")}\n {busRouteSubOptions.length === 0 && (\n \n )}\n \n\n \n {busRouteSubOptions.map((data) => {\n return (\n \n \n {data.label}\n \n \n );\n })}\n \n \n )}\n\n {selectedOptionPickupMode == 4 && (\n {\n this.setState({\n selectedSubPickupModeOption: eventKey,\n });\n }}\n >\n \n {selectedSubPickupModeOption\n ? this.getAfterSchoolProgramById(\n selectedSubPickupModeOption\n ).label\n : this.props.t(\"Select_Dismissal_Label\")}\n {schoolSubOptions.length === 0 && (\n \n )}\n \n\n \n {schoolSubOptions.map((data) => {\n return (\n \n \n {data.label}\n \n \n );\n })}\n \n \n )}\n
    \n
    \n {(parseInt(selectedOptionPickupMode) === -9 ||\n parseInt(selectedSubPickupModeOption) === -9 ||\n parseInt(selectedBusRouteOption) === -9) && (\n
    \n {\n this.setState({\n OtherPickupMode: event.target.value,\n });\n }}\n maxLength={50}\n />\n \n
    \n )}\n
    \n
    \n \n
    \n\n
    \n \n
    \n \n \n {this.props.t(\"Car_Pool_Address\")}\n \n
    \n
    \n \n
    \n
    \n {/* */}\n
    \n {\n isReadOnly\n ? null\n : this.updateBackToSchoolData(\n null,\n \"Carpooling\",\n backToSchoolInfoData.Carpooling ? false : true\n );\n }}\n >\n \n {this.props.t(\"Looking_Carpool\")}\n \n {backToSchoolInfoData.Carpooling ? (\n \n ) : (\n \n )}\n
    \n
    \n
    \n
    \n \n
    \n {\n this.updateBackToSchoolData(\n null,\n \"Address\",\n event.target.value\n );\n }}\n //value={feedback}\n // onChange={this.handleFeedback}\n // onKeyPress={(event) => { if (event.key === 'Enter') this.submitForm(); }}\n >\n
    \n {/* {firstNameInvalid} */}\n
    \n \n \n \n\n {isSingleKid && !isReadOnly ? (\n {\n this.openContactsModal(studentData);\n }}\n >\n
    \n
    \n \n {this.props.t(\"AddemergencyContact\")}\n \n
    \n
    \n \n ) : null}\n\n {isReadOnly ? null : (\n
    \n {\n this.saveBackToSchool();\n }}\n >\n {this.props.t(\"SUBMIT\")}\n \n
    \n )}\n \n \n \n \n );\n }\n openContactsModal = (studentData) => {\n this.props.doShowModal({\n modalScreenName: \"SelectContact\",\n modalClassName: \"contact-list-modal sidebar-modal right\",\n params: {\n ChildInfo: studentData,\n showEmergencyContactAlert: true,\n setSelectedDelegate: () => {},\n manageDelegate: true,\n },\n });\n };\n closeModal = () => {\n this.props.doHideModal();\n this.props.doSetOldHelpSetting();\n };\n askMeAlerts = () => {\n const { doSaveNextAskMeDate, doCallback } = this.props;\n return confirmAlert({\n customUI: ({ onClose }) => {\n return (\n
    \n
    \n
    \n

    {this.props.t(\"Back_to_school\")}

    \n
    \n {\n doSaveNextAskMeDate(1);\n onClose();\n this.closeModal();\n if (doCallback) doCallback();\n }}\n >\n {this.props.t(\"askMelater\")}\n \n {\n doSaveNextAskMeDate(2);\n onClose();\n this.closeModal();\n if (doCallback) doCallback();\n }}\n >\n {this.props.t(\"dontAskMe\")}\n \n \n
    \n
    \n
    \n
    \n );\n },\n });\n };\n}\n\nfunction mapStateToProps(state) {\n return {\n userLoginInfo: state.userAccount.userLoginInfo,\n approvedDelegatesResponse: state.userAccount.approvedDelegatesResponse,\n approvedDelegatesChangeResponse:\n state.userAccount.approvedDelegatesChangeResponse,\n delegatesSetDeletedResponse: state.userAccount.delegatesSetDeletedResponse,\n error: state.userAccount.error,\n isFetching: loadingSelector(state),\n setHelpListData: state.userAccount.setHelpListData,\n availableDispatch: state.student.availableDispatch,\n saveBackSchoolInfoResponse: state.student.saveBackSchoolInfo,\n fillbacktoschoolinfo: state.student.fillbacktoschoolinfo,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n\n doSaveBackToSchoolData: (data) =>\n dispatch(saveBackToSchoolInformation(data)),\n doSaveBackToSchoolDataClear: () =>\n dispatch(saveBackToSchoolInformationClear()),\n doGetAvailableDispatch: (data) => dispatch(getAvailableDispatch(data)),\n doGetAvailableDispatchClear: () => dispatch(getAvailableDispatchClear()),\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doSetOldHelpSetting: () => dispatch(setOldHelpSetting()),\n doSaveNextAskMeDate: (data) => dispatch(saveNextAskMeDate(data)),\n doBacktoschoolInfoFill: () => dispatch(backtoschoolDataInfo()),\n doGetFillbacktoschoolinfo: (data) =>\n dispatch(getfillBacktoschoolinfoData(data)),\n };\n}\n\nexport default withTranslation()(\n withRouter(connect(mapStateToProps, mapDispatchToProps)(BackToSchool))\n);\n","import React from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport { Link, withRouter } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\n\nimport {\n getAvailableDispatch,\n getAvailableDispatchClear,\n} from \"../../common/actions/students\";\nimport {\n showModal,\n hideModal,\n setHelpList,\n setOldHelpSetting,\n saveNextAskMeDate,\n} from \"../../common/actions/userAccount\";\nimport {\n getBackToSchoolInformation,\n getStudentsList,\n} from \"../../common/actions/students\";\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\n\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport { confirmAlert } from \"react-confirm-alert\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport moment from \"moment\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\n\ntoast.configure();\nconst loadingSelector = createLoadingSelector([\n \"get_back_school\",\n \"get_students\",\n]);\n\nclass BackToSchoolKidList extends React.Component {\n constructor(props) {\n super(props);\n const { delegate } = this.props;\n\n this.state = {};\n }\n componentDidMount() {\n this.dosetHelpList();\n }\n\n dosetHelpList = () => {\n this.props.dosetHelpList({\n stackType: \"ChildManagement\",\n screen: GLOBAL_CONST.SCREEN_NAMES.ADD_CONTACT,\n title: this.props.t(\"Create_Contact\"),\n });\n };\n\n openHelpModal = () => {\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: {\n stackType: this.props.setHelpListData.stackType,\n screen: this.props.setHelpListData.screen,\n title: this.props.setHelpListData.title,\n },\n });\n };\n\n openBackSchoolEnrollment = (studentData) => {\n this.props.doShowModal({\n modalScreenName: \"backToSchool\",\n modalClassName: \"backto-school-modal\",\n params: {\n studentData: studentData,\n backToSchoolInfoData: studentData.backToSchoolData,\n isSingleKid: false,\n isReadOnly:this.props.stackType === 'Setting' ?true:false,\n doCallbackRefresh: this.doRefresh,\n },\n });\n };\n\n openContactsModal = () => {\n this.props.doShowModal({\n modalScreenName: \"SelectContact\",\n modalClassName: \"contact-list-modal sidebar-modal right\",\n params: {\n manageDelegate: true,\n showEmergencyContactAlert: true,\n //setSelectedDelegate: null,\n setSelectedDelegate: () => {},\n },\n });\n };\n\n buildList = () => {\n const { studentsList } = this.props;\n const students = studentsList && studentsList.TodaysStudents;\n if (students && students) {\n console.log(\"students\", students);\n const { serverBackToSchoolData } = this.props;\n const studentRecords = [...students];\n const kidsList = [];\n for (let j = 0; j < studentRecords.length; j++) {\n if(studentRecords[j].IsDelegation ===false){\n const matchRecord = serverBackToSchoolData.find(\n (item) => studentRecords[j].StudentID === item.StudentId\n );\n if (matchRecord) studentRecords[j].backToSchoolData = matchRecord;\n\n kidsList.push(studentRecords[j]) \n }\n }\n\n console.log(\"buildList studentRecords \" + JSON.stringify(studentRecords));\n return this.renderKidsList(kidsList);\n }\n };\n\n doRefresh = () => {\n const { doGetbacktoschoolInfo, doGetStudentsList } = this.props;\n this.setState({\n isPullRefresh: true,\n });\n doGetbacktoschoolInfo({});\n doGetStudentsList({\n currenDate: moment().format(\"MM-DD-YYYY\"),\n callback: (data) => {\n //this.setState({isPullRefresh: false})\n const students = data && data.TodaysStudents;\n\n const found = students.find((item) => item.AskForBackToSchool);\n if(!found) {\n this.props.doHideModal();\n this.props.history.replace(\"/childManagement\");\n }\n },\n });\n };\n\n renderEmergencyContactView = () => {\n return (\n {\n //this.closeModal();\n this.openContactsModal();\n }}\n >\n
    \n
    \n \n {this.props.t(\"AddemergencyContact\")}\n \n
    \n
    \n \n );\n };\n\n renderKidsList = (studentRecords) => {\n return (\n
    \n {studentRecords &&\n studentRecords.map((item) => (\n {\n if (item.AskForBackToSchool ) {\n this.openBackSchoolEnrollment(item);\n } else if (this.props.stackType === 'Setting'){\n this.openBackSchoolEnrollment(item);\n }else{\n toast.error(\n item.Firstname +\n \" \" +\n item.Lastname +\n this.props.t(\"backToSchool_dataSubmitted\"),\n {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n }\n );\n }\n }}\n >\n
    \n
    \n
    \n
    \n
    \n {item.Firstname} {\"\"} {item.Lastname}\n
    \n
    \n
    \n
    \n
    \n
    \n ))}\n \n );\n };\n\n closeModal = () => {\n this.props.doHideModal();\n this.props.doSetOldHelpSetting();\n };\n\n askMeAlerts = () => {\n const { doSaveNextAskMeDate, doCallback, } = this.props;\n return confirmAlert({\n customUI: ({ onClose }) => {\n return (\n
    \n
    \n
    \n

    {this.props.t(\"Back_to_school\")}

    \n
    \n {\n doSaveNextAskMeDate(1);\n onClose();\n this.closeModal();\n if (doCallback) doCallback();\n }}\n >\n {this.props.t(\"askMelater\")}\n \n {\n doSaveNextAskMeDate(2);\n onClose();\n this.closeModal();\n if (doCallback) doCallback();\n }}\n >\n {this.props.t(\"dontAskMe\")}\n \n \n
    \n
    \n
    \n
    \n );\n },\n });\n };\n\n render() {\n const { studentsList ,stackType} = this.props;\n const students = studentsList && studentsList.TodaysStudents;\n return (\n
    \n
    \n
    \n
    \n

    {this.props.t(\"Back_to_school\")}

    \n {/* {\n this.openHelpModal();\n }}\n >\n {this.props.t(\"regNameScr-needHelp\")}\n */}\n
    \n\n {\n stackType === \"Setting\"?this.closeModal():this.askMeAlerts();\n }}\n >\n
    \n\n
    \n

    {this.props.t(\"Back_to_school_info\")}

    \n {this.buildList()}\n {stackType === 'Setting'?null:this.renderEmergencyContactView()}\n
    \n
    \n
    \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n userLoginInfo: state.userAccount.userLoginInfo,\n error: state.userAccount.error,\n //isFetching: loadingSelector(state),\n setHelpListData: state.userAccount.setHelpListData,\n\n studentsList: state.student.studentsList,\n serverBackToSchoolData: state.student.getBackSchoolInfo,\n isFetching: loadingSelector(state),\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doSetOldHelpSetting: () => dispatch(setOldHelpSetting()),\n\n doGetbacktoschoolInfo: (data) => dispatch(getBackToSchoolInformation(data)),\n doGetStudentsList: (data) => dispatch(getStudentsList(data)),\n doSaveNextAskMeDate: (data) => dispatch(saveNextAskMeDate(data)),\n };\n}\nexport default withTranslation()(\n withRouter(connect(mapStateToProps, mapDispatchToProps)(BackToSchoolKidList))\n);\n","import React, { useState, useRef } from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\n\nimport { getRelationship } from \"../../common/actions/students\";\nimport {\n showModal,\n hideModal,\n setHelpList,\n setOldHelpSetting,\n} from \"../../common/actions/userAccount\";\nimport {\n getBackToSchoolInformation,\n getStudentsList,\n} from \"../../common/actions/students\";\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\n\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport { confirmAlert } from \"react-confirm-alert\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport moment from \"moment\";\nimport { Bootstrap, Dropdown } from \"react-bootstrap\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\nimport RingLoader from \"react-spinners/ClipLoader\";\n\ntoast.configure();\nconst loadingSelector = createLoadingSelector([\"get_relationship\"]);\n\nclass SelectRelationship extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n searchText: \"\",\n records: [],\n allRecords: [],\n selectedRelationTypeData: {},\n selectedRelationshipOption: this.props.selectedRelationshipOption\n ? this.props.selectedRelationshipOption\n : \"\",\n serchedvalue: \"\",\n };\n //alert(this.props.selectedRelationshipOption)\n console.log(\"this.props relationship\", this.props);\n\n this.CustomMenu = React.forwardRef(function CustomMenu(\n { children, style, className, \"aria-labelledby\": labeledBy },\n ref\n ) {\n const [value, setValue] = React.useState(\"\");\n console.log(\"Children\", children);\n console.log(\"ref\", ref);\n\n return (\n \n
    \n setValue(e.target.value)}\n value={value}\n />\n\n \n
    \n\n
      \n {React.Children.toArray(children).filter(\n (child) =>\n !value ||\n child.props.children.props.children\n .toLowerCase()\n .startsWith(value)\n )}\n
    \n \n );\n });\n this.setValue = ({ target: { value: serchedvalue } }) => {\n this.setState({ serchedvalue });\n };\n }\n\n componentDidMount() {\n const { doGetRelationship } = this.props;\n doGetRelationship();\n }\n componentWillUnmount() {\n this.setState = {\n searchText: \"\",\n records: [],\n allRecords: [],\n serchedvalue: \"\",\n showDropDown: false,\n };\n }\n componentDidUpdate(prevProps, prevState, snapshot) {\n const { relationshipList } = this.props;\n const { allRecords } = this.state;\n if (\n allRecords.length === 0 &&\n relationshipList !== null &&\n relationshipList !== undefined &&\n relationshipList.length > 0\n ) {\n this.setState({\n allRecords: relationshipList,\n records: relationshipList,\n });\n }\n }\n\n searchAction = (text) => {\n const { allRecords } = this.state;\n const newData = allRecords.filter(function (item) {\n const itemData = item.Name ? item.Name.toUpperCase() : \"\".toUpperCase();\n const textData = text.toUpperCase();\n return itemData.indexOf(textData) > -1;\n });\n this.setState({ records: newData, searchText: text });\n };\n addNewRelationship = () => {\n const { searchText, records } = this.state;\n const { StudentID, doCallback } = this.props;\n const selectedRelationData = {};\n selectedRelationData[\"Id\"] = StudentID;\n selectedRelationData[\"StudentId\"] = StudentID;\n selectedRelationData[\"Relationship\"] = searchText;\n selectedRelationData[\"RelationshipTypeId\"] = null;\n selectedRelationData[\"RelationshipTypeOther\"] = searchText;\n selectedRelationData[\"Name\"] = searchText;\n this.setState({\n selectedRelationshipOption: searchText,\n selectedRelationTypeData: selectedRelationData,\n });\n this.setState({ showDropDown: false });\n if (doCallback) doCallback(selectedRelationData);\n };\n setSelectedRelationData = (item) => {\n const { StudentID, doCallback } = this.props;\n const selectedRelationData = {};\n selectedRelationData[\"Id\"] = StudentID;\n selectedRelationData[\"StudentId\"] = StudentID;\n selectedRelationData[\"RelationshipTypeId\"] = item.Id;\n selectedRelationData[\"RelationshipTypeOther\"] = null;\n selectedRelationData[\"Relationship\"] = item.Name;\n selectedRelationData[\"Name\"] = item.Name;\n //selectedRelationData[\"IsEmergency\"] = false;\n\t\n this.setState({\n selectedRelationshipOption: item.Id,\n selectedRelationTypeData: selectedRelationData,\n });\n this.setState({ showDropDown: false });\n if (doCallback) doCallback(selectedRelationData);\n };\n toggleDropdown = () => {\n const { showDropDown, selectedRelationTypeData } = this.state;\n this.setState({ showDropDown: !showDropDown });\n };\n getRelationNamebyId = (value) => {\n const { searchText, records, selectedRelationTypeData } = this.state;\n const { StudentID, doCallback, isFetching } = this.props;\n const selectedRelationData = {};\n\n for (let i = 0; i < records.length; i++) {\n if (parseInt(value) === parseInt(records[i].Id) || value == records[i].Name) {\n return records[i];\n }\n }\n return {\n Name: value,\n };\n };\n\n render() {\n const { StudentID, doCallback, isFetching, studentName,stackType } = this.props;\n const {\n searchText,\n records,\n selectedRelationTypeData,\n selectedRelationshipOption,\n showDropDown,\n } = this.state;\n // console.log(\"records====>\", records);\n console.log(\"selectedRelationshipOption\", selectedRelationshipOption);\n let strDisplay = \"\";\n console.log(\"studentName\", studentName);\n console.log(\"selectedRelationshipOption\", selectedRelationshipOption);\n\n if (selectedRelationshipOption)\n strDisplay =\n studentName +\n \"'s \" +\n this.getRelationNamebyId(selectedRelationshipOption).Name;\n else if (stackType=== \"ChildManagement\"){\n strDisplay = this.props.t(\"Select_Dismissal_Label\")\n }else\n strDisplay = studentName \n\n return (\n
    \n \n {\n this.toggleDropdown();\n }}\n >\n {strDisplay}\n {records.length === 0 && isFetching && (\n \n )}\n \n \n
    \n {\n this.searchAction(event.target.value);\n }}\n value={searchText}\n maxLength={30}\n />\n\n {records.length == 0 ? (\n this.addNewRelationship()}\n >\n {\" \"}\n \n \n {this.props.t(\"Add\")}\n \n \n ) : (\n \n )}\n
    \n
      \n {records.map((data) => {\n return (\n {\n this.setSelectedRelationData(data);\n }}\n >\n {data.Name}\n \n );\n })}\n
    \n
    \n \n \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n userLoginInfo: state.userAccount.userLoginInfo,\n error: state.userAccount.error,\n relationshipList: state.student.relationshipList,\n isFetching: loadingSelector(state),\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doGetRelationship: () => dispatch(getRelationship()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(SelectRelationship)\n);\n","import React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { CheckinQuestions } from \"../components/Checkin\";\nimport { Notifications } from \"../components/Settings\";\n\nimport { DismissalTimes } from \"../components/Dashboard\";\nimport {\n FutureDelegation,\n ChangeDefaultPickup,\n CreateMarkAbsent,\n SelectWhen,\n SelectContact,\n AddContact,\n CancelPickup,\n} from \"../components/ChildManagement\";\nimport { ViewProfile } from \"../components/Settings\";\nimport { ChangePassword } from \"../components/Settings\";\nimport { Setting } from \"../components/Settings\";\nimport { Contacts } from \"../components/Settings\";\nimport { CreateContact } from \"../components/Settings\";\nimport { ContactSupport } from \"../components/Settings\";\n//import {store} from '../common/store/index';\nimport { Provider } from \"react-redux\";\nimport { store } from \"../common/store/configureStore\";\n\n// export const openPopupWindow = (screen, params) => {\n// // console.log(\"fromScreen\", screen);\n// var ModalRootElement = document.getElementById(\"modal\");\n// ReactDOM.unmountComponentAtNode(ModalRootElement)\n// if (screen === \"checkin\") {\n\n// ReactDOM.render(, ModalRootElement);\n\n// } else if (screen === \"createModifyPickupView\") {\n// ReactDOM.render(, ModalRootElement);\n// }else if (screen === \"notification\") {\n// ReactDOM.render(, ModalRootElement);\n// }else if(screen === \"schoolDetails\"){\n// ReactDOM.render( ,ModalRootElement);\n// }else if(screen === \"futureDelegationView\"){\n// ReactDOM.render( ,ModalRootElement);\n// }else if(screen === \"viewProfile\"){\n// ReactDOM.render( ,ModalRootElement);\n// }else if(screen === \"changePassword\"){\n// ReactDOM.render( ,ModalRootElement);\n// }else if(screen === \"settingsView\"){\n// ReactDOM.render( ,ModalRootElement);\n// }else if(screen === \"contactList\"){\n// ReactDOM.render( ,ModalRootElement);\n// }else if(screen === \"addContact\"){\n// ReactDOM.render( ,ModalRootElement);\n// }else if(screen === \"contactSupport\"){\n// ReactDOM.render( ,ModalRootElement);\n// }else if(screen === \"changeDefualtPickupView\"){\n// ReactDOM.render( ,ModalRootElement);\n// }else if(screen === \"cancelThisPickup\"){\n// ReactDOM.render( ,ModalRootElement);\n// }else if(screen === \"markAbsentView\"){\n// ReactDOM.render( ,ModalRootElement);\n// }\n\n// };\n\nexport const getDismissedInfo = (item) => {\n let dismissalText = \"\";\n let dismissalTextSubText = \"\";\n\n if (item.PM_Name === \"After School\") {\n dismissalText = item.PM_Name;\n dismissalTextSubText = item.PM_SubName;\n } else if (item.Guardian_First !== \"\" && item.Guardian_First !== null) {\n dismissalText = `${item.Guardian_First} ${\"Picked up\"} - ${item.PM_Name}`;\n dismissalTextSubText = item.PM_SubName;\n } else {\n if (item.PM_Name === \"Bus\") {\n dismissalText = `${\"Pickup is by\"} - ${item.PM_Name}`;\n } else {\n dismissalText = `${\"Pickup was by\"} - ${item.PM_Name}`;\n }\n dismissalTextSubText = item.PM_SubName;\n }\n return {\n dismissalText,\n dismissalTextSubText:\n dismissalTextSubText === null ? \"\" : `-${dismissalTextSubText}`,\n };\n};\n","import React from \"react\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { dom } from \"@fortawesome/fontawesome-svg-core\";\nimport { faSmileBeam } from \"@fortawesome/free-regular-svg-icons\";\nimport { faTh } from \"@fortawesome/free-solid-svg-icons\";\nimport { faBell } from \"@fortawesome/free-regular-svg-icons\";\nimport logo from \"../assets/registerImages/pmk-logo.svg\";\nimport \"../../../node_modules/bootstrap/dist/css/bootstrap.min.css\";\nimport \"@fortawesome/fontawesome-free/css/all.css\";\nimport \"react-confirm-alert/src/react-confirm-alert.css\";\nimport \"../Styles/app-responsive.css\";\nimport { openPopupWindow } from \"./../../helper/uiUtility\";\nimport { confirmAlert } from \"react-confirm-alert\";\nimport { withRouter } from \"react-router-dom\";\nimport {\n logoutUser,\n getNotificationsList,\n} from \"../../common/actions/userAccount\";\nimport { Link } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { SelectContact } from \"../ChildManagement\";\nimport {\n showModal,\n hideModal,\n setHelpList,\n} from \"../../common/actions/userAccount\";\nimport { withTranslation } from \"react-i18next\";\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\nimport { getBackToSchoolInformation } from \"../../common/actions/students\";\ndom.watch();\nclass MainHeader extends React.Component {\n openNotification = () => {\n this.props.doShowModal({\n modalScreenName: \"NotificationsList\",\n modalClassName: \"notificationList sidebar-modal right\",\n });\n };\n openViewProfileModal = () => {\n this.props.doShowModal({\n modalScreenName: \"ViewProfile\",\n modalClassName: \"viewProfileModal sidebar-modal right\",\n });\n };\n openChangePasswordModal = () => {\n this.props.doShowModal({\n modalScreenName: \"ChangePassword\",\n modalClassName: \"changePasswordModal sidebar-modal right\",\n });\n };\n openSettingsModal = () => {\n this.props.doShowModal({\n modalScreenName: \"Settings\",\n modalClassName: \"settings-modal sidebar-modal right\",\n });\n };\n openContactsModal = () => {\n this.props.doShowModal({\n modalScreenName: \"SelectContact\",\n modalClassName: \"contact-list-modal sidebar-modal right\",\n params: {\n manageDelegate: true,\n setSelectedDelegate: null,\n },\n });\n };\n openContactSupportModal = () => {\n this.props.doShowModal({\n modalScreenName: \"ContactSupport\",\n modalClassName: \"contactSupportModal sidebar-modal right\",\n });\n };\n\n openHelpModal = () => {\n //alert(JSON.stringify(this.props.location))\n let helpParam;\n if (this.props.location.pathname === \"/checkin\") {\n helpParam = {\n stackType: \"CheckIn\",\n screen: GLOBAL_CONST.SCREEN_NAMES.CHECKIN_FOR,\n title: this.props.t(\"selectCheckScr-schoolCheck\"),\n };\n } else if (this.props.location.pathname === \"/childManagement\") {\n helpParam = {\n stackType: \"ChildManagement\",\n screen: GLOBAL_CONST.SCREEN_NAMES.MANAGE_CHILDREN_TAB,\n title: this.props.t(\"manageChildrenScr-manageChildren\"),\n };\n } else if (this.props.location.pathname === \"/dashboard\") {\n helpParam = {\n stackType: \"Dashboard\",\n screen: GLOBAL_CONST.SCREEN_NAMES.PICKUP,\n title: this.props.t(\"pickup_title\"),\n };\n }\n this.props.doShowModal({\n modalScreenName: \"HelpListing\",\n modalClassName: \"helpSupportModal sidebar-modal right\",\n params: helpParam,\n });\n };\n\n submit = () => {\n confirmAlert({\n title: this.props.t(\"settingMainScr-signOut\"),\n message: this.props.t(\"settingMainScr-areYouSure\"),\n buttons: [\n {\n label: this.props.t(\"settingMainScr-ok\"),\n onClick: this.logout,\n },\n {\n label: this.props.t(\"Cancel\"),\n className: \"cancel-btn\",\n },\n ],\n });\n };\n\n logout = () => {\n const { doLogoutUser } = this.props;\n doLogoutUser();\n this.props.history.push(\"/\");\n };\n\n openBackToSchoolKidsModal = () => {\n this.props.doShowModal({\n modalScreenName: \"backToSchoolKidList\",\n modalClassName: \"backto-school-modal\",\n params: {\n isReadOnly:true,\n stackType: \"Setting\",\n }\n });\n };\n\n componentDidMount() {\n const{doGetbacktoschoolInfo} = this.props\n doGetbacktoschoolInfo({})\n }\n\n render() {\n const { userLoginInfo,backToSchoolFilled, studentsList,getBackSchoolInfoData} = this.props;\n const students = studentsList && studentsList.TodaysStudents;\n const webPage = this.props.location.pathname;\n let userInitials = \"\";\n if (userLoginInfo)\n userInitials =\n userLoginInfo.firstName.charAt(0) + userLoginInfo.lastName.charAt(0);\n\n return (\n
    \n
    \n
    \n
    \n
    \n \n \"PikMyKid\"\n \n
    \n
    \n
    \n
      \n
    • \n {\n this.openNotification();\n }}\n >\n \n \n \n
    • \n
    • \n {\n this.openHelpModal();\n }}\n >\n \n \n \n
    • \n
    • \n \n {userInitials}\n \n \n \n
      \n {\n this.openViewProfileModal();\n }}\n >\n \n \n {this.props.t(\"view_profile\")}\n \n \n \n \n \n {this.props.t(\"settingMainScr-changePwd\")}\n \n \n \n \n \n {this.props.t(\"settingsScr-settings\")}\n \n \n \n \n {this.props.t(\"Contact\")}\n \n {backToSchoolFilled?\n {\n if (students.length > 1) { \n this.openBackToSchoolKidsModal();\n } else if (students.length === 1) { \n this.props.doShowModal({\n modalScreenName: \"backToSchool\",\n modalClassName: \"backto-school-modal\",\n params: {\n studentData: students[0],\n backToSchoolInfoData: getBackSchoolInfoData[0],\n isSingleKid: true,\n isReadOnly:true,\n stackType: \"Setting\",\n },\n });\n \n \n\n }\n }\n }\n >\n \n \n {this.props.t(\"Back_to_school\")}\n \n :null}\n \n \n \n {this.props.t(\"helpScr-contact\")}\n \n \n \n \n \n {this.props.t(\"helpScr-FAQ\")}\n \n \n \n \n \n {this.props.t(\"settingMainScr-terms\")}\n \n \n \n \n \n {this.props.t(\"settingMainScr-signOut\")}\n \n \n
      \n
    • \n
    \n
      \n \n \n \n {this.props.t(\"Children_Tab\")}\n \n \n \n \n \n \n \n {this.props.t(\"schoolCardScr-checkIn\")}\n \n \n \n \n \n \n \n {this.props.t(\"pickup_title\")}\n \n \n \n
    \n
    \n
    \n
    \n
    \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n userLoginInfo: state.userAccount.userLoginInfo,\n error: state.userAccount.error,\n backToSchoolFilled: state.userAccount.backToSchoolFilled,\n studentsList: state.student.studentsList,\n getBackSchoolInfoData: state.student.getBackSchoolInfo,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doLogoutUser: () => dispatch(logoutUser()),\n\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n doGetbacktoschoolInfo: (data) => dispatch(getBackToSchoolInformation(data)),\n };\n}\n\nexport default withTranslation()(\n withRouter(connect(mapStateToProps, mapDispatchToProps)(MainHeader))\n);\n","import React from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { withTranslation } from \"react-i18next\";\nimport moment from \"moment\";\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\nclass MainFooter extends React.Component {\n render() {\n const copyRightfromYear = \"2015\"\n return (\n
    \n
    \n
    \n
    \n
    \n

    \n {this.props.t(\"regNameScr-needHelp\")}{\" \"}\n {this.props.t(\"footer-message-us-at\")}{\" \"}\n \n support@pikmykid.com\n \n\n {\" \"}{this.props.t(\"footer-view-our\")}{\" \"}\n \n Terms of Service\n \n

    \n \n

    {this.props.t(\"footer-copyright\")}{\" \"}{copyRightfromYear} - {moment().format(\"YYYY\")}

    \n

    5115 Memorial Highway, Tampa Florida 33634.

    \n

    {'Ver. ' + GLOBAL_CONST.VERSION}

    \n
    \n
    \n
    \n
    \n \n
    \n );\n }\n}\n\nexport default withTranslation()(withRouter(MainFooter));\n","\nimport React from \"react\";\nimport { connect } from \"react-redux\";\nimport { withTranslation } from \"react-i18next\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { dom } from \"@fortawesome/fontawesome-svg-core\";\nimport { faWindowClose } from \"@fortawesome/free-solid-svg-icons\";\nimport QrReader from 'react-qr-reader'\n\nimport {\n studentWithConnect,\n studentWithConnectClear,\n showModal, hideModal, setHelpList, setOldHelpSetting\n} from \"../../common/actions/userAccount\";\nimport { Slide, toast } from \"react-toastify\";\n\nclass ScanBarCode extends React.Component {\n constructor(props) {\n super(props);\n\n this.state = {\n scanDone: false,\n scanResult: null,\n localError: ''\n };\n this.handleScan = this.handleScan.bind(this)\n }\n\n handleScan(data) {\n this.setState({\n result: data,\n })\n console.log(\" handleScan \", data);\n //alert(JSON.stringify(data))\n this.onBarCodeRead(data)\n }\n handleError(err) {\n console.error(err)\n }\n\n onBarCodeRead(scanResult) {\n const { scanDone } = this.state;\n const { navigation } = this.props;\n if (scanDone) return;\n\n console.log(\" scanResult \", scanResult);\n\n if (scanResult !== null) {\n if (scanResult.includes(\"com.pikmykid.parentapp\") || scanResult.includes(\"id1559538995\")) {\n this.setState({ localError: this.props.t(\"ScanSrc-AppStoreScan\"), scanDone: true })\n } else if (scanResult.includes(\"http\") || scanResult.includes(\"www\")) {\n this.setState({ localError: this.props.t(\"ScanSrc-WebPageScan\"), scanDone: true })\n } else if (this.isNumber(scanResult)) {\n this.setState({ localError: this.props.t(\"ScanSrc-CarTagScan\"), scanDone: true })\n } else {\n console.log(\"ScanResult\", JSON.stringify(scanResult));\n this.setState(\n {\n scanDone: true,\n scanResult,\n },\n this.processScan\n );\n }\n }\n }\n isNumber(num) {\n return /^-?[\\d.]+(?:e-?\\d+)?$/.test(num);\n }\n processScan = () => {\n const { scanResult } = this.state;\n this.props.doStudentWithConnect({\n Code: scanResult,\n });\n };\n\n componentDidUpdate() {\n const {\n error,\n studentConnectResponse,\n navigation,\n doStudentWithConnectClear,\n doCallbackRefresh\n } = this.props;\n\n const { localError } = this.state;\n if (error || localError !== '') {\n console.log(\"SCAN BAR CODE ERROR \" + JSON.stringify(error));\n toast.error(localError !== '' ? localError : error.Message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n this.props.doHideModal();\n if (doCallbackRefresh) doCallbackRefresh();\n doStudentWithConnectClear();\n }\n if (studentConnectResponse !== null) {\n toast.success(studentConnectResponse.Message, {\n autoClose: 2000,\n transition: Slide,\n hideProgressBar: true,\n });\n doStudentWithConnectClear();\n this.props.doHideModal();\n if (doCallbackRefresh) doCallbackRefresh();\n }\n }\n\n render() {\n \n console.log(\"Check props\",this.props)\n const previewStyle = {\n flex: 1,\n // top: 75,\n justifyContent: 'flex-end',\n alignItems: 'center',\n height: '100vh'\n }\n return (\n
    \n
    \n
    \n
    \n

    {this.props.t(\"add_child_message\")}

    \n {\n this.closeModal();\n }}\n >\n
    \n\n
    \n\n \n \n

    {this.state.result}

    \n
    \n
    \n
    \n
    \n\n );\n }\n\n closeModal = () => {\n this.props.doHideModal();\n };\n\n}\nfunction mapStateToProps(state) {\n return {\n error: state.userAccount.error,\n studentConnectResponse: state.userAccount.studentConnectResponse,\n setHelpListData: state.userAccount.setHelpListData,\n };\n}\n\nfunction mapDispatchToProps(dispatch) {\n return {\n doStudentWithConnect: (data) => dispatch(studentWithConnect(data)),\n doStudentWithConnectClear: () => dispatch(studentWithConnectClear()),\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n dosetHelpList: (data) => dispatch(setHelpList(data)),\n };\n}\n\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(ScanBarCode)\n);\n","import React from \"react\";\nimport { connect } from \"react-redux\";\nimport { withTranslation } from \"react-i18next\";\nimport {\n showModal,\n hideModal,\n} from \"../../common/actions/userAccount\";\nimport { getHelpDetailsClear } from \"../../common/actions/school\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\nimport RingLoader from \"react-spinners/ClipLoader\";\n\nconst loadingSelector = createLoadingSelector([\"get_help\"]);\n\nclass HelpDetails extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n render() {\n const { isFetching, title, record } = this.props;\n\n\n return (\n
    \n
    \n
    \n

    \n {title}\n

    \n\n\n \n
    \n\n
    \n
    \n
    \n
    \n
    {record.Title}
    \n
    \n
    \n

    \n {record.HelpText}\n

    \n
    \n
    \n
    \n\n
    \n
    \n
    \n );\n }\n\n closeModal = () => {\n this.props.doHideModal();\n };\n\n backToHelptList = () => {\n this.props.doHideModal();\n \n };\n\n\n\n}\n\nfunction mapStateToProps(state) {\n return {\n\n isFetching: loadingSelector(state),\n\n setHelpListData: state.userAccount.setHelpListData,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(HelpDetails)\n);\n","import React from \"react\";\nimport { connect } from \"react-redux\";\nimport { withTranslation } from \"react-i18next\";\nimport i18next from \"i18next\";\nimport LanguageDetector from \"i18next-browser-languagedetector\";\nimport { BootstrapModal } from \"../CommonComponents\";\nimport {\n showModal,\n hideModal,\n setOldHelpSetting\n} from \"../../common/actions/userAccount\";\nimport { getHelpDetails, getHelpDetailsClear } from \"../../common/actions/school\";\nimport { createLoadingSelector } from \"../../common/reducers/selectors\";\nimport RingLoader from \"react-spinners/ClipLoader\";\nimport { getLanguageCode } from \"../../helper/utility\";\n\nconst loadingSelector = createLoadingSelector([\"get_help\"]);\nclass HelpListing extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n\n\n }\n\n getHelp = () => {\n const { doGetHelpDetails, schoolInfo, stackType, screen } = this.props;\n let schoolId;\n schoolId = 14;\n const param = { schoolId: 14, pageName: screen, stackType };\n // console.log(\"getHelp \", param)\n doGetHelpDetails(param);\n };\n componentDidMount() {\n this.getHelp();\n }\n componentWillUnmount() {\n this.props.doGetHelpDetailsClear();\n }\n\n openHelpDetails = (item) => {\n const { stackType, title , screen , modalLevel} = this.props;\n const goto = stackType + \"HelpDetails\";\n this.openNewModal({\n goto: goto,\n screen : screen,\n stackType: stackType,\n title: title,\n record: item,\n });\n };\n\n openNewModal = (params) => {\n this.props.doShowModal({\n modalScreenName: \"HelpDetails\",\n modalClassName: \"help-details-modal sidebar-modal right\",\n params: {\n stackType: params.stackType,\n screen: params.screen,\n goto: params.goto,\n title: params.title,\n record: params.record,\n\n },\n\n });\n };\n\n listItem = (item, index) => {\n return (\n {\n this.openHelpDetails(item);\n\n }}>\n\n
    \n \n {item.Title}\n \n
    \n\n );\n };\n closeModal = () => {\n this.props.doHideModal();\n this.props.doSetOldHelpSetting()\n };\n\n render() {\n const { helpRecord, isFetching, title } = this.props;\n // console.log(\"helpRecord\",helpRecord)\n let help_En,\n help_Es = [];\n if (helpRecord && helpRecord != null) {\n help_En = helpRecord.Help_EN;\n help_Es = helpRecord.Help_ES;\n }\n let userLanguageRecord = getLanguageCode() === \"en\" ? help_En : help_Es;\n // console.log(\"userLanguageRecord\", userLanguageRecord)\n\n return (\n
    \n
    \n
    \n

    \n {title}\n

    \n\n\n \n
    \n\n
    \n {helpRecord == null && isFetching ? (\n
    \n \n
    \n ) : null}\n\n
      \n { userLanguageRecord &&\n userLanguageRecord.map((item, index) => (\n this.listItem(item, index)\n \n ))}\n
    \n
    \n
    \n
    \n\n );\n }\n}\n\n\nfunction mapStateToProps(state) {\n return {\n isFetching: loadingSelector(state),\n helpRecord: state.school.helpRecord,\n error: state.school.error,\n schoolInfo: state.student.schoolInfo,\n setHelpListData: state.userAccount.setHelpListData,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n doSetOldHelpSetting: () => dispatch(setOldHelpSetting()),\n doGetHelpDetails: (data) => dispatch(getHelpDetails(data)),\n doGetHelpDetailsClear: () => dispatch(getHelpDetailsClear()),\n };\n}\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(HelpListing)\n);\n\n","import React from \"react\";\nimport Modal from \"react-modal\";\nimport { setIsOpen } from \"react-modal\";\nimport { CheckinQuestions } from \"../Checkin\";\nimport { DismissalTimes, ChildCardAnnounce } from \"../Dashboard\";\nimport { ScanBarCode } from \"../Scanner\";\nimport {\n SelectContact,\n AddContact,\n FutureDelegation,\n CreateMarkAbsent,\n SelectWhen,\n ChangeDefaultPickup,\n CancelPickup,\n CreateEarlyDismissal,\n BackToSchool,\n BackToSchoolKidList,\n} from \"../ChildManagement\";\n//import { CreateEarlyDismissal } from \"../ChildManagement/EarlyDismissal\";\nimport { connect } from \"react-redux\";\n\nimport { showModal, hideModal } from \"../../common/actions/userAccount\";\nimport {\n Setting,\n NotificationsList,\n ChangePassword,\n ContactSupport,\n ViewProfile,\n} from \"../Settings\";\nimport { HelpListing, HelpDetails } from \"../Help\";\n\nModal.setAppElement(\"#root\");\n\nclass BootstrapModal extends React.Component {\n constructor(props) {\n super(props);\n this.state = {};\n }\n\n openModal() {\n setIsOpen(true);\n }\n\n getModalChildren = (modelInfo) => {\n switch (modelInfo.modalScreenName) {\n case \"NotificationsList\":\n return ;\n case \"ViewProfile\":\n return ;\n case \"ChangePassword\":\n return ;\n case \"Settings\":\n return ;\n case \"SelectContact\":\n return ;\n case \"AddContact\":\n return ;\n case \"EditContact\":\n return ;\n case \"ContactSupport\":\n return ;\n case \"HelpListing\":\n return ;\n case \"HelpDetails\":\n return ;\n case \"schoolDetails\":\n return ;\n case \"CheckInQuestions\":\n return ;\n case \"cancelThisPickup\":\n return ;\n case \"futureDelegation\":\n return ;\n case \"createModifyPickup\":\n return ;\n case \"CreateMarkAbsent\":\n return ;\n case \"earlyDismissal\":\n return (\n \n );\n case \"changeDefualtPickup\":\n return (\n \n );\n case \"childCardAnnounceFor\":\n return ;\n case \"scanBarCode\":\n return ;\n case \"backToSchoolKidList\":\n return ;\n case \"backToSchool\":\n return ;\n\n default:\n
    ;\n }\n };\n render() {\n const { modalLevelInfo, myLevel } = this.props;\n let showModal = false;\n let modelInfo;\n if (modalLevelInfo && modalLevelInfo[myLevel]) {\n showModal = true;\n modelInfo = modalLevelInfo[myLevel];\n }\n // console.log(\"modelInfo \", modelInfo, \" myLevel \", myLevel)\n\n return (\n \n {modelInfo && this.getModalChildren(modelInfo)}\n \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n modalLevelInfo: state.userAccount.modalLevelInfo,\n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n doShowModal: (data) => dispatch(showModal(data)),\n doHideModal: () => dispatch(hideModal()),\n };\n}\nexport default connect(mapStateToProps, mapDispatchToProps)(BootstrapModal);\n","import React, { Component } from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport { connect } from \"react-redux\";\nimport { isLoggedIn } from \"../../helper/utility\";\nimport { hideAds} from \"../../common/actions/userAccount\";\nimport \"./AdsViewStyle.css\";\nimport {\n getParentAdvertList,\n} from \"../../common/actions/ads\";\nclass AdsView extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n currentAdIndex: 0,\n displayAds: true,\n };\n }\n\n componentDidMount() {\n if(isLoggedIn()) {\n this.props.doHideAds({\n displayAds: false,\n });\n setTimeout(this.getAds, 5000);}\n }\n\n componentWillUnmount() {\n\n if (this.adsLoop) {\n clearInterval(this.adsLoop);\n this.adsLoop = null;\n }\n }\n\n getAds = () => {\n const { doGetParentAdvertList, schoolInfo } = this.props;\n const SchoolIDs = [];\n schoolInfo &&\n schoolInfo.forEach((element) => {\n SchoolIDs.push(element.SchoolID);\n });\n doGetParentAdvertList({ SchoolIDs });\n };\n\n showAds = () => {\n //console.log(\"showAds called\")\n let { currentAdIndex } = this.state;\n const { adsList } = this.props;\n if (adsList && adsList.Ads.length > 0) {\n if (currentAdIndex < adsList.Ads.length - 1) {\n currentAdIndex++;\n } else {\n currentAdIndex = 0;\n }\n this.setState({ currentAdIndex });\n }\n };\n\n componentDidUpdate() {\n const { adsList } = this.props;\n //console.log(\"this.adsLoop \", this.adsLoop )\n if (!this.adsLoop && adsList && adsList.Ads.length > 0) {\n this.adsLoop = setInterval(this.showAds, adsList.AdIntervalMS);\n this.props.showAds(true);\n this.props.doHideAds({\n displayAds: true,\n });\n }\n }\n\n\n render() {\n const { adsList } = this.props;\n let { currentAdIndex, displayAds } = this.state;\n\n return displayAds && adsList && adsList.Ads.length > 0 ? (\n
    \n
    \n \n \n
    \n\n
    \n ) : (<>);\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n schoolInfo: state.student.schoolInfo,\n adsList: state.ads.adsList,\n displayAds : state.userAccount.displayAds,\n };\n}\n\nfunction mapDispatchToProps(dispatch) {\n return {\n doGetParentAdvertList: (data) => dispatch(getParentAdvertList(data)),\n doHideAds: (data) => dispatch(hideAds(data)),\n };\n}\n\nexport default withTranslation()(\n connect(mapStateToProps, mapDispatchToProps)(AdsView)\n);\n","import {\n GET_ADVERT_LIST_START,\n GET_ADVERT_LIST_SUCCESS,\n GET_ADVERT_LIST_FAILED,\n GET_ADVERT_LIST_CLEAR,\n GET_ADVERT_SERVE_START,\n GET_ADVERT_SERVE_SUCCESS,\n GET_ADVERT_SERVE_FAILED,\n GET_ADVERT_SERVE_CLEAR,\n GET_ADVERT_CLICK_START,\n GET_ADVERT_CLICK_SUCCESS,\n GET_ADVERT_CLICK_FAILED,\n GET_ADVERT_CLICK_CLEAR,\n GET_ADVERT_PHOTO_START,\n GET_ADVERT_PHOTO_SUCCESS,\n GET_ADVERT_PHOTO_FAILED,\n GET_ADVERT_PHOTO_CLEAR,\n\n} from './adsActionType';\n\nimport {\n parentAdvertList, logAdvertServe, logParentAdvertClick, parentAdvertPhoto,\n} from '../../services'\nimport { validateError } from '../../../helper/utility';\n\nexport const getParentAdvertList = ({ SchoolIDs }) => (dispatch) => {\n dispatch({ type: GET_ADVERT_LIST_START });\n // console.log(`Get parent advert list param ${SchoolIDs}`);\n return parentAdvertList({ SchoolIDs })\n .then((response) => {\n // console.log(`Get parent advert list response${JSON.stringify(response)}`);\n if (response.Success) dispatch({ type: GET_ADVERT_LIST_SUCCESS, payload: response.Data });\n else { dispatch({ type: GET_ADVERT_LIST_FAILED, payload: response }); }\n }).catch((error) => {\n // console.log(`Get parent advert list error ${JSON.stringify(error)}`);\n dispatch({ type: GET_ADVERT_LIST_FAILED, payload: validateError(error) });\n });\n};\n\nexport const getParentAdvertListClear = () => (dispatch) => {\n dispatch({ type: GET_ADVERT_LIST_CLEAR });\n};\n\nexport const getLogAdvertServe = ({ params }) => (dispatch) => {\n dispatch({ type: GET_ADVERT_SERVE_START });\n return logAdvertServe({ params })\n .then((response) => {\n console.log(`Get log advert serve response${JSON.stringify(response)}`);\n if (response.Success) dispatch({ type: GET_ADVERT_SERVE_SUCCESS, payload: response.Data });\n else { dispatch({ type: GET_ADVERT_SERVE_FAILED, payload: response }); }\n }).catch((error) => {\n console.log(`Get log advert serve error ${JSON.stringify(error)}`);\n dispatch({ type: GET_ADVERT_SERVE_FAILED, payload: validateError(error) });\n });\n};\n\nexport const getLogAdvertServeClear = () => (dispatch) => {\n dispatch({ type: GET_ADVERT_SERVE_CLEAR });\n};\n\nexport const getLogAdvertClick = ({ params }) => (dispatch) => {\n dispatch({ type: GET_ADVERT_CLICK_START });\n return logParentAdvertClick({ params })\n .then((response) => {\n console.log(`Get log advert click response${JSON.stringify(response)}`);\n if (response.Success) dispatch({ type: GET_ADVERT_CLICK_SUCCESS, payload: response.Data });\n else { dispatch({ type: GET_ADVERT_CLICK_FAILED, payload: response }); }\n }).catch((error) => {\n console.log(`Get log advert click error ${JSON.stringify(error)}`);\n dispatch({ type: GET_ADVERT_CLICK_FAILED, payload: validateError(error) });\n });\n};\n\nexport const getLogAdvertClickClear = () => (dispatch) => {\n dispatch({ type: GET_ADVERT_CLICK_CLEAR });\n};\n\nexport const getAdvertPhoto = ({ params }) => (dispatch) => {\n dispatch({ type: GET_ADVERT_PHOTO_START });\n return parentAdvertPhoto({ params })\n .then((response) => {\n console.log(`Get advert photo response${JSON.stringify(response)}`);\n if (response.Success) dispatch({ type: GET_ADVERT_PHOTO_SUCCESS, payload: response.Data });\n else { dispatch({ type: GET_ADVERT_PHOTO_FAILED, payload: response }); }\n }).catch((error) => {\n console.log(`Get advert photo error ${JSON.stringify(error)}`);\n dispatch({ type: GET_ADVERT_PHOTO_FAILED, payload: validateError(error) });\n });\n};\n\nexport const getAdvertPhotoClear = () => (dispatch) => {\n dispatch({ type: GET_ADVERT_PHOTO_CLEAR });\n};\n","import React from \"react\";\nimport { connect } from \"react-redux\";\nimport AdsView from \"../Ads/AdsView\";\n\nclass LoadAds extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n adsVisible: false,\n };\n }\n\n render() {\n const { adsVisible } = this.state\n return (\n {\n this.setState({ adsVisible });\n }}\n />\n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {\n \n };\n}\nfunction mapDispatchToProps(dispatch) {\n return {\n \n };\n}\nexport default connect(mapStateToProps, mapDispatchToProps)(LoadAds);\n","import React from \"react\";\nimport { Route, Redirect } from \"react-router-dom\";\nimport { isLoggedIn } from \"../../helper/utility\";\n\nconst PrivateRoute = ({ component: Component, ...rest }) => {\n return (\n \n isLoggedIn() ? : \n }\n />\n );\n};\n\nexport default PrivateRoute;\n","import React from \"react\";\nimport { connect } from \"react-redux\";\nimport { withRouter } from \"react-router-dom\";\nimport { withTranslation } from \"react-i18next\";\nimport moment from \"moment\";\nimport GLOBAL_CONST from \"../../helper/AppConstants\";\nimport { logoutUser } from \"../../common/actions/userAccount\";\nimport { saveTermsAccepted } from \"../../common/actions/userAccount/userAccountAction\";\nclass TermsConditions extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n termsAccepted: false,\n };\n }\n\n render() {\n const { termsAccepted } = this.state;\n return (\n
    \n
    \n
    \n
    \n
    \n
    \n

    \n {this.props.t(\"regPwdScr-termsCondition\")}\n

    \n {/*

    \n Manage your children or view details of children you pickup\n

    */}\n
    \n\n
    \n
    \n
    \n

    Your Privacy

    \n
    \n

    \n PikMyKid understands how important privacy is to Parents\n and their students, the Schools and Educational\n Professionals who use our Services, and our Site\n visitors. We provide a platform to assist you in the\n school dismissal process. As we describe below, Schools\n and Parents determine the data that gets shared and used\n by PikMyKid to provide our Services. This Privacy Policy\n applies to our Site and our Services and describes the\n actions we take related to your data.\n

    \n

    \n Capitalized terms that are not defined in this Privacy\n Policy have the meaning given them in our Terms of Use.\n

    \n

    Information we collect

    \n

    \n Information Schools give us –When Schools register for\n our Services, they provide certain information about the\n School, Parents, and students, such as Parent’s name,\n email address and phone number, student ID, classroom\n and other information maintained in the School’s\n information systems such as bus route number, teacher\n name, and information about student absences. We also\n receive information from Schools and Parents when they\n send us a message, for example by email or by submitting\n a help request through the Site. The School may also\n provide us information about Educational Professionals\n such as name, email address and cell phone number to\n take advantage of some of our Services.\n

    \n

    Information you give us

    \n

    \n When you register for our Services you provide certain\n information such as School name, student’s name, point\n of contact name, physical address, email address and\n phone number. In addition, to use the Services you are\n required to provide your pick-up method and student’s\n name. If you should discover incorrect information while\n using our Services, please contact\n \n [email protected]\n \n and we will assist in correcting the information.\n

    \n

    Information we get when you use the Services

    \n

    \n Like most websites and online services, certain\n information is automatically collected when you use our\n Services, visit our Site, read our emails, or otherwise\n communicate with us. For example, information about your\n device and its software, such as your IP address,\n browser type, Internet service provider, platform type,\n device type, operating system, date and time stamp, a\n unique ID that allows us to identify your browser,\n mobile device or your account, and other similar\n information. Information about the way you use our\n Service is also collected, for example, the site from\n which you came and the site to which you are going when\n you leave our website, the pages you visit, the links\n you click, how frequently you access the Site and use\n our Services, whether you open emails or click the links\n contained in emails, whether you access the Services or\n Site from multiple devices, and other actions you take\n on the Service or Site. When you access our Site or use\n our Services from a mobile device, we may collect unique\n identification numbers associated with your device or\n our mobile application, mobile carrier, device type,\n model and manufacturer, mobile device operating system\n brand and model. Your location may also be collected. We\n may also collect analytics data, or use third-party\n analytics tools, to help us measure traffic and usage\n information for our Services. Although we do our best to\n honor the privacy preferences of our visitors, we are\n not able to respond to Do Not Track signals from your\n browser at this time.\n

    \n

    \n We and your School may also place advertisements on the\n Site. We collect information related to these\n advertisements such as who clicks on them, the School\n they are affiliated with and the time and date the\n advertisement was clicked.\n

    \n

    Student Data

    \n

    \n Through the course of providing Services, we may have\n access to personally identifiable information about\n students (“Student Data”) that is provided\n by you. We have access to Student Data only as requested\n by the School and Parents and only for the purposes of\n performing Services on the School’s behalf. The\n type of Student Data we collect will depend on how the\n School uses the Services.\n

    \n

    \n We receive Student Data only from the School and\n Parents. We never interact with the student directly.\n Student Data is confidential. We do not use Student Data\n for any purpose other than to provide the Services on\n the School’s behalf, in accordance with\n contractual agreements with the School. Our collection,\n use, and disclosure of Student Data is governed by our\n Terms of Use, our agreement(s) with the School, the\n provision of the Family Educational Rights and Privacy\n Act (FERPA), the Children’s Online Privacy\n Protection Act (COPPA), and all applicable laws which\n relate to the collection of Student Data. Please contact\n your School if you have questions about the information\n they provide us and their use of technology service\n providers like PikMyKid.\n

    \n

    How We Use Information

    \n

    \n We use the information we collect to operate, maintain,\n and improve our Site, Services, and their functionality,\n and to communicate with our Schools and Parents. To the\n extent we share your information, we will only share it\n with those who adhere to standards that are consistent\n with our Privacy Policy and practices. We may disclose\n your information in the following ways:\n
    \n Any information provided by Parents may be shared with\n Schools and any information provided by Schools may be\n shared with Parents to the extent authorized by the\n School.\n

    \n

    \n Except to the extent it contains or comprises Student\n Data, whether alone or when combined, We may share\n non-identifying and aggregated information with third\n parties, including advertisers and sponsors. We will\n never target advertisements to students or sell\n students’ personally identifiable information to third\n parties for any purpose.\n
    \n In response to subpoenas, court orders, or legal\n process, from law enforcement agencies or state and\n federal regulators, or as otherwise required by law;\n

    \n

    \n In these types of transactions, user information is\n typically one of the business assets that are\n transferred. Moreover, if company, or substantially all\n of its assets were acquired, or in the unlikely event\n that company goes out of business or enters bankruptcy,\n user information would be one of the assets that is\n transferred or acquired by a third party. In connection\n with an actual or proposed corporate merger,\n acquisition, asset purchase, or other transaction or\n proceeding involving all or part of the business or\n assets to which the information pertains. In these types\n of transactions, user information is typically one of\n the business assets that are transferred. Moreover, if\n company, or substantially all of its assets were\n acquired, or in the unlikely event that company goes out\n of business or enters bankruptcy, user information would\n be one of the assets that is transferred or acquired by\n a third party. Any acquirer of the company may only be\n permitted to acquire user information if the new company\n agrees to offer privacy and security terms no less\n stringent than ours, In this case, the successor entity\n is subject to all applicable Federal, State laws and\n applicable Student privacy laws. We will also work with\n successor to ensure the privacy and security terms are\n no less stringent than ours.You acknowledge that such\n transfers may occur and that any acquirer of company may\n continue to use parent Information and Children’s\n Personal Information as set forth in this policy.\n

    \n

    \n To other companies to: comply with various reporting\n obligations; for business or marketing purposes; or to\n assist in understanding your interests, habits, and\n usage patterns for certain programs, content, services,\n advertisements, promotions, and functionality available\n through the Site or as part of the Services.\n

    \n

    \n From time to time, we may use your information to\n contact you via e-mail to determine whether you are\n happy with our services and send you customer\n satisfaction surveys. We may also contact you by e-mail\n to advise you of offers, promotions or other information\n from our sponsor companies or advertisers. You retain\n the ability to “opt out” of such e-mail communications\n by following the opt-out procedures in the email. You\n will not be able to opt out, however, of viewing sponsor\n information that appears on the Site.\n

    \n

    \n We disclose your information to companies we use as\n contractors or agents to perform services for us, such\n as administering our websites, systems, and software,\n hosting maintenance, and other such services. These\n service providers may have access to or process your\n information to the extent it is necessary for them to\n perform services for us.\n

    \n

    \n To protect rights, property, or safety. In connection\n with an actual or proposed corporate merger,\n acquisition, asset purchase, or other transaction or\n proceeding involving all or part of the business or\n assets to which the information pertains.\n
    \n We rely on Schools to provide us direction about how we\n can collect, use and share your information. You should\n contact your School if you have questions about their\n direction to us or the School’s use of technology\n service providers like PikMyKid.\n

    \n

    How we store and secure your information

    \n

    \n We maintain reasonable administrative, technological and\n physical safeguards designed to improve the integrity,\n privacy, confidentiality, and security of your\n information.\n

    \n

    \n All data is securely and exclusively hosted in a FERPA\n compliant data centers. User roles are clearly defined\n to manage the access level.\n

    \n

    \n Student Personal Information is protected by a password\n for your privacy and security. You may help protect\n against unauthorized access to your account and Personal\n Information or Student Information by selecting and\n protecting your password appropriately and limiting\n access to your computer and browser by signing off after\n you have finished accessing your account.\n

    \n

    \n Company endeavors to protect user information to ensure\n that user account information is kept private, however,\n Company cannot guarantee the security of user account\n information. Unauthorized entry or use, hardware or\n software failure, and other factors may compromise the\n security of user information at any time. For additional\n information about the security measures Company uses in\n connection with the Website, schools may contact us at\n \n \n [email protected]\n \n \n

    \n

    \n Like other online services, we cannot guarantee the\n security of any information you transmit to us or store\n on the Site and you do so at your own risk. We also\n cannot guarantee that such information may not be\n accessed, disclosed, altered, or destroyed by\n unauthorized persons. If we learn of a security systems\n breach, then we may attempt to notify you electronically\n so that you can take appropriate protective steps. We\n may post a notice on the Site if a security breach\n occurs. Once your information is removed from the Site,\n copies of your information, other than Student Data, may\n remain stored in backup systems or cached and archived\n pages. We are not responsible for the practices employed\n by websites, applications or services linked to or from\n our Site.\n

    \n

    \n Any information collected through the Service is stored\n and processed in the United States. If you use our\n Service outside of the United States, you consent to\n have your data transferred to the United States.\n

    \n

    Children’s privacy

    \n

    \n In addition to the guidelines outlined in our Terms, we\n do not knowingly collect any information from children\n under the age of 13 and we rely on the School to provide\n notice and obtain parental consent and any other\n required authorizations for all student information we\n collect. Please contact us at\n \n [email protected]\n \n if you believe we have inadvertently collected personal\n information of a child under 13 without proper consent\n so that we may delete it as soon as possible. We will\n never target advertisements to students or sell\n students’ personally identifiable information to third\n parties for any purpose.\n

    \n

    Changes to Our Privacy Policy

    \n

    \n We may modify or update this Privacy Policy from time to\n time. You should review this page periodically. If we\n make significant changes that affect your rights, we\n will take reasonable efforts to notify you of those\n changes via the email address provided by you or a\n prominent notification when you access the Site or use\n the Services. Your continued use of the Site or Services\n indicates that you have read, understood and agreed to\n the current version of our Privacy Policy. If you do not\n agree with our Privacy Policy, you can always opt-out by\n deleting your account and ceasing to use our Services.\n

    \n

    Links to Third Party Sites or Apps

    \n

    \n The Site may contain links to websites & apps\n operated and maintained by third parties, over which we\n have no control. Privacy policies on linked sites may be\n different from our Privacy Policy. You access such\n linked sites at your own risk. You should always read\n the privacy policy of a linked site before disclosing\n any information to such site.\n

    \n

    How to contact us

    \n

    \n If you have questions about this statement or need\n additional information regarding our privacy practices,\n please contact\n \n \n [email protected]\n \n \n .\n

    \n

    \n This privacy policy was last modified on April 22, 2018.\n Effective Date: May 22, 2018\n
    \n

    \n
    \n
    \n
    \n
    \n
    \n
    \n

    Terms of Use Agreement

    \n
    \n

    \n PikMyKid is a Comprehensive Safety Platform designed to\n manage the entire student dismissal process in a Smart,\n Safe and Expeditious manner (“Services”). PikMyKid is\n both an app based and software solution. The app is\n available for parents on iTunes, the Microsoft Store and\n the Google Play store. Schools can manage requests and\n communicate with parents and others through the PikMyKid\n portal. To assist you in using PikMyKid and to ensure a\n clear understanding of the relationship arising from\n your use of our services, we have created these Terms of\n Use (the “Terms”).\n

    \n

    TERMS OF USE

    \n

    Application of Terms; Your Agreement

    \n

    \n These Terms are a binding contract between you, Sachi\n Tech, Inc. (the owner of PIkMyKid.com) its affiliates,\n subsidiaries and related companies and persons\n (collectively, “PikMyKid”). These terms impose legal\n obligations on you. Please read them carefully. By using\n the Services or accessing PikMyKid.com or the PikMyKid\n portal (collectively the “Site”) you are acknowledging\n that you have read and understood these Terms, agree to\n be legally bound by them and consent to the collection\n and use of your information as described in our Privacy\n Policy.\n

    \n

    \n These Terms apply to (i) schools, school districts and\n related entities and organization that use the Services\n or access the Site (each a “School”), (ii) educational\n professionals, school administrators, and School\n employees and agents who access the Site or use the\n Services (“Educational Professionals”), (iii) all Site\n visitors and users of the Services including parents,\n legal guardians and anyone authorized to use the\n Services or access the site by any of the foregoing\n (“Parents”) (iv) and any third party or agent performing\n work related to the Services, such as suppliers and\n developers (“Developers”). For purposes of these Terms,\n the words “user”, “you” and “your” refer to Schools,\n Educational Professionals, Parents and Developers. The\n words “we,” “our,” or “us” refer to PikMyKid.\n

    \n

    \n You must be at least eighteen (18) years old to use our\n Services. By agreeing to the Terms, you represent and\n warrant to us that you are at least eighteen (18) years\n old and, that your registration and your use of the\n Service shall at all times comply with applicable laws\n and regulations. The Services and the Site are provided\n only in the English language.\n

    \n

    If at any time, you suspect or are concerned that:

    \n

    The Services or Site are not working properly;

    \n

    \n You do not understand how to use the Services or Site\n and/or are not sure you have transmitted or received the\n proper information;\n

    \n

    \n For Parents: Information regarding your child’s pick-up\n information has not been properly transmitted to the\n school;\n

    \n

    \n For Educational Professionals: The student dismissal\n information generated by the Services or Site does not\n appear to be consistent with what you have typically\n seen and/or may have errors–\n

    \n

    \n IT IS YOUR RESPONSIBILITY TO CONFIRM THE CORRECT CONTACT\n DETAILS AND PICK UP INFORMATION WITH THE PARENTS/SCHOOL\n AS THE CASE MAY BE.\n

    \n

    Accounts and Security

    \n

    \n You will be required to establish an account to access\n the Services. You are entirely responsible for\n maintaining the confidentiality of your account\n information, including your username and password, and\n for any and all activity that occurs under your account\n as a result of your failing to keep this information\n secure and confidential. You agree to notify PikMyKid\n immediately of any unauthorized use of your account or\n password, or any other breach of security. You may be\n held liable for losses due to someone else using your\n username, password or account as a result of your\n failing to keep your account information secure and\n confidential. PikMyKid cannot and will not be liable for\n any loss or damage arising from your failure to comply\n with these obligations. PikMyKid may terminate suspend\n or restrict your access to your account at any time and\n for any reason, including for violation of these Terms.\n PikMyKid has the sole right to decide whether you are in\n violation of these Terms. Account termination may result\n in destruction of any content associated with your\n account.\n

    \n

    Acceptable Use

    \n

    \n By using the Services or accessing the Site, you agree\n not to do any of the following:\n
    \n Rent, lease, loan, sell, resell, sublicense, distribute\n or otherwise transfer the licenses granted in connection\n with using the Services or accessing the Site.\n

    \n

    \n Impersonate any person or entity, falsely claim an\n affiliation with any person or entity, or misrepresent\n the source, identity, or content of information\n transmitted to or via the Services or Site, or perform\n any other similar or fraudulent activity;\n

    \n

    \n Use the Service or access the Site for any illegal\n purpose, or in violation of any local, state, national,\n or international law, including, without limitation\n COPPA, the PPRA, FERPA, laws related to the protection\n of children, laws governing intellectual property and\n other proprietary rights, and data protection and\n privacy;\n

    \n

    \n Remove, circumvent, disable, damage or otherwise\n interfere with (i) security-related features of the\n Services or Site, (ii) features that prevent or restrict\n use or copying of any content accessible through the\n Service, or (iii) features that enforce limitations on\n the use of the Services or Site;\n

    \n

    \n Modify, adapt, translate or create derivative works\n based upon the Services or Site; or\n

    \n

    \n Interfere with or damage operation of the Services or\n Site or any user’s enjoyment of them, by any means,\n including uploading or otherwise disseminating viruses,\n adware, spyware, worms, or other malicious code or\n disabling, overburdening or impairing the Services or\n Site.\n

    \n

    \n Seek to gain access to the Services or Site through\n “hacking” or any other means not expressly authorized in\n writing by PikMyKid.\n

    \n

    Family Educational Rights and Privacy Act

    \n

    \n Certain information users provide to PikMyKid about\n students may be considered an education record\n (“Education Record”) under the Family Educational Rights\n and Privacy Act (“FERPA”). Additionally, certain\n information users provide to PikMyKid about a student,\n such as student name and grade level, may be considered\n directory information under FERPA (“Directory\n Information”) and thus not an Education Record. A School\n may not generally disclose personally identifiable\n information from a student’s records without written\n consent of the parent and/or eligible student or without\n meeting one of the exemptions set forth in FERPA such as\n the Directory Information exemption (as defined by\n FERPA).\n

    \n

    \n To the extent you provide information subject to FERPA,\n you represent, warrant and covenant to PikMyKid that you\n have fully complied with all FERPA requirements\n including, without limitation, obtaining all necessary\n written consents to share the information with PikMyKid\n for use by PikMyKid to the fullest extent necessary to\n provide the Services;\n

    \n

    \n Unless permitted by FERPA or an applicable exemption,\n PikMyKid will never share an Education Record with third\n parties except as directed by a user or to our service\n providers that are necessary for us to provide the\n Service.\n

    \n

    \n PikMyKid may use de-identified Education Records for\n product development, research or other purposes\n (“De-Identified Data”). PikMyKid agrees not to attempt\n to re-identify the De-Identified Data and not to\n transfer the De-Identified Data to a third party unless\n that party agrees not to attempt re-identification.\n

    \n

    Children’s Online Privacy and Protection Act

    \n

    \n The Children’s Online Privacy and Protection Act\n (“COPPA”) requires that online service providers obtain\n clear and verifiable parental consent before collecting\n personal information from children under 13. PikMyKid\n does not and will not knowingly collect any information\n from children under the age of 13. To the extent you\n provide information related to a child under the age of\n 13, you are solely responsible for complying with COPPA\n and you represent and warrant that you have fully\n complied with COPPA by, among other things, receiving\n the appropriate consent from parents and/or having the\n requisite authority to provide such information to\n PikMyKid, and for us to collect such information.\n

    \n

    Intellectual Property Rights

    \n

    \n The information and content of the Services and the\n Site, including but not limited to: software, artwork,\n text, video, audio, copy, graphics, images, logos and\n other information, other than content provided by Users\n and advertisers, is owned or licensed by PikMyKid and is\n protected by copyright and other intellectual property\n laws under both United States and foreign laws. Any use\n of the information and the content of the Services or\n Site not expressly permitted by these Terms is a breach\n of these Terms and may violate copyright, trademark, and\n other laws. All rights not expressly granted herein are\n reserved to PikMyKid. Users and any other content\n providers are responsible for obtaining the appropriate\n permissions and rights for posting any content to the\n Site and agree to indemnify, hold harmless and defend\n PikMyKid for any claims, demands and judgment that arise\n out of a violation of this paragraph.\n

    \n

    Links to Third Party Sites

    \n

    \n We may provide links to third-party websites. PikMyKid\n is not responsible for the content of linked third-party\n sites or third-party advertisements, and does not make\n any representations regarding their content or accuracy.\n We provide these links as a convenience only, and a link\n does not imply our endorsement of, sponsorship of, or\n affiliation with the linked site. Your use of\n third-party websites is at your own risk and subject to\n the terms and conditions of use for such sites.\n

    \n

    Assumption of Risk

    \n

    \n While using the Services or accessing the Site from a\n mobile device, please be aware of your surroundings and\n exercise reasonable judgment. You agree that your use of\n the Service and accessing the site is at your own risk,\n and it is your responsibility to maintain such health,\n liability, hazard, personal injury, medical, life, and\n other insurance policies as you deem reasonably\n necessary for any injuries that you may incur while\n using the Services or accessing the Site. It is strictly\n forbidden to use the Services or access the Site while\n driving. While using a vehicle, you may only access the\n Site or use the Services after you have stopped your\n vehicle in an appropriate location permitted by law. If\n you are accessing the Site or using the Services in an\n area where there is traffic or other potentially\n dangerous conditions, stop and stand in a safe place and\n remain stationary until you are no longer accessing the\n Site or using the Services.\n

    \n

    \n PikMyKid may, but shall not be obligated to, provide an\n emergency notification platform as part of the Services\n (“ENP”). You must not rely on the ENP as a means to\n communicate information to emergency service providers,\n such as the fire department, emergency medical personnel\n and law enforcement. ENP is not a substitute for using\n 911 or any other emergency communication service. In the\n event of an emergency, you should dial 911 or directly\n contact emergency services.\n

    \n

    Indemnity

    \n

    \n You agree to defend, indemnify, and hold harmless\n PikMyKid and its officers, directors, employees, and\n agents from and against any and all claims, damages,\n obligations losses, demands, liabilities, costs and\n expenses (including but not limited to attorney’s fees)\n resulting from, related to, or arising out of (i) your\n violation of these Terms and (ii) your use of the\n Services.\n

    \n

    Warranty Disclaimer

    \n

    \n THE SERVICES AND SITE ARE PROVIDED “AS IS” AND ON AN “AS\n AVAILABLE” BASIS, WITHOUT WARRANTY OR CONDITION OF ANY\n KIND, EITHER EXPRESS OR IMPLIED. PIKMYKID AND ITS\n OFFICERS, DIRECTORS, EMPLOYEES AND AGENTS SPECIFICALLY\n (BUT WITHOUT LIMITATION) DISCLAIM (i) ANY IMPLIED\n WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR\n PURPOSE, OR NON-INFRINGEMENT; (ii) ANY WARRANTIES\n ARISING OUT OF COURSE-OF-DEALING, USAGE, OR TRADE; (iii)\n ANY WARRANTIES THAT THE INFORMATION OR RESULTS PROVIDED\n IN, OR THAT MAY BE OBTAINED FROM USE OF THE SERVICES OR\n SITE WILL MEET YOUR REQUIREMENTS OR BE ACCURATE,\n RELIABLE, COMPLETE, OR UP-TO-DATE; AND (iv) ANY\n WARRANTIES THAT THE SERVICES OR SITE WILL BE\n UNINTERRUPTED OR ERROR-FREE. YOUR USE OF OR ACCESS TO\n THE SERVICES OR SITE IS DONE AT YOUR OWN DISCRETION AND\n RISK.\n

    \n

    \n PIKMYKID TAKES REASONABLE MEASURES TO ENSURE THAT\n PERSONALLY IDENTIFIABLE INFORMATION OF PARENTS AND\n STUDENTS IS NOT DISCLOSED, EXCEPT TO SCHOOLS AND\n EDUCATIONAL PROFESSIONALS, SO THAT THEY MAY USE THE\n SERVICES. PIKMYKID CANNOT AND DOES NOT, HOWEVER,\n GUARANTEE THAT THE PERSONAL INFORMATION ENTERED BY\n PARENTS WILL NOT BE MISAPPROPRIATED, INTERCEPTED,\n DELETED, DESTROYED OR USED BY OTHERS. PARENTS AGREE NOT\n TO HOLD PIKMYKID/LIABLE FOR ANY LOSS OR DAMAGE OF ANY\n SORT INCURRED AS A RESULT OF ANY SUCH MISAPPROPRIATION,\n INTERCEPTION, DELETION, DESTRUCTION OR USE OF\n INFORMATION PROVIDED THROUGH PIKMYKID.\n

    \n

    \n SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF CERTAIN\n WARRANTIES IN SOME CIRCUMSTANCES. ACCORDINGLY, SOME OF\n THE ABOVE LIMITATIONS MAY NOT APPLY TO YOU.\n

    \n

    Limitation of Liability

    \n

    \n TO THE FULLEST EXTENT ALLOWED BY APPLICABLE LAW, UNDER\n NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY (INCLUDING,\n WITHOUT LIMITATION, TORT, CONTRACT, STRICT LIABILITY, OR\n OTHERWISE) SHALL PIKMYKID OR ITS EMPLOYEES, OFFICERS,\n DIRECTORS OR AGENTS BE LIABLE TO YOU OR TO ANY OTHER\n PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, EXEMPLARY,\n PUNITIVE OR CONSEQUENTIAL DAMAGES OF ANY KIND, EVEN IF\n WE HAVE BEEN ADVISED OF, KNEW OR SHOULD HAVE KNOWN THAT\n SUCH DAMAGES WERE POSSIBLE AND EVEN IF DIRECT DAMAGES DO\n NOT SATISFY A REMEDY. OUR AGGREGATE TOTAL CUMULATIVE\n LIABILITY TO YOU OR ANYONE ELSE FOR ANY LOSS OR DAMAGES\n (INCLUDING, WITHOUT LIMITATION, DIRECT DAMAGES)\n RESULTING FOR CLAIMS, DEMANDS OR ACTIONS ARISING OUT OF\n OR RELATING TO THIS AGREEMENT WILL NOT EXCEED THE\n GREATER OF (I) $100 OR (II) THE AMOUNTS ACTUALLY PAID BY\n YOU TO PIKMYKID, IN CONNECTION WITH YOUR USE OF THE\n SERVICES IN THE TWELVE (12) MONTH PERIOD PRECEDING THIS\n APPLICABLE CLAIM, PRORATED FOR ANY PARTIAL PERIOD YOU\n USE THE SERVICES AND/OR FOR ACTUAL SERVICES USED BY THE\n PLAINTIFF OR DEFENDANT IN THE CLAIM, AS APPROPRIATE, AND\n NOT THEIR PARENT, AFFILIATES, OR SUBSIDIARIES. THIS\n LIMITATION OF LIABILITY REFLECTS AN ALLOCATION OF RISK\n BETWEEN YOU AND PIKMYKID\n

    \n

    \n SOME JURISDICTIONS DO NOT ALLOW THE LIMITATION OF\n LIABILITY IN SOME CIRCUMSTANCES. ACCORDINGLY, SOME OF\n THE ABOVE LIMITATIONS MAY NOT APPLY TO YOU.\n

    \n

    Modifications

    \n

    \n We may modify these Terms from time to time and such\n modifications shall immediately take effect upon posting\n to the Site. If you do not agree with any changes to\n these Terms, you may terminate your account and stop\n using the Services. Your continued use of the Site or\n Services indicates that you have read, understood and\n agreed to the current version of these Terms.\n

    \n

    \n PikMyKid reserves the right in its sole discretion to\n review, improve, modify, shut down, or discontinue,\n temporarily or permanently, the Services or Site.\n

    \n

    General

    \n

    \n The rights, obligations and duties contained herein\n shall survive the termination or modification of these\n Terms and shall survive even after you no longer\n continue to use PIKMYKID.\n
    \n PikMyKid may assign its rights and obligations pursuant\n to these Terms without prior notice to or consent from\n you. You, however, may not assign your rights or\n obligations pursuant to these Terms.\n
    \n These Terms are governed by the laws of the State of\n Florida without respect to its conflict of laws\n principals. All disputes or actions related to or\n arising out of these Terms or your use of the Services\n shall be brought exclusively in the courts of\n Hillsborough County in the State of Florida and you\n further agree and expressly consent to the exercise of\n personal jurisdiction in the courts of Hillsborough\n County in the State of Florida.\n
    \n If any provision of these Terms is found to be invalid\n by any court having competent jurisdiction, the\n invalidity of such provision shall not affect the\n validity of the remaining provisions of these Terms,\n which shall remain in full force and effect.\n
    \n No waiver of any of these Terms shall be deemed a\n further or continuing waiver of such term or condition\n or any other term or condition.\n
    \n

    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n {\n this.setState({ termsAccepted: !termsAccepted });\n }}\n />\n \n \n I agree with the Terms and Conditions\n \n
    \n
    \n
    \n {\n if (termsAccepted) {\n const { doSaveTermsAccepted } = this.props;\n doSaveTermsAccepted(true);\n this.props.history.replace(\"/childManagement\");\n }\n }}\n >\n Accept\n \n {\n this.props.doLogoutUser();\n this.props.history.replace(\"/\");\n }}\n >\n Decline\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n }\n}\n\nfunction mapStateToProps(state) {\n return {};\n}\n\nfunction mapDispatchToProps(dispatch) {\n return {\n doLogoutUser: () => dispatch(logoutUser()),\n doSaveTermsAccepted: (data) => dispatch(saveTermsAccepted(data)),\n };\n}\n\nexport default withTranslation()(\n withRouter(connect(mapStateToProps, mapDispatchToProps)(TermsConditions))\n);\n","import React from \"react\";\nimport { Link } from \"react-router-dom\";\nimport i18n from \"i18next\";\nimport {\n\tclearRgistrationInfo,\n\tloginUser,\n\tloginUserClear,\n\tsetEnvironment,\n\tlogoutUser\n} from \"../../../common/actions/userAccount\";\nimport { connect } from \"react-redux\";\nimport { Colors } from \"../../../theme\";\nimport { withTranslation } from \"react-i18next\";\nimport \"../../../../node_modules//bootstrap/dist/css/bootstrap.min.css\";\nimport { RegisterFooter, RegisterHeader } from \"../../CommonComponents\";\nimport \"../../../../node_modules/font-awesome/css/font-awesome.min.css\";\nimport \"../../Styles/app.css\";\nimport \"../Registration/Styles/style.css\";\nimport \"./landing.css\";\nimport \"../Registration/Styles/theme-responsive.css\";\nimport { createLoadingSelector } from \"../../../common/reducers/selectors\";\nimport { getLanguageCode, nextField } from \"../../../helper/utility\";\nconst loadingSelector = createLoadingSelector([\"login_user\"]);\n\nclass LandingPage extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tuserName: \"\",\n\t\t\tpassword: \"\",\n\t\t\tenv: \"prod\",\n\t\t\tuserNameError: \"\",\n\t\t\tuserPassError: \"\",\n\t\t\thidePassword: true,\n\t\t\tServerError: \"\",\n\t\t};\n\t\tthis.props.doLogoutUser()\n\t}\n\n\tsetPasswordVisibility = () => {\n\t\tthis.setState({ hidePassword: !this.state.hidePassword });\n\t};\n\n\thandleSubmit = () => {\n\t\tlet { userName, password } = this.state;\n\t\tlet { env } = this.state;\n\t\tconst { doSetEnvironment } = this.props;\n\t\tvar reg = /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n\n\t\tlet isValid = reg.test(userName);\n\t\tif (reg.test(userName) === false) {\n\t\t\tthis.setState({\n\t\t\t\tuserNameError: `${this.props.t(\"regAcctScr-emailError\")}`,\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tif (password === null || password === \"\") {\n\t\t\tthis.setState({\n\t\t\t\tuserPassError: `${this.props.t(\"loginScreen-passwordError\")}`,\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tif (userName.includes(\".staging\")) {\n\t\t\tenv = \"staging\";\n\t\t} else if (userName.includes(\".develop\")) {\n\t\t\tenv = \"develop\";\n\t\t} else if (userName.includes(\".localhost\")) {\n\t\t\tenv = \"localhost\";\n\t\t}else {\n\t\t\tenv = \"prod\";\n\t\t}\n\t\tthis.setState({ env }, () => {\n\t\t\tif (env === \"staging\") {\n\t\t\t\tdoSetEnvironment({ env: \"staging\", callback: this.processLogin });\n\t\t\t} else if (env === \"develop\") {\n\t\t\t\tdoSetEnvironment({ env: \"develop\", callback: this.processLogin });\n\t\t\t} else if (env === \"localhost\") {\n\t\t\t\tdoSetEnvironment({ env: \"localhost\", callback: this.processLogin });\n\t\t\t} else {\n\t\t\t\tdoSetEnvironment({ env: \"prod\", callback: this.processLogin });\n\t\t\t}\n\t\t});\n\t};\n\n\tprocessLogin = () => {\n\t\tconst { doLogin, doClearRgistrationInfo } = this.props;\n\t\tlet { userName, password, env } = this.state;\n\n\t\tif (userName.includes(\".staging\")) {\n\t\t\tuserName = userName.replace(\".staging\", \"\");\n\t\t} else if (userName.includes(\".develop\")) {\n\t\t\tuserName = userName.replace(\".develop\", \"\");\n\t\t}else if (userName.includes(\".localhost\")) {\n\t\t\tuserName = userName.replace(\".localhost\", \"\");\n\t\t}\n\n\t\tdoClearRgistrationInfo();\n\t\tdoLogin({\n\t\t\temail: userName,\n\t\t\tpassword: password,\n\t\t\tlocale: getLanguageCode(),\n\t\t\tenv,\n\t\t});\n\t};\n\n\thandleUserChange = ({ target: { value: userName } }) =>\n\t\tthis.setState({ userName, userNameError: \"\", ServerError: \"\" });\n\thandlePasswordChange = ({ target: { value: password } }) =>\n\t\tthis.setState({ password, userPassError: \"\", ServerError: \"\" });\n\n\tcomponentDidUpdate() {\n\t\tconst { userLoginInfo, error, doLoginClear } = this.props;\n\n\t\tif (error) {\n\t\t\tthis.setState({ ServerError: error.Message });\n\t\t\tdoLoginClear();\n\t\t} else if (userLoginInfo != null) {\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.props.history.replace(\"/childManagement\");\n\t\t\t}, 1000)\n\t\t}\n\t}\n\n\trender() {\n\t\tconst {\n\t\t\tuserName,\n\t\t\tpassword,\n\t\t\tuserNameError,\n\t\t\tuserPassError,\n\t\t\thidePassword,\n\t\t\tServerError,\n\t\t} = this.state;\n\t\tconst { isFetching, doClearRgistrationInfo } = this.props;\n\t\treturn (\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t{this.props.t(\"loginScreen-lets-get-started\")}\n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t{this.props.t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"loginScreen-please-enter-email-password\"\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t nextField(event)}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{\" \"}\n\t\t\t\t\t\t\t\t\t\t\t\t{userNameError}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t { if (event.key === 'Enter') this.handleSubmit() }}\n\t\t\t\t\t\t\t\t\t\t\t\tname=\"password\"\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{\" \"}\n\t\t\t\t\t\t\t\t\t\t\t\t{userPassError}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{this.props.t(\"loginScreen-remember-me\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{this.props.t(\"loginScreen-ForgotPassword\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{\" \"}\n\t\t\t\t\t\t\t\t\t\t\t{ServerError}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t { this.handleSubmit() }}\n\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{\" \"}\n\t\t\t\t\t\t\t\t\t\t\t\t{isFetching ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t) : null}{\" \"}\n\t\t\t\t\t\t\t\t\t\t\t\t  {this.props.t(\"loginScreen-login\")}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t{this.props.t(\"loginScreen-new-to-pikmykid\")}\n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t{this.props.t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"loginScreen-you-can-create-new-acoount-here\"\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tdoClearRgistrationInfo();\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.props.history.push(\"/registerName\");\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{this.props.t(\"loginScreen-create-account\")}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t);\n\t}\n}\n\nfunction mapStateToProps(state) {\n\treturn {\n\t\tuserLoginInfo: state.userAccount.userLoginInfo,\n\t\tisFetching: loadingSelector(state),\n\t\terror: state.userAccount.error,\n\t\tregisteredEmail: state.userAccount.registeredEmail,\n\t};\n}\n\nfunction mapDispatchToProps(dispatch) {\n\treturn {\n\t\tdoClearRgistrationInfo: () => dispatch(clearRgistrationInfo()),\n\t\tdoLogin: (data) => dispatch(loginUser(data)),\n\t\tdoLoginClear: () => dispatch(loginUserClear()),\n\t\tdoSetEnvironment: (data) => dispatch(setEnvironment(data)),\n\t\tdoLogoutUser: () => dispatch(logoutUser()),\n\t};\n}\nexport default withTranslation()(\n\tconnect(mapStateToProps, mapDispatchToProps)(LandingPage)\n);\n","import LandingPage from \"./LandingPage\";\n\nexport default LandingPage;\n","import React from \"react\";\nimport { withTranslation } from \"react-i18next\";\nimport { connect } from \"react-redux\";\nimport { Link } from \"react-router-dom\";\nimport \"../../../../node_modules//bootstrap/dist/css/bootstrap.min.css\";\nimport { RegisterFooter, RegisterHeader } from \"../../CommonComponents\";\nimport \"../../../../node_modules/font-awesome/css/font-awesome.min.css\";\nimport \"../../Styles/app.css\";\nimport \"../Registration/Styles/style.css\";\nimport \"../Registration/Styles/theme-responsive.css\";\nimport {\n\tuserForgotPassword,\n\tuserForgotPasswordClear,\n\tsetEnvironment,\n\tshowModal, hideModal, setHelpList\n} from \"../../../common/actions/userAccount\";\nimport { BootstrapModal } from \"../../CommonComponents\";\nimport GLOBAL_CONST from '../../../helper/AppConstants';\n\nimport { createLoadingSelector } from \"../../../common/reducers/selectors\";\nimport { Slide, toast } from \"react-toastify\";\nimport \"react-toastify/dist/ReactToastify.css\";\nimport { getLanguageCode } from \"../../../helper/utility\";\ntoast.configure();\nconst loadingSelector = createLoadingSelector([\"forgot_password\"]);\n\nclass ForgotPassword extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\temail: \"\",\n\t\t\temailInvalid: \"\",\n\t\t\tenv: \"prod\",\n\t\t};\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.dosetHelpList()\n\t}\n\tdosetHelpList = () => {\n\t\tthis.props.dosetHelpList({\n\t\t\tstackType: \"AuthStack\",\n\t\t\tscreen: GLOBAL_CONST.SCREEN_NAMES.FORGOT_PASSWORD,\n\t\t\ttitle: this.props.t('Forgot_Password'),\n\t\t});\n\t}\n\topenHelpModal = () => {\n\t\tthis.props.doShowModal({\n\t\t\tmodalScreenName: \"HelpListing\",\n\t\t\tmodalClassName: \"helpSupportModal sidebar-modal right\",\n\t\t\tparams: {\n\t\t\t\tstackType: this.props.setHelpListData.stackType,\n\t\t\t\tscreen: this.props.setHelpListData.screen,\n\t\t\t\ttitle: this.props.setHelpListData.title,\n\t\t\t}\n\t\t});\n\t}\n\n\tsubmitForm = () => {\n\t\tconst { email } = this.state;\n\t\tconst { doSetEnvironment } = this.props;\n\t\tlet { env } = this.state;\n\t\tvar reg = /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n\n\t\tlet isValid = reg.test(email);\n\t\tif (reg.test(email) === false) {\n\t\t\tthis.setState({ emailInvalid: this.props.t(\"regAcctScr-emailError\") });\n\t\t\treturn;\n\t\t}\n\n\t\tif (email.includes(\".staging\")) {\n\t\t\tenv = \"staging\";\n\t\t} else if (email.includes(\".develop\")) {\n\t\t\tenv = \"develop\"\n\t\t}else if (email.includes(\".localhost\")) {\n\t\t\tenv = \"localhost\"\n\t\t} else {\n\t\t\tenv = \"prod\";\n\t\t}\n\t\tthis.setState({ env }, () => {\n\t\t\tif (env === \"staging\") {\n\t\t\t\tdoSetEnvironment({\n\t\t\t\t\tenv: \"staging\",\n\t\t\t\t\tcallback: this.processForgotPassword,\n\t\t\t\t});\n\t\t\t} else if (env === \"develop\") {\n\t\t\t\tdoSetEnvironment({\n\t\t\t\t\tenv: \"develop\",\n\t\t\t\t\tcallback: this.processForgotPassword,\n\t\t\t\t});\n\t\t\t} else if (env === \"localhost\") {\n\t\t\t\tdoSetEnvironment({\n\t\t\t\t\tenv: \"localhost\",\n\t\t\t\t\tcallback: this.processForgotPassword,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tdoSetEnvironment({ env: \"prod\", callback: this.processForgotPassword });\n\t\t\t}\n\t\t});\n\t};\n\n\tprocessForgotPassword = () => {\n\t\tconst { doUserForgotPassword } = this.props;\n\t\tlet { email } = this.state;\n\t\temail = email.replace(\".staging\", \"\");\n\t\tdoUserForgotPassword({ email: email, locale: getLanguageCode() });\n\t};\n\n\thandleEmailChange = ({ target: { value: email } }) =>\n\t\tthis.setState({ email, emailInvalid: \"\" });\n\n\tcomponentDidUpdate() {\n\t\tconst {\n\t\t\tforgotPasswordResponse,\n\t\t\terror,\n\t\t\tdoUserForgotPasswordClear,\n\t\t\tforgotPasswordSuccess,\n\t\t} = this.props;\n\n\n\t\tif (error) {\n\t\t\tthis.setState({ emailInvalid: error.Message });\n\n\t\t\tdoUserForgotPasswordClear();\n\t\t} else if (forgotPasswordSuccess) {\n\t\t\ttoast.success(forgotPasswordResponse.Message, { autoClose: 2000 });\n\t\t\tthis.props.history.push(\"/\");\n\t\t\tdoUserForgotPasswordClear();\n\t\t}\n\t}\n\n\trender() {\n\t\tconst { email, emailInvalid } = this.state;\n\t\tconst { isFetching } = this.props;\n\n\t\treturn (\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{this.props.t(\"loginScreen-ForgotPassword\")}\n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{this.props.t(\"ForgotPasswordInstructions\")}\n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t\t{/*
    \n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{this.props.t(\"loginScreen-ForgotPassword\")}\n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{this.props.t(\"ForgotPasswordInstructions\")}\n\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t
    */}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{\" \"}\n\t\t\t\t\t\t\t\t\t\t\t\t\t{emailInvalid}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\n\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{isFetching ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t) : null}{\" \"}\n\t\t\t\t\t\t\t\t\t\t\t\t\t  {this.props.t(\"changePickupScr-save\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t);\n\t}\n}\n\nfunction mapStateToProps(state) {\n\treturn {\n\t\tforgotPasswordSuccess: state.userAccount.forgotPasswordSuccess,\n\t\tforgotPasswordResponse: state.userAccount.forgotPasswordResponse,\n\t\tisFetching: loadingSelector(state),\n\t\terror: state.userAccount.error,\n\t\tsetHelpListData: state.userAccount.setHelpListData,\n\t};\n}\n\nfunction mapDispatchToProps(dispatch) {\n\treturn {\n\t\tdoUserForgotPassword: (data) => dispatch(userForgotPassword(data)),\n\t\tdoUserForgotPasswordClear: () => dispatch(userForgotPasswordClear()),\n\t\tdoSetEnvironment: (data) => dispatch(setEnvironment(data)),\n\n\t\tdosetHelpList: (data) => dispatch(setHelpList(data)),\n\t\tdoShowModal: (data) => dispatch(showModal(data)),\n\t\tdoHideModal: () => dispatch(hideModal()),\n\t};\n}\nexport default withTranslation()(\n\tconnect(mapStateToProps, mapDispatchToProps)(ForgotPassword)\n);\n","import ForgotPassword from \"./ForgotPassword\";\n\nexport default ForgotPassword;\n","import React from \"react\";\n\nclass Error extends React.Component {\n render() {\n return (\n
    \n

    Oops! Page not found!

    \n
    \n );\n }\n}\nexport default Error;\n","import React from \"react\";\nimport { BrowserRouter as Router, Route, Switch } from \"react-router-dom\";\nimport LandingPage from \"./components/UserAccount/LandingPage\";\nimport ForgotPassword from \"./components/UserAccount/ForgotPassword\";\nimport {\n Dashboard,\n DismissalTimes,\n PriorAndFutureDelegations,\n Nokids,\n} from \"./components/Dashboard\";\nimport Error from \"./Error\";\nimport {\n RegisterName,\n RegisterEmail,\n ConfirmEmail,\n RegisterPhone,\n ConfirmPhone,\n RegisterPassword,\n RegisterSuccess,\n ChooseRole,\n RegisterSupport,\n} from \"./components/UserAccount/Registration\";\nimport { NotificationsList, ChangePassword, Setting } from \"./components/Settings\";\nimport { ChildManagement } from \"./components/ChildManagement\";\nimport { Checkin } from \"./components/Checkin\";\nimport { BootstrapModal, LoadAds } from \"./components/CommonComponents\";\nimport { PrivateRoute,TermsConditions } from \"./components/CommonComponents\";\nimport { Notifications } from 'react-push-notification';\nimport ScanBarCode from \"./components/Scanner/ScanBarCode\"\nclass Routes extends React.Component {\n render() {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\t\t \n \n \n \n \n \n {/* */}\n {/* */}\n {/* */}\n \n \n \n \n \n \n \n \n \n );\n }\n}\nexport default Routes;\n","import \"./App.css\";\nimport Routes from \"./Routes\";\n//import { setI18nConfig } from \"./helper/rn-multi-helpers\"\nimport React from \"react\";\nfunction App() {\n return (\n //
    \n //
    \n // \"logo\"\n //

    \n // Edit src/App.js and save to reload.\n //

    \n // \n // Learn React\n // \n //
    \n //
    \n \n );\n}\n\nexport default App;\n","import React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { I18nextProvider } from \"react-i18next\";\nimport i18n from \"./i18n\";\nimport \"./index.css\";\nimport App from \"./App\";\nimport { history, store, persistor } from \"./common/store/configureStore\";\n\nimport { PersistGate } from \"redux-persist/integration/react\";\nimport reportWebVitals from \"./reportWebVitals\";\nimport { Provider } from \"react-redux\";\nimport { render } from \"react-dom\";\nimport { ConnectedRouter } from \"connected-react-router\";\nimport { Notifications } from 'react-push-notification';\n\n// console.log(\"PMK store \", store);\n// console.log(\"PMK persistor \", persistor);\n// ReactDOM.render(\n// \n// \n// \n// \n// \n// ,\n// document.getElementById('root')\n// );\n// If you want to start measuring performance in your app, pass a function\n// to log results (for example: reportWebVitals(// console.log))\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\n//reportWebVitals();\n\nclass PikMyKid extends React.Component {\n componentDidMount = () => {\n this.clearCacheData()\n }\n // Function to clear complete cache data\n clearCacheData = () => {\n caches.keys().then((names) => {\n names.forEach((name) => {\n caches.delete(name);\n });\n });\n console.log('Complete Cache Cleared')\n };\n render() {\n return (\n \n \n \n \n \n \n \n\n \n \n \n );\n }\n}\n\n// if (\"serviceWorker\" in navigator) {\n// navigator.serviceWorker\n// .register(\"firebase-messaging-sw.js\")\n// .then(function(registration) {\n// console.log(\"Registration successful, scope is:\", registration.scope);\n// })\n// .catch(function(err) {\n// console.log(\"Service worker registration failed, error:\", err);\n// });\n// }\n\nconst reactRoot = document.getElementById(\"root\");\n\nrender(, reactRoot);\n"],"sourceRoot":""}