{"version":3,"sources":["a3.pilot.app.js","a3.pilot.main.js","app.module.js","app.route.js","app.run.js","app.settings.js","app.version.js","Graph.settings.js","MyDirectives.module.js","AirportContacts/AirportContacts.service.js","AirportHotels/AirportHotels.service.js","Bucket/Bucket.controller.js","Bucket/Bucket.service.js","Bucket/BucketDayInfo.controller.js","Bucket/BucketModal.controller.js","Bucket/Proposal.directive.js","Bucket/ProposalInfo.controller.js","Common/DataCleaner.service.js","Common/fltSplit.filter.js","Common/Generic.service.js","Common/GenericModal.service.js","Common/GenericValues.service.js","Common/IndexedDB.service.js","Common/PushNotifier.service.js","Common/SettingsMain.service.js","Common/Update.service.js","Common/Utils.service.js","CalendarNotifications/Autoland.service.js","CalendarNotifications/calendarNotifications.directive.js","CalendarNotifications/ReminderModal.controller.js","CrewCheckIn/CheckIn.service.js","CrewCheckIn/CrewCheckInModal.controller.js","CrewInfo/CrewCall.controller.js","CrewInfo/CrewCall.service.js","CrewInfo/CrewCheckIn.service.js","CrewInfo/CrewInfo.directive.js","CrewInfo/CrewPreviousInfo.directive.js","CrewInfo/LogCall.service.js","CrewInfo/PreviousDuty.service.js","CrewRoute/CrewHotels.service.js","CrewRoute/CrewMeals.service.js","CrewRoute/CrewRoute.controller.js","CrewRoute/CrewRoute.service.js","CrewRoute/CrewRouteRefreshModal.controller.js","Extenders/Array.js","Extenders/Date.js","GroundDuties/GroundDuty.controller.js","Extenders/String.js","Directives/autoRefreshFlight.directive.js","Directives/basic-footer.directive.js","Directives/chart.directive.js","Directives/crew-meals.directive.js","Directives/flight-crew.directive.js","Directives/flightFooter.directive.js","Directives/flightHeader.directive.js","Directives/ground-crew.directives.js","Directives/ground-header.directive.js","Directives/ground-services.directive.js","Directives/mainFooter.directive.js","Directives/memos-by-category.directive.js","Directives/security-search.directive.js","Directives/showErrorMessage.directive.js","Directives/update-confirm.directive.js","Flights/AddFlight.controller.js","Flights/Calendar.controller.js","Flights/Flight.service.js","Flights/FlightCrewMember.service.js","Flights/SearchPastGDCtrl.controller.js","FlightInformation/AimsCrewMemos.directive.js","FlightInformation/AimsCrewMemos.service.js","FlightInformation/AircaftPositions.service.js","FlightInformation/event-history.directive.js","FlightInformation/flight-status.directive.js","FlightInformation/FlightConfig.controller.js","FlightInformation/FlightGate.controller .js","FlightInformation/FlightGate.service.js","FlightInformation/FlightInfo.controller.js","FlightInformation/ground-information.directive.js","FlightInformation/GroundServices.service.js","FlightInformation/PaxName.filter.js","FlightInformation/reports-panel.derective.js","FlightInformation/ssr.directive.js","FlightInformation/SyncPax.controller.js","FlightInformation/TurnAroundTimes.directive.js","GroundDuties/GroundDuty.service.js","GroundDuties/SearchPastGD.service.js","Helpers/encryptionInterceptor.service.js","Helpers/exceptionHandler.config.js","Helpers/http401interceptor.service.js","Helpers/httpCrewTokenInterceptor.service.js","Helpers/httpHeaderInterceptor.service.js","Helpers/httpProvider.config.js","Helpers/localStorageMD5.config.js","Helpers/Log.service.js","Helpers/UserToken.service.js","Helpers/Utilities.js","Training/competences.directive.js","Training/FlightCourse.controller.js","Training/instructions.directive.js","Training/training-menu.directive.js","LeaveRequest/FlexCombinations.directive.js","LeaveRequest/LeaveRequest.controller.js","LeaveRequest/LeaveRequest.service.js","LeaveRequest/LeaveRequestInstructions.controller.js","LeaveRequest/SpecificCombinations.directive.js","Login/Login.controller.js","Login/PilotAPI.service.js","Login/User.service.js","Memos/CalendarRedirectModal.controller.js","Memos/MandatoryModal.controller.js","Memos/Memo.service.js","Memos/MemoImages.service.js","Memos/MemoModal.controller.js","Memos/Memos.controller.js","Messages/Message.controller.js","Messages/Message.filter.js","Messages/Message.service.js","Messages/MessageModal.controller.js","Passengers/Passenger.controller.js","Passengers/Pax.controller .js","Passengers/PaxInfo.service.js","Report/AircraftType.service.js","Report/byCategory.filter.js","Report/OpenReportDialog.controller.js","Report/PilotReportLocalEdit.service.js","Report/PilotReportLocalEditCreator.service.js","Report/PilotReportSendToServer.service.js","Report/PilotReportSyncResult.service.js","Report/PilotReportTemplate.service.js","Report/Report.controller.js","Report/ReportGuid.service.js","Report/ReportsHistory.controller.js","Report/ReportsHistory.service.js","Report/searchTextFilterforCategories.filter.js","Report/ServerCabinReport.service.js","Report/ServerPilotReport.service.js","Report/unique.filter.js","Safety/Fatigue.controller.js","Safety/Safety.controller.js","Safety/SafetyReport.service.js","ScheduleAcknowledge/AcknowledgeModal.controller.js","ScheduleAcknowledge/ScheduleAcknowledge.service.js","SWUpdate/SWUpdate.service.js","Synch/InfoAPI.service.js","Synch/SyncAPI.service.js","Synch/Synch.controller.js","Synch/SyncLog.service.js","Ticket/Photo.service.js","Ticket/Ticket.controller.js","Ticket/TicketAPI.service.js","Ticket/TicketModal.controller.js","TrainingReadOnly/competences-read-only.directive.js","TrainingReadOnly/course-read-only.directive.js","TrainingReadOnly/grading-read-only.directive.js","TrainingReadOnly/pilot-function-read-only.directive.js","TrainingReadOnly/sector-history.directive.js","TrainingReadOnly/syllabus-progress-read-only.directive.js","TrainingReadOnly/syllabus-read-only.directive.js","Training/certificate-exam.directive.js","Training/CompetenceModal.controller.js","Training/course-footer.directive.js","Training/course.directive.js","Training/Course.service.js","Training/FlightSession.service.js","Training/grading.directive.js","Training/GroundCourse.controller.js","Training/media.directive.js","Training/ModuleHistory.controller.js","Training/non-eligible-trainees.directive.js","Training/NotificationModal.controller.js","Training/notifications.directive.js","Training/pilotFunction.directive.js","Training/releasable-module.directive.js","Training/release-warning.directive.js","Training/ReleaseSignatureModal.controller.js","Training/SignatureModal.controller.js","Training/syllabus-item-header.directive.js","Training/syllabus.directive.js","Training/TraineeSignatureModal.controller.js","Training/TrainingSession.service.js","Utilities/Debug.controller.js","Utilities/Debug.service.js","Utilities/ResetDevice.controller.js"],"names":["modalUpdates","isDownloanding","isCheckForUpdate","window","navigator","$","modal","backdrop","keyboard","show","removeClass","find","hide","success","addClass","setTimeout","noUpdate","failure","errorMessage","text","on","e","hasClass","location","reload","call","cacheHandler","cacheStatusValues","onDownloading","logEvent","onCached","onChecking","onProgress","onObsolete","onError","message","console","error","onNoUpdate","onUpdateReady","cache","swapCache","applicationCache","addEventListener","click","alert","url","origin","ajax","type","undefined","update","angular","bootstrap","document","a3_pilot_reports","module","routeConfig","$routeProvider","when","controller","templateUrl","reloadOnSearch","otherwise","redirectTo","config","runBlock","$rootScope","$timeout","$location","UserFactory","UserTokenFactory","PilotReportLocalEditFactory","SettingsMain","$anchorScroll","SWUpdateService","LogService","valid","$on","event","next","current","indexOf","$$path","isLoggedIn","preventDefault","path","initialize","serviceWorker","getRegistration","then","registration","SWRegistration","checkUpdates","yOffset","$$route","editingPage","getEditingPage","setEditingPage","getPilotReportLocalEditFromTemp","link","this","attr","debug","idbSupported","isOffline","onLine","user","getUser","token","setToken","run","constant","code","description","key","value","barOptions","pieDoughnutOptions","segmentShowStroke","segmentStrokeColor","segmentStrokeWidth","percentageInnerCutout","animationSteps","animationEasing","animateRotate","animateScale","legendTemplate","onAnimationComplete","showTooltip","segments","tooltipEvents","showTooltips","scaleShowGridLines","scaleGridLineColor","scaleGridLineWidth","scaleShowHorizontalLines","scaleShowVerticalLines","bezierCurve","bezierCurveTension","pointDot","pointDotRadius","pointDotStrokeWidth","pointHitDetectionRadius","datasetStroke","datasetStrokeWidth","datasetFill","directive","$q","URL","webkitURL","restrict","scope","maxwidth","maxheight","quality","imagetype","onfilechange","element","whenError","$apply","onFileFailureCallback","err","whenReady","img","src","HTMLCanvasElement","imageResult","dataURL","toDataURL","options","imageType","fileName","filename","fileType","onFileChangeCallback","data","onfileerror","bind","evt","target","dataTransfer","files","file","maxWidth","parseFloat","maxHeight","canvas","i","length","name","loadImage","parseMetaData","exif","orientation","get","AirportContactFactory","GenericService","objCallback","Iata","Contacts","objType","fromObjectList","objList","getAirportContactsFromStorage","list","setAirportContactsToStorage","airportContacts","saveAll","clearAirportContactsFromStorage","removeAll","getAirportContacts","airportIata","all","airport","filter","item","factory","AirportHotelFactory","Hotels","getAirportHotelsFromStorage","setAirportHotelsToStorage","airportHotels","clearAirportHotelsFromStorage","getAirportHotels","fltDate","forEach","hotel","fltActiveHotels","HotelPriorities","ActiveBegin","ActiveEnd","ActivePriority","PriorityNo","BucketCtrl","$scope","BucketFactory","MessageFactory","defaultCalendarDate","ownDuties","approvedDuties","state","isSecure","isUserSA","position","logged_user_info","aimsId","getCalendarData","showErrorMessage","selectedDate","getCalendarSelectedDate","progressBarBox","getDutyObject","responseData","Duties","SharedDuties","ApprovedDuties","number_of_messages","getMessagesFromStorage","number_of_messages_not_readen","getCountOfUnreadMessages","notification","duties","NewPendingProposalsCount","NewApprovedProposalsCount","NewRejectedProposalsCount","notificationText","IsUpdated","HasApprovedProposals","hasPrevious","createNotification","events","formatDuties","appvovedEvents","concat","fullCalendar","defaultView","calendarStyle","getCalendarViewStyle","detectMobile","getDefaultView","defaultDate","firstDay","lang","editable","draggable","selectable","selectHelper","unselectAuto","disableResizing","droppable","fixedWeekCount","nextDayThreshold","header","left","center","right","timeFormat","displayEventEnd","eventOrder","eventRender","prepend","each","className","index","icon","listViewColor","icons","otherInfos","info","label","append","num","add","eventResize","changeView","dayRender","eventClick","calEvent","shareable","isOwnDuty","isApproved","isOwnApproved","bootbox","dialog","title","buttons","cancel","callback","dutyId","gotoDayBucketView","_id","height","setCalendarViewStyle","calendar","setupView","status","statusText","dutiesEvents","log","eClassName","getEventClassName","eIcons","getEventIcons","eTitle","getEventTitle","TotalSharedDuties","eOtherInfos","getOtherInfos","Id","start","DutyBegin","DutyEnd","DutyDateS","end","sortOrder","Shareable","color","push","duty","Shared","Title","eventClass","class","hasApprovedTrade","infos","PendingProposalsCount","BookmarksCount","innerWidth","innerHeight","setCalendarSelectedDate","isOpen","closeButton","hideAll","$http","apiUrl","Content-Type","getDutyById","shareDuty","errorCallback","dutyMinified","Comments","CrewInformation","Email","Phone","post","acknowledgeProposal","proposalId","fetchProposal","createProposal","proposal","evaluateProposal","put","undoProposalStatus","fetchSharedProposal","sharedDutyId","BucketDayCtrl","$routeParams","$uibModal","isSharedLate","currentDutyId","initialized","displayMessage","hasErrors","showResponse","responseText","responseHasErrors","confirmUnshare","confirm","getData","fromShareBtn","open","size","resolve","result","refresh","isLoading","currentDutyDate","totalItems","currentPage","today","Date","dutyDay","trimmedToday","trimmedDutyDay","diffDays","DifferenceInDays","trimTime","contains","getDay","getUTCHours","checkLateShare","approvedDuty","Status","initProposalsView","returnToBucket","activeTab","proposals","toggle","Accepted","Rejected","Pending","Bookmarks","getProposalBorderStyle","textclass","State","hasTimeChange","showMobileProposalCriteria","filterProposal","isShown","isAcknowledged","hasProposals","pageOptions","viewby","itemsPerPage","maxSize","setPage","pageNo","setItemsPerPage","BucketModalCtrl","$uibModalInstance","closeDuty","close","submitted","$filter","terminal","actionDisabled","sharedCount","attrs","updateProposal","newProp","errorCall","loading","insertInformation","ProposedDuties","RequestedDuties","HasMultiDuties","AllDuties","tableMaxRowLength","matchedDuty","Proposed","Requested","createDisabled","proposedDutiesIdList","requestedDutiesIdList","onSuccessMessage","onFailureMessage","previousStatus","confirmCreateProposal","successful","Duty","Array","fetch","viewInfoModal","id","getFirstInfoIcon","getSecondInfoIcon","hasSecondInfoIcon","getTextColor","getFirstActionIcon","hasFirstActionIcon","getSecondActionIcon","hasSecondActionIcon","getFetchIcon","getInfoMessage","firstAction","secondaryAction","showEndDate","DifferenceInMinutes","showTime","dutyCommentElipsis","charNo","comments","substring","showFullComment","toggleFullCommentVisibility","ProposalInfoModalCtr","allDuties","previous","DataCleanerFactory","localStorageMD5Service","IndexedDBService","objCallbackRatings","deleteOrphanedLocalFlights","existingLocalFlights","finalLocalFlights","pilotReportLocalEdits","hasPilotReport","j","FlightId","FlightAimsId","set","CrewMealId","TimeStamp","deleteAllReports","remove","deleteAllServerData","deleteAllData","clearAll","deleteDatabase","deleteOrphanedLocalReports","existingLocalPilotReports","flights","finalLocalPilotReports","deleteSynchedLocalPilotReports","deleted","h","pilotReports","AuthorAimsId","deleteOldCrewMealsRatings","res","lastDate","setDate","getDate","crewMealIdsFiltered","r","saveOne","fltSplit","formattedFltNo","String","replace","objectType","initiate","objects","fromObject","obj","object","extend","arrayLength","GetId","getOne","save","updatedobject","newObjects","constructor","createNew","guid","deleteFromList","itemIndex","splice","newobjList","GenericValuesFactory","newObjList","newObj","Code","getValuesFromStorage","setValuesToStorage","clearValuesFromStorage","getValuesFromStorageAsStrings","objs","init","deferred","defer","request","indexedDB","onupgradeneeded","db","oldVersion","createObjectStore","keyPath","createIndex","unique","gameStore1","objectStoreNames","store4","store","onsuccess","onerror","reject","promise","storeName","entity","tx","transaction","objectStore","oncomplete","ex","onabort","addAll","count","getById","getByIndex","indexName","openCursor","IDBKeyRange","only","results","cursor","getAll","removeByIndex","openKeyCursor","primaryKey","clear","PushNotifier","FlightFactory","PaxInfoFactory","service","Generate","body","browserSupportsNotifications","Notification","permission","formatInfoToCompare","flightId","flightInfo","getFlightFromStorage","paxinfo","getPaxInfoFromStorage","CTOT","ATD","ETA","ETD","DepartureGate","DepartureStand","ScheduledDepartureTimeUTC","LastRun","toString","compareAndExtractChanges","currentData","updatedData","changes","ovalue","nvalue","moment","utc","format","oldValue","newValue","MessageGenerator","x","phrase","CheckForPermissionsAndSupport","permissionQ","requestPermission","PageMainSettings","EditingPage","getSettings","settings","settingsStored","calendarViewStyle","setSettings","UpdateService","SyncLogFactory","updater","synclog","getSyncLog","isUpdated","version","NeedsSync","updateSyncVersion","patcher","toSizeString","n","f","RangeError","v","u","gibi","tebi","Math","pow","toFixed","AutolandFactory","autolandSupportingAcTypes","autolandCount","flightsLeft","totalAEFlights","showAutolandModal","getAutolandFromStorage","setAutolandToStorage","AutolandOperations","totalAegeanFlights","aegeanFlights","date","firstDayOfMonth","getFullYear","getMonth","lastDayOfMonth","Position","IsDHC","includes","AcType","DutyDate","getAEFlightsForCurrentMonth","flightDates","map","a","ScheduledArrival","getFlightsLeftForCurrentMonth","autoland","canShowModal","canShowAutolandModal","calendarNotifications","MemoFactory","ScheduleAcknowledgeFactory","LeaveRequestFactory","CheckInFactory","GroundDutyFactory","$route","draftReports","completedReports","hasUnsetTraining","gotoUnreadMemos","gotoMessages","gotoLeaves","reportsCounter","parseInt","acknowledge","showPanel","showAutolandReminder","showScheduleChangesReminder","hasScheduleChanges","openCheckIn","showCheckInAction","hasManualEntry","gotoGroundDutyInfo","GroundDutyId","removeManualEntry","groundDuty","removeGroundDuty","leaveRequest","getLeaveRequestInformation","leaveRequestCloseDate","CloseDate","unreadMemosCount","getUnreadMemos","memos","Category","retVal","checkInInfo","getCheckInInfoFromStorage","AimsId","now","std","STD","minFetchTime","maxFetchTime","isAfter","isBefore","hasAEFlights","prepareAutolandData","$root","GroupStatus","showNotificationPanel","showScheduleChangesModal","showReminderModal","manualGroundDuties","getManualGroundDutiesFromStorage","manualDuties","hasPendingCourse","findManualEntries","ReminderModalCtrl","updateShowScheduleChangesModal","response","setCheckInInfoToStorage","checkInFailedCallBack","checkIn","confirmed","Confirmed","ErrorExplanation","updateCheckInCallBack","saveCheckInDelay","delayMinutes","DelayMinutes","updateCheckInDelayCallBack","CheckInModalCtrl","GetCheckInInfoFromServer","showContent","handleRefreshResponse","responseObj","handleSubmitResponse","handleDelayMessageResponse","CheckInAction","BackToActions","ConfirmCheckIn","SendDelayMessage","selectedDelayMinutes","onMinutesChange","minutes","numberDown","numberUp","CrewCallCtrl","crew","CrewCallFactory","LogCallFactory","crewId","beforeCall","logData","Requester","Requestee","saveLogCall","LogCall","CrewId","phoneNumber","getCrewCallsFromStorage","setCrewCallsToStorage","saveCrewCall","crewCall","getCrewCallFromStorage","getFlightCrewCallsFromStorage","cleanOldData","flightIds","phoneNumbers","keepingPhoneNumbers","dateSTD","fromUTC","dateSTA","STA","sta","cleanFlightCrewNumbers","saveFlightPhoneNumbers","PhoneNumber","FlightCheckInsFactory","CheckIn","WillBeThereAt","getCrewCheckInFromStorage","setCrewCheckInToStorage","updateFlightCrewCheckInToStorage","storedCheckInsFiltered","FlightInfo","getFlightCrewCheckInFromStorage","previousCheckIns","crewInfo","openPhoneConfirmation","showInfoRow","differentUser","phoneAvailable","previousDutyAvailable","PreviousDuty","isDifferent","phonesAvailable","checkInStatusAvailable","crewMembers","isDHC","crewPreviousInfo","filterByPreviousDuty","getLogCallsFromStorage","cleanLogsFromStorage","PreviousDutyFactory","getPreviousDutiesFromStorage","setPreviousDutiesToStorage","savePreviousDuty","previousDuty","getPreviousDutyFromStorage","getFlightPreviousDutiesFromStorage","previousDuties","cleanFlightPreviousDuties","saveFlightPreviousDuties","CrewHotelFactory","showHotelsAcTypes","CrewName","Base","Airport","HotelNo","HotelName","GroundTime","getCrewHotelsFromStorage","setCrewHotelsToStorage","showHotelsInCalendar","CrewMealFactory","CateringMealId","Description","ratingSubmitResponseObj","getCrewMealsFromStorage","setCrewMealsToStorage","getCrewMealFromStorage","cateringMealId","crewMeals","sendCrewMealsRatingReport","ratingForm","objectToAdd","saveReportSuccessCallBack","hasRating","crewMealId","some","getCrewMealsDidNotEatReasons","CrewRouteCtrl","CrewRouteFactory","dutyNo","crewRouteDuty","getCrewRouteFromStorage","groundDuties","getGroundDutiesByDutyNo","DutyType","Start","getFlightsByDutyNo","flight","ScheduledDeparture","crewRoute","currentDutyDay","differentDay","day1","day2","openRefresh","crewroute","transferData","sync","forceSync","DutyDay","DutyNo","Route","CrewMeals","getCrewRoutesFromStorage","setCrewRoutesToStorage","crewRoutes","setCourseCompleted","courseId","cr","FlightIds","getFlightsFromStorage","crewRouteCourse","Courses","CourseId","isSame","flightCourse","updateFlight","setCoursePending","CrewRouteRefreshModalCtrl","InfoAPIService","SyncAPIService","FlightSessionFactory","CourseFactory","isRefreshing","refreshResultsVisible","collapse","isCollapsed","Number","DataStatus","datatype","isTraining","currentFlights","currentGroundDuties","refreshCrewRoute","newFlights","newGroundDuties","needsSynch","updateFlightStatusSetter","setupFlightInfo","updateFlightLocalStorage","updateFlights","trainingCourses","TrainingCourses","trainingCourse","upsertCourse","course","applyTraineeInfoToSession","FlightDate","session","updateGroundStatusSetter","setupGroundInfo","updateGroundDutyLocalStorage","updateGroundDuties","prototype","dynamicSort","property","orderByAsc","sortedArray","sort","b","arr","toUTC","getTime","getTimezoneOffset","setHours","_DatetoJSON","toJSON","groundDutyId","_nonIterableSpread","TypeError","relatedTrainees","_iterableToArray","iter","Symbol","iterator","Object","from","_arrayWithoutHoles","elem","isArray","_arrayLikeToArray","len","not","arr2","_typeof","firstDate","secondDate","diffInMins","date1","date2","floor","diffInDays","MinutesToString","hours","mins","AddDays","days","valueOf","endsWith","suffix","startsWith","str","reverse","split","join","getHash","shaObj","jsSHA","autorefresh","$interval","AircaftPositionsFactory","browserNotificationsEnabled","autoUpdateInterval","autoUpdateIntervalTimeOffset","showAlternativeNotifications","showAutoUpdatePanel","ScheduledDepartureTimeStamp","autoflightInfoInterval","currentInfo","intervalTime","departureTime","depTimestamp","nowTimeStamp","absoluteMinuteDiff","abs","timerDelayGenerator","getPax","getFlightFromTotalFlights","paxInfo","aircaftPositions","getAircaftPositionsByFlightId","flightETA","updatedInfo","DepartureEU","radioModel","$watch","basicFooter","gotoMessageLibrary","gotoFAQs","gotoBucketCalendar","gotoCalendar","logout","clearActiveUser","template","chartObject","chart","context","getContext","width","Chart","chartType","chartInstance","destroy","$sce","attributes","togglePanel","panelId","route","HasRegChanged","noClicked","clearFormData","yesClicked","submitRatingClicked","flightCrewMeals","CrewMealsDescriptions","findIndex","HasRating","manageResponseMessage","canceClicked","isFlightPanel","isRoutePanel","routeCrewMeals","showCrewMealsPanel","Rating","DidNotEatReasonId","submitRatingMessage","DidNotEatReasons","popoverInfo","trustAsHtml","contentHtml","FlightCrewMeal","hasRegChanged","FlightNo","FlightDeparture","values","CrewMealsCateringIds","crewMealDetails","keys","getFlightsByFlightId","acTailNo","AcTailNo","panelToShow","flightFooter","orderByFilter","ReportGuidFactory","handleIfReport","report","getPilotReportLocalEditForFlight","ReportGuid","deleteTempReport","restoreGuid","openReportDialog","gotoFlight","returnTimeDiff","paxTimeDiffInMins","round","nextFlight","previousFlight","currentFlight","getFlightsByRoute","getPreviousAndNextFlights","messagesCount","unreadMessagesCount","messages","getMemosForFlight","memosForCurrentFlight","getMessagesFromIds","ReadDt","departure","openSyncPopover","firstSyncWarning","secondSyncWarning","lastSync","enableSyncPopover","showTimeDiff","gotoFlightInfo","openPilotReport","encodeURIComponent","getLocalFlightFromStorage","serverReportForThisUser","getServerPilotReportForUser","serverReportsByAnotherUser","getServerPilotReportsByAnotherUser","localReport","ReportId","openReport","resetDevice","danger","gotoMemosLibrary","gotoPaxInfo","showMobileMenu","userPosition","SynchPaxAndGates","gotoTicket","goToSafetyReport","goToFatigueReport","syncWarning","toggleCrewList","dynamicSize","CrewMembers","Trainees","groundServices","GroundServicesFactory","PilotReportLocalEditCreatorFactory","arrival","isInFinalState","LineStatus","saveNewUsedState","createNewLocalReportForFlight","DepartureGroundServices","ArrivalGroundServices","saveReport","updateFlightFromReport","setPilotReportToStorage","getGroundServicesByStation","checkForNewGroundServices","mainFooter","getMemosFromStorage","memosCount","gotoMemos","leaveRequestInformation","gotoLeaveRequests","memosByCategory","MemoImagesFactory","day","filterMemos","distinctMemos","normalizeMemos","allMemos","distinctMemosAll","getMemoImagesFromStorage","allMemoImages","distinctData","sortData","imageId","normalizeMemoImages","distinctMemosImagesAll","q","deleteIndexedDB","setMemosToStorage","setMemoImagesToStorage","recreateIndexedDB","memo","memoList","LastUpdated","memoDateA","memoDateB","temp","getMemosForCrewRoute","getMemosForGroundDuty","openMemo","saveOneMemoToStorage","markGroundDutiesUnread","securitySearch","showSecurityMsg","securitySearchRequired","DepartureUK","DepartureCDG","DepartureCountry","Departure","PreviousEU","hasMessage","updateConfirm","needUpdate","waiting","checkVersionExpiration","AddFlightCtrl","AircraftTypeFactory","doCancel","doAdd","processForm","minSelectableDate","maxSelectableDate","minSelectableDateStr","maxSelectableDateStr","selectedTime","hstep","mstep","ismeridian","dateFormat","hourFormat","datepicker","opened","openDatepicker","createFlightFromUIValues","flightDate","formData","flightDateStr","flightSTD","flightTimeStr","getHours","getMinutes","flightNumber","flightDeparture","flightDestination","flightRegNo","flightAcType","createLocalFlight","actypes","getAircraftTypesFromStorage","aircraftTypes","formFlight","$valid","newFlight","saveLocalFlight","CalendarCtrl","TrainingSessionFactory","pendingOverdueReports","storageUsage","usedSize","isReload","NeedsToSync","getFlightsFromStorageAndCheckIfTooOld","getLocalFlightsAndMergeWithServerFlights","needsToSync","getGroundDutiesFromStorage","crewRoutesEvents","routes","crewRouteEvents","classname","second_icon","courseStatuses","courses","trainingStatus","dutyEnd","duration","diff","asHours","courseIds","flightSessions","dutyBegin","existingSessions","s","isBetween","HasLimitedInfo","trainees","formatCrewRoutes","groundDutiesEvents","groundEvents","RelatedGroundDuties","coursesFlat","relatedDutyCourse","groundSessions","existingSession","Unread","formatGroundDuties","flightEvents","getRoute","TrainingIndicatorCode","IsScheduleChanged","isScheduleChanged","formatFlights","specialDates","getScheduleChangesFromStorage","crewHotelsEvents","hotels","endOf","formatHotels","cell","objdate","_d","dayClick","gotoCrewRouteInfo","lastLog","canShowSync","isOpenUpdateModal","openSynch","getMandatoryUnreadMemos","mandatoryUnread","addFlight","searchPastGroundDuties","setLastShow","synchresult","savedGroundSessions","savedFlightSessions","$log","ServerPilotReportFactory","ServerCabinReportFactory","FlightCrewMemberFactory","liveVersion","Flight","CrewAimsId","Arrival","LineStatusDescr","LocalReportId","ServerReportLink","ScheduledDepartureDateUTC","LocalReportHasNothingToReport","ServerReportHasNothingToReport","CabinReportId","IsLocal","cabinReports","pilotReportStatusDescr","BookedC","BookedY","BookedInf","BookedPad","BookedChld","ActualC","ActualY","ActualInf","ActualPad","ActualChld","DepartureICAO","DepartureName","ArrivalICAO","ArrivalCountry","ArrivalName","DepartureTimezone","ArrivalTimezone","CallSign","FlightsFilters","Zones","getDescription","initializePilotReportStatus","getPilotReportStatusDescr","dataIsRecent","setFlightsToStorage","storeFlightsWithReportsAndMessages","flightsX","pilotReportsX","cabinReportsX","messagesX","pr","me","fi","pri","Source","constSourceStoredOwn","constSourceStoredOther","cri","mi","QueryType","trim","Country","FlightDirection","AirportA","AirportB","Registration","clearFlightsFromStorage","datetime","number","destination","regno","actype","localFlights","flightIndex","serverFlights","markScheduleChangedFlights","oldFlights","exists","lastScheduleDate","getLastScheduleDate","initializeFlights","mergeFlightInfo","currentFlightInfo","DepartureSchengen","ArrivalSchengen","ArrivalEU","ATA","DepartureCountryISO","ArrivalCountryISO","getCabinReportId","CabinReportLink","allflights","reportIndex","userAimsId","hasServerReportForThisUser","hasServerReportsByAnotherUser","NothingToReport","ReportedItems","GenericModalFactory","FlightCrewMember","sex","shortname","SearchPastGDCtrl","PastGroundDutyFactory","isCourseLimited","hasError","closeModal","searchGD","getPastGroundDuties","availableCources","pendingDuties","pendingGroundDuties","isManualEntry","addGroundDuty","aimsCrewMemos","AimsCrewMemosFactory","getAimsCrewMemosByDate","Line","OrderNo","getAimsCrewMemosFromStorage","setAimsCrewMemosToStorage","clearAimsCrewMemosFactoryFromStorage","crewMemos","datesMemos","PreviousFlightNo","PreviousStation","PreviousSTA","PreviousETA","PreviousATA","PreviousGATE","PreviousSTAND","NextFlightNo","NextStation","NextSTD","NextETD","NextATD","NextGATE","NextSTAND","getAircaftPositionsFromStorage","setAircaftPositionsToStorage","clearAircaftPositionsFromStorage","updateAircraftPositionsToStorage","aircraftPositions","flightStatus","FlightConfigCtrl","dismiss","ETAdate","STDdate","ETAtimestamp","STDtimestamp","setUTCFullYear","getUTCFullYear","setUTCMonth","getUTCMonth","setUTCDate","getUTCDate","FlightGateCtrl","FlightGateFactory","items","distinct_gates","searchFilters","gates","getAfterSTDFromStorage","isConnectedFlightClose","connection","connFlightDate","TimeDifference","time","timeString","sign","dayString","ms","daysms","hoursms","substr","IsOld","searchText","addFilter","filters","toUpperCase","applyFilter","removeFilter","TotalFlights","Dep","connectingTime","STD_lcl","flightGateTime","Codeshares","distinct_gate","Gate","DepGate","Arr","pax","UpdatedDate","lastUpdate","flightArrivalTime","timeDate","newFlightgates","hasGates","FlightGate","STD_Diff","STA_Diff","STA_lcl","ETD_lcl","ETA_lcl","DepStand","previousUpdate","previousGate","previousSTD","previousSTD_lcl","previousSTD_Diff","previousSTA","previousSTA_lcl","previousSTA_Diff","dtSTD","dtSTA","dtETD","dtETA","dtSTD_lcl","dtSTA_lcl","dtETD_lcl","dtETA_lcl","timeSTD","timeSTA","timeETD","timeETA","timeSTD_lcl","timeSTA_lcl","timeETD_lcl","timeETA_lcl","hasETD","hasETA","depDelay","arrDelay","setUpdatedNow","gateChanged","stdChanged","staChanged","stdDiffChanged","staDiffChanged","changesToString","getKey","stringIsoToDateTime","dt","year","month","stringIsoToDateString","stringIsoToTimeString","self","hour","min","getFromStorage","setToStorage","processUpdatedData","listPrevious","flightPrevious","hasChanged","previousLength","p","dep","flightgates","dateETD","FlightInfoCtrl","showCatIIApprachAcTypes","showGroundInfoAcTypes","hasIcon","crewCheckInStatuses","dutyDate","crewPhoneNumbers","hideSidePanel","shownSideMenu","sideMenuItems","showSidePanel","menuItem","html","goToPanel","hash","onlyUnique","phoneNumberInfo","startOf","previousDutyInfo","isFlight","arrivalDate","showArrivalDate","departureDate","showDepartureDate","showDate","GroundDutyDate","statuses","flightCrewPreviousDuty","cabinCrewPreviousDuty","dhcCrewPreviousDuty","hasPreviousDuties","dayOfFlight","showCatIIApprachSection","showGroundInfoSection","isEnabled","isPanelOpen","IsProvisional","showConnFlights","flightZones","zones","zoneTitles","Class","zone","RenderFlightZones","openMessage","markReaden","getTextClass","getTopClass","getBottomClass","crewChart","cp","fo","sa","fa","dhcCp","dhcFo","dhcSa","dhcFa","labels","datasets","fillColor","strokeColor","highlightFill","highlightStroke","generateCrewChart","cStat","PaxTotalC","ConfigurationC","yStat","PaxTotalY","ConfigurationY","listSentTimestamp","MCT","openFlightConfig","selectedItem","toggleViewMode","openGates","groundInfo","printHotelType","HotelType","printContactType","contactType","stations","stationsInfo","filterHotelType","filterContactType","showInfo","station","stationInfo","Name","ActiveHotels","ActiveContacts","ActiveGeneralInfo","contactInfo","ContactTypes","distinct","ContactType","findDistinctContactTypes","hotelInfo","HotelTypes","findDistinctHotelTypes","objCallBack","Station","getGroundServicesFromStorage","setGroundServicesToStorage","Services","IsDefault","Used","clearGroundServicesFromStorage","paxNames","input","PassengerSummaryC","Passengers","PassengerSummaryY","PRM","UMNR","DEP","reportsPanel","showSafetyReport","trimmedFlightDate","openCabinReport","ssr","ssrCodes","showRecomendedWaterAcTypes","totalPax","startDate","endDate","detailedInfo","properties","propertiesArray","htmlPopover","Total","FQTVGold","FQTVSilver","DEAF","BLND","DPNA","INAD","MEDA","CBBG","OTH","showFQTVGold","showFQTVSilver","showUMNR","showPRM","showDEAF","showBLND","showDPNA","showDEP","showINAD","showMEDA","showCBBG","showOTH","waterQuantity","showRecomendedWater","SyncPaxCtrl","hideElements","showOnSuccess","showOnEmptyData","showOnSuccessNoFlightData","showOnOutOfDateRange","isFetchingFlightData","flightDataStatus","updateStatusGenerator","newDuty","Error","msg","JSON","stringify","CabinServiceManagementLists","turnAroundTimes","turnAroundTimesSupportingAcTypes","showTaTpanel","supportsTurnAround","TaTMinutes","startofTAT","prevATA","prevSTA","lateArrival","inadequateGroundTime","comparedValue","ShowlateArrival","GroundDutyCtrl","toggleEditMode","selectTrainee","trainee","Absent","updateGroundDuty","dutyCourses","refreshGroundDuty","DutyId","CourseIds","refreshSuccess","getGroundDutyFromStorage","getGroundDutyActiveCourses","traineesFlat","related","DutyDescription","Instructors","setGroundDutiesToStorage","instructors","IsInstructor","mergeGroundDutyInfo","currentGroundDutyInfo","GroundDutyNo","apply","_toConsumableArray","groundDutyCourse","allCoursesAreCompleted","every","relatedDuty","mergeGroundDutiesToStorage","incomingDuty","incomingTraineesFlat","incomingTrainee","existingDuty","existingTraineesFlat","existingTrainee","encryptionInterceptor","method","encryptedData","absolutePath","lastIndexOf","exceptionConfig","$provide","decorator","extendExceptionHandler","$delegate","exception","cause","http401interceptor","headers","isError","responseError","rejection","httpCrewTokenInterceptor","$$url","expiresAt","crewToken","expires","httpHeaderInterceptor","aimsIdToString","toJson","httpProviderConfig","$httpProvider","defaults","useXDomain","common","interceptors","localStorageMD5Config","localStorageMD5ServiceProvider","localStorageServiceProvider","exec","href","setStorageType","setPrefix","setStorageCookie","enableCompression","$injector","$window","lastError","stackTrace","getToken","contentType","errorUrl","beforeSend","setRequestHeader","loggingError","warn","stack","arguments","errorDescr","timestamp","postFilter","s4","random","sort_by","field","primer","A","B","validateTraineeCompetences","Grading","_unsupportedIterableToArray","GradingMessage","competence","GradeA","GradeB","o","minLen","slice","test","IsMultiday","FlexCombination","seasonConfiguration","seasonRequest","sortSetupOrderNo","period","LeaveRequestPrioritySlots","setupOrderNo","MockLeaveRequestPrioritySlots","assign","LeaveRequestPriorityPeriods","temp2","fromJson","sortableOptions","handle","stop","removeSlot","slotIndex","LeaveRequestPrioritySlotsHelper","LeaveRequestCtrl","setupMockLeaveRequestPriorities","priorities","slots","tempOrderNo","findSlot","onSuccessSendRequest","closeDateStr","LeaveRequestInformation","ShowSuccessMessage","ShowErrorMessage","onErrorSendRequest","getRandomBorderColor","season","cssClass","Configuration","getRandomTextColor","IsValidLeaveRequest","isValid","LeaveRequest","RequestNoleave","invalidSelectedLeaveDays","LeaveRequestSeasons","LeaveRequestPriorities","HasInvalidPeriod","showHelp","showSuccessLeaveApplicationMessage","getConfigurationDetails","QualificationGroup","RequestLessDays","RequestNoLeave","YearId","MemberId","seasons","HasSpecificCombinations","Type","SeasonId","StartDate","EndDate","Slots","Configurations","ConfigurationId","mergeRequest","Seasons","leaveRequestSeason","configurationDays","Days","Priority","initializeNewRequest","updateLeaveRequestSeason","Periods","ConfigurationPeriodId","parse","totalDays","hasConfig","LeaveDays","showCombo","radioConfigurationModel","sendRequest","saveLeaveRequest","addComment","leaveRequestApiURL","saveLeaveRequestInformation","cleanRequest","LeaveRequestInstructionsCtrl","normalizePage","page","instructionPages","nextPage","previousPage","SpecificCombinations","seasonRequests","recalculatePriorities","specificCombinations","resetEditablePeriods","isEditable","IsEditEnabled","selectEditablePeriod","selectedSlotTemp","selectedRequestTemp","selectedSlotDaysTemp","updateEditablePeriod","slot","removeSpecificCombination","priority","indexOfRemovedObj","addNewSpecificCombination","newSpecificCombinationPriority","getBorderClass","hasEmptyFields","hasFilledFields","isDisabled","CSSclass","EndDay","StartDay","LoginCtrl","isSupported","isLoggingIn","goSecure","errorName","goNormal","moreInfo","toggleMoreInfo","un","val","pw","formLogin","txtName","$setViewValue","txtPass","username","$modelValue","password","login","tokenExtended","showTokenExtensionForm","Message","showExtendTokenBootBox","extendToken","getElementById","readOnly","PilotAPIService","hashedPwd","syncDialogLastDt","aimsid","setUser","setActiveUser","act","onfinally","localUser","newHashedPwd","usr","Token","CalendarRedirectModalCtrl","MandatoryModalCtrl","gotoMandatoryUnreadMemos","Memos","Memo","addMemoToStorage","ValidateCountryCategory","criteria","isDepartureCategory","isArrivalCategory","Special","Field","FieldOptional","departureField","arrivalField","special","isDeparture","isArrival","PassengersHasSsrCode","memoCriterion","PassengerSummaryX","isValidZone","CriteriaZone","FlightZones","getAllUnreadGroundDutyMemos","memosCollection","unreadGroundDutyMemos","MemoCriteria","clearMemosFromStorage","flightMemos","ValidFrom","ValidTo","AcRegistration","RouteStart","RouteEnd","ViceVersa","TrainingIndicatorId","getStoredMemosIds","memoIds","memoIdRead","deleteMemoFromStorage","MemoId","setMemosFromServer","memoIdsToSend","lastSyncDate","IsMemoIncluded","IsNew","groundDutyMemos","fromDutyDate","toDutyDate","getAllPaxInfoFromStorage","paxInfoResult","inserted","g","Zone","IsMandatory","z","addMemoImageToStorage","MemoImage","MemoImages","saveOneMemoImageToStorage","deleteMemoImageFromStorage","MemoImageId","deleteMemoImageByMemoId","setImagesToServer","images","clearMemoImagesFromStorage","getMemoImagesByIndex","MemoModalCtrl","hasCountry","hasFlightNo","hasAirport","hasRoute","hasAcType","hasZone","hasEuropean","hasSchengen","hasAcRegistration","hasSsrCode","hasTrainingIndicator","hasGroundDuties","hasNone","showImage","image","Image","write","outerHTML","Body","MemosCtrl","searchResultsCount","sum","searchResults","MemosByCategories","filterList","selectMemoCategory","category","selected","toggleSidePanel","searchMemos","filteredMemos","toLowerCase","newList","memoTitle","memoBody","select","active","tommorowTimestamp","expired","MessageCtrl","messageCount","isEnable","AuthorName","PositionCP","PositionFA","PositionFO","PositionSA","FeedbackCause","setMessagesToStorage","clearMessagesFromStorage","Ids","selectedMessages","getUnreadMessages","filteredMessages","messageId","markReadAsSynched","readMessages","Synched","getUnsynchedReadMessages","filtered","storeMessagesFromServer","MessageModalCtrl","messageBody","PassengerCtrl","passenger","PaxCtrl","showMobileMenuFilters","filterPax","filterPaxC","initializeFilters","filterPaxY","filterAdults","filterChildren","filterInfants","filterFqtvSilver","filterFqtvGold","filterConnections","showConnections","filterUMs","filterSpecialMeals","showMeals","filterWheelchair","filterAssistance","filterDeportees","filterDHC","viewMode","mode","showPaxName","showDetails","filterRow","row","filterFqtv","Columns","filterCol","howClose","openPassenger","inputObject","IsEmptySeat","SeatMode","resetFilters","initializeViewMode","specialMeals","connectingPax","ConnectingFlights","Seatmap","SpecialMeal","SpecialMealB","ConnectingFlightId","Connection","col","IsValid","Cabin","InfantName","Fqtv","SSR","IsUMNR","TierLevel","IsGroupPRM","IsDEAF","IsBLND","IsDPNA","IsINAD","IsGroupDEP","STD_utc","STA_utc","MarketingFlightNos","SupplementaryInfo","Offpoints","ConnFlights","curtainRows","Statistics","GetStatistics","cabinType","RowNo","savePaxInfoToStorage","paxInfos","setPaxInfoToStorage","updatePaxInfo","toObjectList","setAircraftTypesToStorage","clearAircraftTypesFromStorage","questions","query","out","CategoryLabel","Label","OpenReportDialogCtrl","canCreateNewLocalReport","allServerReports","IsSameUser","serverReports","createNewLocalReport","openLocalReport","openServerReport","PilotReportLocalEdit","AuthorId","Created","Sections","ActiveItems","WarningItems","AutolandSatisfactory","AutolandUnsatisfactory","AutolandWorkOrderNo","AutolandWorkOrderNoIsValid","catApproachUnsatisfactory","catApproachSatisfactory","GroundServicesSectionHasValue","updateTotals","saveReportAsTemp","allActiveItems","allWarningItems","sectionCount","sectionActiveItems","sectionWarningItems","itemCount","Items","ItemHasValue","ItemValue","allReports","getPilotReportsFromStorage","setPilotReportsToStorage","getPilotReportLocalEdit","reportGuid","depStorageGroundServices","found","ServiceType","deleteReport","updatedReports","pilotReportLocalEdit","getPilotReportLocalEditCountThatNeedToBeSynched","getPilotReportLocalEditThatNeedToBeSynched","getNewReport","markReportAsSynched","PilotReportTemplateFactory","flightAimsId","existingReport","newReportGuid","getNextGuid","reportTemplate","getPilotReportTemplateFromStorage","newReport","PilotReportSendToServerFactory","PilotReportSendToServer","AuthorCrewId","AuthorCrewAimsId","Autoland","PilotReportSendToServerItem","TemplateItemId","Value","Remarks","getReportFromPilotReportLocalEdit","newItem","getCompletedListFromPilotReportLocalEdits","cabinReportLocalEdits","fixUsedValueLS","PilotReportSyncResultFactory","Result","getSyncResult","syncResults","getPilotReportSyncResultsFromStorage","setPilotReportSyncResultsToStorage","pilotReportSyncResults","clearPilotReportSyncResultsFromStorage","getSuccesses","getFailures","PilotReportTemplate","PilotReportTemplateItem","PresetComments","PilotReportTemplateSection","rptt","sectionsTemp","sct","itemsTemp","itm","setPilotReportTemplateToStorage","pilotReportTemplate","clearPilotReportTemplateFromStorage","ReportCtrl","aircraftLateArrivalReportId","inadequateGroundTimeReportId","discard","reportId","newLocalReport","infoSaveOperation","setCategory","section","newCategoryFilters","categoryFilters","categoryfilters","deleteReportClicked","autoAdjustTarget","autoAdjustTimer","autoAdjustRun","t","style","overflow","scrollHeight","saveDraftClicked","saveClicked","cancelClicked","reportItemValueChanged","adjustTextarea","$event","clearTimeout","clearRemarks","reportChanged","AutolandChanged","CatApproachChanged","isValidWorkOrderNo","workOrderNo","validationWorkOrderNo","isNaN","logIt","showAutolandSection","panels","showOnlyOne","visible","catApproach","GetCategoryCSS","itemsInCategory","completed","countDHC","schedullDepartureTimestamp","isFuture","showCompleted","compressedMode","showAll","categoryFilter","infosaveactiontype","infosaveaction","Guid","reportGuids","guidList","getReportGuidsFromStorage","setReportGuidsToStorage","clearReportGuidsFromStorage","validGuidIndex","resultingGuid","getRemainingReportGuids","repGuid","ReportsHistoryCtrl","ReportsHistoryFactory","reportType","fetchReports","getReportsHistory","contentToShow","reports","showError","handleResponse","checkConnectionStatus","ImageData","imageData","closeImage","isNothingToReport","constSourceLocalOwn","constSourceLocalOther","uniqueList","FatigueCtrl","SafetyReportFactory","confirmCreateFatigueReport","saveFatigueReport","alertStyle","responseMessage","flightNo","flightDep","flightArr","flightRegistration","occurenceTitle","attachedFiles","sizeLimitKb","fileTooLargeMsg","fileUploaded","fileResult","uploadedFile","fileBlobb","showMaxFiles","removeFile","attachedFile","arrayLenght","showMaxImages","appendPhoto","isIFileTooLarge","isLarge","submitFatigueReport","fatigueReport","SafetyCtrl","operationalPhases","clearForm","atcCallsign","alertType","usefulness","originalRa","subsequentRa","isRaFollowed","eventLocation","airMiss","trafficBearing","distance","altitude","relativeAltitude","visualContact","seatbelt","paxNo","birdSpecies","numberSeen","birdNo","birdSize","areaOfDamage","speed","hasPilotWarned","birdEventLocation","runwayUsed","eqpwsEventLocation","confirmCreateReport","saveSafetyReport","tcas","egpws","bird","selectedCategory","categories","usefulnesses","selectedPhase","meteo","trainingFlight","seatbeltSign","isFileTooLarge","showSelectedCategory","submitForm","formFlightReport","submitResponseObj","getResponse","getResponseFailed","safetyReport","aqdBaseURL","AcknowledgeModalCtrl","ConfirmAcknowledge","acknowledgeChanges","Results","dates","setAllScheduleChangesToStorage","scheduleChanges","dateList","dateS","stringToDate","fistChange","datesToAcknowledge","DatesWithChanges","updateScheduleChangesCallBack","acknowledgeFailedCallBack","register","reg","refreshing","postMessage","updateStatusSetter","dataStatus","array","AircraftPositions","updatePilotReportLocalEditFromSynch","FlightCourses","newDutyInfo","updateCrewCheckIn","crewRouteInfo","to","relativeFlightMatcher","oldflight","relativeFlights","oldFlightNo","lastDigit","setPilotReportReportToStorage","doSync","allSavedReports","reportsToSend","messagesToSend","phoneCallLog","CrewCallReports","syncData","SyncPilotReports","Messages","MemoIds","CrewCallLog","LastSyncDate","SyncPilotData","orgFlights","flightData","CrewRoutes","CateringCrewMeals","CrewHotels","CrewCheckInInfo","ScheduleChanges","ResponseSuccess","rawTrainingCourses","setCoursesFromServer","flightGates","AircaftPositions","AirportContacts","AirportHotels","serverMemoIds","Images","cabinServiceManagementLists","guids","GroundServices","reportResults","syncResult","setSyncLog","toDate","verifyFlightAimsIds","verifyFlightIds","missingIds","missingAimsIds","m","SynchCtrl","syncResultsVisible","isSynching","reportstobesynched","number_of_reports_to_sync","isFirstSync","isTooOldSync","syncVersion","reportCredits","syncTableData","doSynch","showSyncResults","ok","syncResultsTableData","syncSuccesses","syncFailures","reports_to_sync","sync_successes_descr","sync_failures_descr","unreadMessages","syncResultsOk","SyncLog","lastShow","can","newLog","syncLog","clearSyncLog","setLastScheduleDate","PhotoFactory","Photo","RemarksShort","PhotoData","FileType","TicketCtrl","TicketAPIService","ticket","photos","maximumAttatchedPhotos","photo","imageTooLargeMsg","gotoHome","Version","sendTicket","validateTicket","imageUploaded","isImageTooLarge","removePhoto","isLogged","DeviceData","sizeActual","getStoredValues","TicketModalCtrl","Competences","hasSelectedSubCompetence","SubCompetences","Selected","phases","leftScroll","querySelector","scrollLeft","rightScroll","selectedTraineeSession","traineeSession","showSession","selectedTraineeBadge","selectedAbsentTraineeSession","PhaseId","TraineesSessions","grading","GradeType","pilotFunctionReadOnly","history","phase","syllabusGroups","traineeSessionItems","showRemarks","oneAtATime","filterItems","showItem","hasRemarks","toggleItems","ItemsGrouped","syllabusGroup","Syllabus","SyllabusItems","syllabusItem","Tries","relatedSessionItem","SyllabusProgress","SyllabusItemId","TryGrading","attempt","historyTriesCount","isReadOnly","newTriesCount","TriesPerformedCount","completedItem","MandatoryCount","PanelClass","setPanelStyle","SelectedGroup","setPanelStyleByProgress","setPanelStyleBySelected","group","firstTry","certificateExam","collapseAll","validateTrainee","getRemainingCharacters","max","gradeUp","isCertificateValid","Grade","gradeMax","gradeDown","isExamValid","gradeMin","dutyCourse","isGround","gradeBase","ReleaseGrading","CertificateGradeBase","validateGrading","CertificateOutcome","calculateOutcome","updateSession","isAllOpen","Session","gradingStatus","sessions","EligibilityStatus","CompetenceModalCtrl","competences","gradingSelection","missingGrading","c","missingPerformanceIndicators","hasMandatory","sub","isCompetenceValid","manageCompetenceGrading","hadMandatory","hadOptional","hasOptional","MandatorySub","OptionalSub","showComments","GradeC","GradeD","GradeE","selectSubCompetence","openGradingModal","courseFooter","gotoGroundDuty","gotoCrewRoute","trainingFlightIds","TrainingFlightIds","Media","setReleaseStatus","ShowReleaseWarning","AvailableRelease","checkReleaseAvailability","requiresTraineeSignature","endOfSessionSignature","DayGrading","TraineeSignature","endOfModuleSignature","ReleasedPhase","RequiresTraineeSignature","Authorized","allSignaturesComplete","someSignaturesComplete","MinDays","MinSectors","phaseInfo","Phases","completedDays","completedSectors","Sessions","pastSession","Sectors","CompletedDays","CompletedSectors","ModuleType","AircraftTypes","visitedAircrafts","AircraftTypesVisited","inputAircrafts","pendingAircrafts","pairPendingAircrafts","pendingArviList","arvi","showReleaseWarning","selectedTrainee","mergeSyllabusItemWithSession","sessionItem","RepeatRequired","deepCopy","originalObject","setTraineeCompetences","traineeCompetences","traineeCompetence","existingCompetence","y","commonSub","setSubCompetenceValues","updated","first","last","manageSubmission","sessionSectors","sector","PM","PF","SessionSectorSeats","PilotFunctions","sectors","pilot","NonApplicable","PMsector","sec","isPM","PFsector","isInstructor","relevantSector","seat","Seat","submittedSession","SessionDate","GroundDutyIds","AircraftVisits","SelectedMedia","SyntheticDeviceId","selectedDevice","selection","ReleaseGradeType","TraineeSessions","SyllabusVersionId","PrepareSessionForSubmission","requiresInstructorSignature","syllabusSignature","SignatureRequired","selectedItems","traineeSelectedItems","Set","syllabusItemSignature","InstructorSignature","RequiresInstructorSignature","confirmationMsg","ConfirmationMessage","releaseGrading","modalInstance","submitSession","SaveSession","isReleased","sessionTrainee","syllabusItems","performedTries","mandatoryCount","Released","withRelease","SignaturePassword","syllabusPending","syllabus","isSyllabusGradingValid","IsGradable","gradableSyllabusItems","gradableSyllabusItemIds","invalidItems","gradingType","selectedTry","invalidGrading","invalidCompetences","SyllabusValidationErrors","updateTraineeSignatures","validateTraineeForm","border","scrollToTop","traineeDetailsMsg","InFlight","SyllabusErrors","isDayGradingValid","isReleaseGradingValid","isCertificateGradingValid","isDayCompetencesValid","isReleaseCompetencesValid","isGradeValid","gradingValidationInfo","isTraineeGradingValid","availableCourseInfo","oneTraineeAtATime","allAbsent","SubmitSession","dateAllowed","trainingDay","selectedSeats","isSeatValid","isPilotFunctionValid","traineesPending","hasNoAircraft","hasNoDevice","isGradingValid","invalidTrainees","isValidForm","getSessionTrainees","scrollTo","reloadReleasePanel","reloadRelease","showReleasePanel","availableCourse","isCheck","traineeSyllabi","TraineeIds","filterSelectedSyllabus","showTrainee","filterPresentTrainees","selectedPhaseIndex","CrewCoursePhases","releaseTrainee","crewIds","showReleaseBtn","showGroupReleaseBtn","releaseGroup","openTraineeSignature","signatureSuccess","resetSignature","getTraineeClass","textClass","allSyllabusCompleted","validSyllabusGrading","isReleaseSelected","toggleBtn","reloadFooter","dayCompetences","MandatorySubCompetences","OptionalSubCompetences","releaseCompetences","traineeSyllabus","historyTries","History","itemsHistory","allHistoryTries","historyTry","performedTry","ActionNo","InstructorName","SubmissionDate","AcTypes","pendingTriesLeft","pendingTries","isFirstTry","DefaultGrade","tries","sessionTries","tryItem","relatedSessionTry","extraTries","existingItem","SyllabusGrouping","setSyllabus","setTraineeSessions","getCourseFromStorage","getCoursesFromStorage","errorOnSaveCallback","localCourse","saveOneCourseToStorage","addCourseToStorage","setCoursesToStorage","Course","localCourses","IsCourseIncluded","updateCourseInfo","errorOnNetwork","traingingApiURL","FetchedTime","FetchedDutyCodes","LastFetchedDutyId","updateFlightCourseInfo","FetchedCrewRoute","getCoursesFromStorageByIds","selectedResults","setCourseOutdated","NeedsRefresh","FlightCourseCtrl","gotoCourse","stickySelectedTrainee","toggleView","refreshCourse","refreshErrorMsg","initCourse","courseTrainees","viewFromFlight","afterRefresh","getSession","CourseTrainees","SequenceWarning","isCourseComplete","IsCompleted","needsSubmit","fetched","HasLimitedSession","isCourseOutdated","headerMsg","hasPendingTraining","hasNotifications","manageCourseStatus","isEdit","savedCourse","getCrewRouteFlightTrainees","IsTrainee","addSessionToStorage","saveSessionToStorage","flatSullabusItems","flatItem","SessionId","SessionComments","ItemId","InstructorAimsId","createFlatHistorySullabusItem","mergeSyllabusWithHistory","_course$CourseTrainee","traineeEligibility","TraineeEligibilty","inactiveTrainees","eligibleTraineeIds","eligibleTrainees","crewCoursePhaseDutyNos","crewrouteTrainingIndicators","coursePhase","FlightTrainingIndicators","relatedDutyNos","relatedPhases","fti","firstPhase","PhaseStatus","RepeatRequestedItems","isSelected","createNewPhaseTrainees","nonEligibleTrainees","NonEligibleTrainees","EligibilityDesc","filterTraineesByEligibility","traineePhase","calculatePhaseStatus","hasSelectedPhase","isFirst","isLast","getSelectedPhase","ActivePhaseStatus","Selectable","invalidPhaseTrainee","mergeCourseWithSession","setSession","localSession","isNewSession","commentInput","filterValidTrainees","filterTrainee","saveComment","isDayGrading","hasCertificateExam","GroundCourseCtrl","applyAttendanceFromGroundDuty","availableRelease","tr","HasDayGrading","HasReleaseGrading","instructions","warningMessageText","viewModuleHistory","phaseId","isParallel","currentActiveOrderNo","SequentialWarning","oldSessions","historyPhase","hasHistory","StatusClass","BtnClass","TextClass","furtherAheadPhases","traineeInstructions","TraineeInstructions","examinerInstructions","ExaminerInstructions","continueSubmission","cancelSubmission","media","isObjectEmpty","addAircraftRow","selectedAircraft","aircraft","removeAircraftRow","acIndex","InSimulator","InAircraft","InClassroom","SyntheticDevices","ModuleHistoryCtrl","selectedSession","historyTrainee","selectedSubmittedSessionBadge","sessionId","initHistory","HistoryPhase","historyTrainees","hasSectors","hasDayGrading","hasReleaseGrading","ses","SectorsByAcType","acType","sectorSummary","totalSectors","allAcTypes","sectorGroup","SectorSummary","TotalSectors","setTraineeSummary","setHistoryTrainees","traineeSessionId","dutyTrainees","allEligibilityTrainees","dutyTrainee","courseTrainee","allCategory","categorizeTrainee","NotificationModalCtrl","notifications","showHistory","filterSession","showSessionTrainees","selectedSubmittedSession","selectSession","historyAvailable","SubmittedSessions","submittedDay","pilotFunction","selectSeat","leg","hasMultipleTrainees","otherPilotId","operatingPilots","otherSector","selectFunction","reloadPilotFunction","trainingFlights","instructor","traineeTrainingIndicator","createLegInfo","legs","traineeSeatOptions","instructorSeatOptions","SeatOptions","traineeFlightIds","crewMember","l","nonActiveLeg","nameArray","FirstName","LastName","pilotSector","existingInfo","incomingSector","existingSector","initializePilotFunctions","releasableModule","Submit","RadioModel","TraineeName","submitRelease","SubmitRelease","toggleTrainee","selectedCrewId","submittedSessions","releaseSession","CouldBeReleased","AllVisitedAcTypes","initializeTrainees","warningTrainees","filterSelectedTrainee","ReleaseSignatureModalCtrl","submit","successMessage","signaturePassword","responseTraineeCrewIds","traineeInfo","isConfirmed","confirmAircraft","aircraftVisits","requiredSignature","finalPendigArVis","released","pendingVisits","maxLength","maxList","hasPendingAircraftVisits","SignatureModalCtrl","confirmSubmit","releaseWarning","isGroundDuty","releaseSubmit","withGrading","allAvailable","notReleased","itemSelection","selectTry","pendingAttempt","selectGrading","triggerSyllabusClick","el","triggerHandler","updateTraineesSyllabus","updateTry","itemAutoSelection","hasCompetencesGrading","itemTry","tryCompetenceGrading","invalidItem","addTry","newTry","removeTry","pop","selectTryFromHeader","firstPendingTry","gradeFromHeader","TraineeAimsId","TraineeSignatureModalCtrl","signatureTrainee","confirmReset","traineeSign","credentials","Password","Username","PositionCode","authorizeTrainee","confirmation","trainingMenu","FullDate","savedCourses","StatusDesc","manageGroundCourseStatuses","Day","manageFlightCourseStatus","AIMS_ID","getGroundCourseTrainees","groundDutyTraineeDutyNos","GroundDutyCodes","gdc","FilterByRole","flightCrewTrainee","getDutySessions","DebugCtrl","DebugFactory","adminkey","authorized","checkAuthorized","verify","md5hash","CheckAuthorized","refreshStoredValues","Data","storedValues","addKeyName","updateAll","updateAllJson","exit","ResetDeviceCtrl","cancelReset"],"mappings":"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","file":"../a3.pilot.app.js","sourcesContent":["\"use strict\";\n\n//***Modal Dialog for Application Updates - non angular **/\nvar modalUpdates;\nvar isDownloanding = false;\nvar isCheckForUpdate = false;\n(function () {\n if ('applicationCache' in window && !('serviceWorker' in navigator)) {\n modalUpdates = $('.modal-updating').modal({\n backdrop: 'static',\n keyboard: true,\n show: false\n });\n\n modalUpdates.show = function () {\n modalUpdates.removeClass('update-success');\n modalUpdates.find('.progress').show();\n modalUpdates.find('.message-success').hide();\n modalUpdates.find('.message-danger').hide();\n modalUpdates.find('.message-no-update').hide();\n modalUpdates.find('.btn-update-retry').hide();\n modalUpdates.find('.btn-update-close').hide();\n modalUpdates.find('.btn-update-ok').hide();\n modalUpdates.modal('show');\n };\n\n modalUpdates.hide = function () {\n modalUpdates.modal('hide');\n };\n\n modalUpdates.success = function () {\n modalUpdates.find('.progress').hide();\n modalUpdates.find('.message-success').show();\n modalUpdates.find('.message-no-update').hide();\n modalUpdates.find('.message-danger').hide();\n modalUpdates.find('.btn-update-close').hide();\n modalUpdates.find('.btn-update-ok').show();\n modalUpdates.addClass('update-success');\n setTimeout(function () {\n modalUpdates.modal('hide');\n }, 2000);\n };\n\n modalUpdates.noUpdate = function () {\n modalUpdates.show();\n modalUpdates.find('.progress').hide();\n modalUpdates.find('.message-success').hide();\n modalUpdates.find('.message-danger').hide();\n modalUpdates.find('.message-no-update').show();\n modalUpdates.find('.btn-update-retry').hide();\n modalUpdates.find('.btn-update-close').hide();\n modalUpdates.find('.btn-update-ok').show();\n isCheckForUpdate = false;\n };\n\n modalUpdates.failure = function (errorMessage) {\n modalUpdates.show();\n modalUpdates.find('.progress').hide();\n modalUpdates.find('.message-success').hide();\n modalUpdates.find('.message-danger').show();\n modalUpdates.find('.message-no-update').hide();\n modalUpdates.find('.btn-update-close').show();\n modalUpdates.find('.btn-update-ok').hide();\n\n if (errorMessage && errorMessage != '') {\n modalUpdates.find('.update-error').text(errorMessage);\n } else {\n modalUpdates.find('.update-error').text('');\n }\n };\n\n modalUpdates.on('hidden.bs.modal', function (e) {\n var b = modalUpdates.hasClass('update-success');\n if (b) location.reload(true);\n });\n }\n}).call(void 0); //** ApplicationCache Events & Actions **//\n\n(function () {\n ////////////////////////////////////////////////////index scripts (cache)////////////////////////////////////////////////////\n if ('applicationCache' in window && !('serviceWorker' in navigator)) {\n // Convenience array of status values\n var cacheHandler = function cacheHandler() {};\n\n cacheHandler.cacheStatusValues = [];\n cacheHandler.cacheStatusValues[0] = 'uncached';\n cacheHandler.cacheStatusValues[1] = 'idle';\n cacheHandler.cacheStatusValues[2] = 'checking';\n cacheHandler.cacheStatusValues[3] = 'downloading';\n cacheHandler.cacheStatusValues[4] = 'updateready';\n cacheHandler.cacheStatusValues[5] = 'obsolete';\n\n cacheHandler.onDownloading = function (e) {\n isDownloanding = true;\n modalUpdates.show();\n cacheHandler.logEvent(e);\n };\n\n cacheHandler.onCached = function (e) {\n modalUpdates.hide();\n cacheHandler.logEvent(e);\n };\n\n cacheHandler.onChecking = function (e) {\n //ShowWaitDialog();\n cacheHandler.logEvent(e);\n };\n\n cacheHandler.onProgress = function (e) {};\n\n cacheHandler.onObsolete = function (e) {};\n\n cacheHandler.onError = function (e) {\n //debugger;\n var message = \"Could not download application updates due to an unexpected error.\\n\" + \"make sure that cache.manifest is being served with MIME type: text/cache-manifest\"; //actual error message if any\n\n if (e.message) message = e.message;\n console.error(message); //hide update dialog if visible\n\n if (isDownloanding) {\n modalUpdates.failure(message);\n } else {\n modalUpdates.hide();\n }\n };\n\n cacheHandler.onNoUpdate = function (e) {\n if (isCheckForUpdate) {\n modalUpdates.noUpdate();\n } else {\n modalUpdates.hide();\n }\n\n isDownloanding = false;\n cacheHandler.logEvent(e);\n };\n\n cacheHandler.onUpdateReady = function (e) {\n try {\n cache.swapCache();\n } catch (e) {}\n\n cacheHandler.logEvent(e);\n isDownloanding = false;\n modalUpdates.success(); //location.reload(true);\n }; // Log every event to the console\n\n\n cacheHandler.logEvent = function (e) {\n /*\r\n var status, type, message; //online, \r\n //online = (navigator.online) ? 'yes' : 'no';\r\n status = cacheHandler.cacheStatusValues[cache.status];\r\n type = e.type;\r\n message = '';//'online: ' + online;\r\n message += 'CACHE: event: ' + type;\r\n message += ', status: ' + status;\r\n if (type == 'error' && navigator.online) {\r\n \tmessage += ' (prolly a syntax error in manifest)';\r\n }\r\n console.log(message);\r\n */\n };\n\n var cache = window.applicationCache;\n cache.addEventListener('cached', cacheHandler.onCached, false);\n cache.addEventListener('checking', cacheHandler.onChecking, false);\n cache.addEventListener('downloading', cacheHandler.onDownloading, false);\n cache.addEventListener('error', cacheHandler.onError, false); //cache.addEventListener('error', cacheHandler.logEvent, false);\n\n cache.addEventListener('noupdate', cacheHandler.onNoUpdate, false);\n cache.addEventListener('obsolete', cacheHandler.onObsolete, false);\n cache.addEventListener('progress', cacheHandler.onProgress, false);\n cache.addEventListener('updateready', cacheHandler.onUpdateReady, false);\n }\n\n $('#update-error-btn').click(function () {\n var alert = $('.hidden-update-error');\n\n if (alert.hasClass('hidden')) {\n alert.removeClass('hidden');\n $('#update-error-btn').text(\"show less\");\n } else {\n alert.addClass('hidden');\n $('#update-error-btn').text(\"show more\");\n }\n });\n $('body').on('click', '#update-check-btn', function () {\n isCheckForUpdate = true;\n var url = location.origin;\n $.ajax({\n type: \"GET\",\n url: url,\n cache: false,\n success: function success() {\n //get cache\n var cache = window.applicationCache; // Update the user's cache\n\n if (cache != null || cache != undefined) {\n cache.update();\n }\n }\n /*,\r\n error: function(){ \r\n console.log('error');\r\n }*/\n\n });\n });\n}).call(void 0);\n\"use strict\";\n\n$(function () {\n angular.bootstrap(document, ['a3.pilot.reports']);\n});\nvar a3_pilot_reports = angular.module('a3.pilot.reports', [//angular modules\n'ngSanitize', 'ngRoute', 'ngTouch', //3rd party modules\n'angular-md5', 'LocalStorageModule', 'ui.bootstrap', 'nya.bootstrap.select', 'ui.toggle', 'ui.sortable', //Our modules\n'LocalStorageMD5Module', 'MyDirectives']);\n\"use strict\";\n\n(function () {\n 'use strict'; // setup routing\n\n a3_pilot_reports.config(routeConfig);\n /**\r\n * @memberof PilotReports\r\n * @ngdoc factory\r\n * @name routeConfig\r\n * @description \r\n * Route configuration\r\n * @ngInject\r\n */\n\n function routeConfig($routeProvider) {\n $routeProvider.when('/', {\n controller: 'CalendarCtrl',\n templateUrl: './views/calendar.html'\n }).when('/login', {\n controller: 'LoginCtrl',\n templateUrl: './views/login.html'\n }).when('/flightinfo/:flightId', {\n controller: 'FlightInfoCtrl',\n templateUrl: 'views/flight-info.html',\n reloadOnSearch: false\n }).when('/report/:reportId', {\n controller: 'ReportCtrl',\n templateUrl: './views/report.html'\n }).when('/report/:reportId/:flightId', {\n controller: 'ReportCtrl',\n templateUrl: './views/report.html'\n }).when('/pdf/:reportId', {\n controller: 'ReportCtrl',\n templateUrl: './views/report.html'\n }).when('/pax/:flightId', {\n controller: 'PaxCtrl',\n templateUrl: 'views/pax.html'\n }).when('/addflight', {\n controller: 'AddFlightCtrl',\n templateUrl: './views/addflight.html'\n }).when('/reset', {\n controller: 'ResetDeviceCtrl',\n templateUrl: './views/reset.html'\n }).when('/messages/:flightId', {\n controller: 'MessageCtrl',\n templateUrl: 'views/messages.html'\n }).when('/messages/', {\n controller: 'MessageCtrl',\n templateUrl: 'views/messages.html'\n }).when('/debug', {\n controller: 'DebugCtrl',\n templateUrl: './views/debug.html'\n }).when('/memos/:filter', {\n controller: 'MemosCtrl',\n templateUrl: 'views/Memos/memos.html'\n }).when('/memos', {\n controller: 'MemosCtrl',\n templateUrl: 'views/Memos/memos.html'\n }).when('/ticket', {\n controller: 'TicketCtrl',\n templateUrl: 'views/ticket.html'\n }).when('/bucket', {\n controller: 'BucketCtrl',\n templateUrl: 'views/Bucket/bucketCalendar.html'\n }).when('/bucketDay/:dutyId', {\n controller: 'BucketDayCtrl',\n templateUrl: 'views/Bucket/bucketDay.html'\n }).when('/leaverequest', {\n controller: 'LeaveRequestCtrl',\n templateUrl: 'views/LeaveRequest/leaveRequest.html'\n }).when('/groundDuty/:groundDutyId', {\n controller: 'GroundDutyCtrl',\n templateUrl: 'views/GroundDuty/groundDuty-info.html'\n }).when('/crewRoute/:dutyNo/:dutyDay', {\n controller: 'CrewRouteCtrl',\n templateUrl: 'views/CrewRoute/crew-route-info.html'\n }).when('/reportsHistory/:reportId/:flightId?/:reportType', {\n controller: 'ReportsHistoryCtrl',\n templateUrl: 'views/reportsHistory.html'\n }).when('/flightcourse/:courseId/:dutyNo/:dutyDay/:date', {\n controller: 'FlightCourseCtrl',\n templateUrl: 'views/Training/flightCourse.html'\n }).when('/flightcourse/:courseId/:dutyNo/:dutyDay/:date/:flightId', {\n controller: 'FlightCourseCtrl',\n templateUrl: 'views/Training/flightCourse.html'\n }).when('/groundcourse/:courseId/:dutyId/:date', {\n controller: 'GroundCourseCtrl',\n templateUrl: 'views/Training/groundCourse.html'\n }).when('/groundHistory/:courseId/:dutyId/:date/:phaseId', {\n controller: 'ModuleHistoryCtrl',\n templateUrl: 'views/Training/moduleHistory.html'\n }).when('/flightHistory/:courseId/:dutyNo/:dutyDay/:date/:phaseId', {\n controller: 'ModuleHistoryCtrl',\n templateUrl: 'views/Training/moduleHistory.html'\n }).when('/safetyreport/flightcrewreport/:flightId', {\n controller: 'SafetyCtrl',\n templateUrl: 'views/Safety/flightCrewReport.html'\n }).when('/safetyreport/fatiguereport/:flightId', {\n controller: 'FatigueCtrl',\n templateUrl: 'views/Safety/fatigueReport.html'\n }).otherwise({\n redirectTo: '/'\n });\n }\n})();\n\"use strict\";\n\n(function () {\n 'use strict';\n\n a3_pilot_reports.run(runBlock);\n /* @ngInject */\n\n function runBlock($rootScope, $timeout, $location, UserFactory, UserTokenFactory, PilotReportLocalEditFactory, SettingsMain, $anchorScroll, SWUpdateService, LogService) {\n //make sure that each route change validates that the user is still logged in\n var valid = ['/login', '/reset', '/debug', '/ticket'];\n $rootScope.$on('$routeChangeStart', function (event, next, current) {\n if (valid.indexOf($location.$$path) < 0 && !UserFactory.isLoggedIn()) {\n event.preventDefault();\n $location.path('/login');\n } //START - SERVICE WORKERS\n\n\n if ('serviceWorker' in navigator) {\n SWUpdateService.initialize();\n navigator.serviceWorker.getRegistration().then(function (registration) {\n $rootScope.SWRegistration = registration;\n });\n SWUpdateService.checkUpdates($rootScope.SWRegistration);\n } //END - SERVICE WORKERS\n\n\n $anchorScroll.yOffset = 100;\n\n if (!current || !current.$$route || current.$$route.controller != next.$$route.controller) {\n //Check if temp report of any kind exists\n var editingPage = SettingsMain.getEditingPage();\n SettingsMain.setEditingPage(null);\n\n if (editingPage == 'report') {\n // check if a temp report exists in local storage\n if (PilotReportLocalEditFactory.getPilotReportLocalEditFromTemp() != null) {\n $location.path(\"report/temp\");\n }\n }\n }\n });\n $(\"body\").on(\"click\", \".memo-body a\", function () {\n var link = $(this).attr(\"href\");\n\n if (link && link.indexOf(\"surveymonkey\") > 0) {\n LogService.debug(link);\n }\n });\n $rootScope.idbSupported = \"indexedDB\" in window;\n $rootScope.isOffline = !window.navigator.onLine;\n window.addEventListener('offline', function (e) {\n $timeout($rootScope.isOffline = !window.navigator.onLine);\n });\n window.addEventListener('online', function (e) {\n $timeout($rootScope.isOffline = !window.navigator.onLine);\n }); //maintain the user token, outside the localStorage, needed for submitting js errors\n\n var user = UserFactory.getUser();\n if (user && user.token) UserTokenFactory.setToken(user.token);else UserTokenFactory.setToken('');\n }\n\n ;\n})();\n\"use strict\";\n\n(function () {\n // Warning!!! This an auto generated file. Any Changes will be lost. If u want to add or edit go to config.json \n a3_pilot_reports.constant(\"liveVersion\", true);\n a3_pilot_reports.constant(\"defaultCalendarDate\", null);\n a3_pilot_reports.constant(\"defaultBucketDate\", null);\n a3_pilot_reports.constant(\"aircraftLateArrivalReportId\", 169);\n a3_pilot_reports.constant(\"inadequateGroundTimeReportId\", 170);\n a3_pilot_reports.constant(\"apiUrl\", \"https://flightloguat.aegeanair.com/api/v2.0\");\n a3_pilot_reports.constant(\"ssrCodes\", [{\n \"code\": \"AOXY\",\n \"description\": \"Airline Supplied Oxygen\"\n }, {\n \"code\": \"AVIH\",\n \"description\": \"Animal in Hold\"\n }, {\n \"code\": \"AVML\",\n \"description\": \"Vegetarian Hindu meal\"\n }, {\n \"code\": \"BBNL\",\n \"description\": \"Baby meal request\"\n }, {\n \"code\": \"BIKE\",\n \"description\": \"Request for carriage of bicycle\"\n }, {\n \"code\": \"BLML\",\n \"description\": \"Bland meal request\"\n }, {\n \"code\": \"BLND\",\n \"description\": \"Blind passenger information\"\n }, {\n \"code\": \"CBBG\",\n \"description\": \"Bulky cabin baggage request\"\n }, {\n \"code\": \"CHLD\",\n \"description\": \"Child information\"\n }, {\n \"code\": \"CHML\",\n \"description\": \"Child Meal Request\"\n }, {\n \"code\": \"DBML\",\n \"description\": \"Diabetic meal request\"\n }, {\n \"code\": \"DEAF\",\n \"description\": \"Deaf passenger information\"\n }, {\n \"code\": \"DEPA\",\n \"description\": \"Accompanied Deportee Information\"\n }, {\n \"code\": \"DEPU\",\n \"description\": \"Deportee unaccompanied\"\n }, {\n \"code\": \"DHCS\",\n \"description\": \"Deadhead crew seating\"\n }, {\n \"code\": \"DPNA\",\n \"description\": \"Disabled passenger needing assistance\"\n }, {\n \"code\": \"EMIG\",\n \"description\": \"Emigrant\"\n }, {\n \"code\": \"ESAN\",\n \"description\": \"Passenger with emotional support/psychiatric\"\n }, {\n \"code\": \"ESCD\",\n \"description\": \"Passenger escorting deportee\"\n }, {\n \"code\": \"EXST\",\n \"description\": \"Request for extra seat\"\n }, {\n \"code\": \"FAMS\",\n \"description\": \"Family seating\"\n }, {\n \"code\": \"FPML\",\n \"description\": \"Fruit platter meal request\"\n }, {\n \"code\": \"FRED\",\n \"description\": \"Meal and assist request\"\n }, {\n \"code\": \"GFML\",\n \"description\": \"Gluten intolerant meal request\"\n }, {\n \"code\": \"GPST\",\n \"description\": \"Group seating request\"\n }, {\n \"code\": \"HAJJ\",\n \"description\": \"HAJJ Passengers\"\n }, {\n \"code\": \"HNML\",\n \"description\": \"Hindu meal request\"\n }, {\n \"code\": \"INAD\",\n \"description\": \"Inadmissable\"\n }, {\n \"code\": \"INFT\",\n \"description\": \"Infant information\"\n }, {\n \"code\": \"KSML\",\n \"description\": \"Kosher meal request\"\n }, {\n \"code\": \"LCML\",\n \"description\": \"Low calorie meal request\"\n }, {\n \"code\": \"LFML\",\n \"description\": \"Low fat meal request\"\n }, {\n \"code\": \"LSML\",\n \"description\": \"Low salt meal request\"\n }, {\n \"code\": \"MAAS\",\n \"description\": \"Meal and assist request\"\n }, {\n \"code\": \"MEDA\",\n \"description\": \"Medical assistance information\"\n }, {\n \"code\": \"MEQT\",\n \"description\": \"Medical equipment\"\n }, {\n \"code\": \"MOML\",\n \"description\": \"Halaal meal request\"\n }, {\n \"code\": \"NFML\",\n \"description\": \"No fish meal request\"\n }, {\n \"code\": \"NLML\",\n \"description\": \"Low lactose meal request\"\n }, {\n \"code\": \"NOML\",\n \"description\": \"Meal on board not required\"\n }, {\n \"code\": \"PETC\",\n \"description\": \"Pet in cabin request\"\n }, {\n \"code\": \"POXY\",\n \"description\": \"Passenger own oxygen\"\n }, {\n \"code\": \"RVML\",\n \"description\": \"Vegetarian raw meal request\"\n }, {\n \"code\": \"SEML\",\n \"description\": \"Seafood meal request\"\n }, {\n \"code\": \"SFML\",\n \"description\": \"Seafood meal request\"\n }, {\n \"code\": \"SPML\",\n \"description\": \"Special meal request\"\n }, {\n \"code\": \"SVAN\",\n \"description\": \"Passenger with service animal in cabin\"\n }, {\n \"code\": \"UMNR\",\n \"description\": \"Unaccompanied minor information\"\n }, {\n \"code\": \"VGML\",\n \"description\": \"Vegetarian vegan meal request\"\n }, {\n \"code\": \"VJML\",\n \"description\": \"Vegetarian Jain meal request\"\n }, {\n \"code\": \"VLML\",\n \"description\": \"Vegetarian Lacto-Ovo meal request\"\n }, {\n \"code\": \"VOML\",\n \"description\": \"Vegetarian Oriental meal request\"\n }, {\n \"code\": \"WCBD\",\n \"description\": \"Wheelchair Dry-cell battery request\"\n }, {\n \"code\": \"WCBW\",\n \"description\": \"Wheelchair Wet-cell battery request\"\n }, {\n \"code\": \"WCHC\",\n \"description\": \"Wheelchair To seat request\"\n }, {\n \"code\": \"WCHR\",\n \"description\": \"Wheelchair To aircraft door request\"\n }, {\n \"code\": \"WCHS\",\n \"description\": \"Wheelchair Up/down stairs request\"\n }, {\n \"code\": \"WCLB\",\n \"description\": \"Wheelchair - Lithium ion Battery\"\n }, {\n \"code\": \"WCMP\",\n \"description\": \"Wheelchair Manual powered request\"\n }, {\n \"code\": \"WCOB\",\n \"description\": \"Wheelchair On board request\"\n }, {\n \"code\": \"WEAP\",\n \"description\": \"WEAP Firearms or ammunition booked & carried as checked\"\n }, {\n \"code\": \"XBGS\",\n \"description\": \"DCS Excess Baggage Request\"\n }]);\n a3_pilot_reports.constant(\"bookmarkThreshold\", 15);\n a3_pilot_reports.constant(\"autolandSupportingAcTypes\", [\"319\", \"320\", \"321\", \"32Q\", \"32N\"]);\n a3_pilot_reports.constant(\"turnAroundTimesSupportingAcTypes\", [\"319\", \"320\", \"321\", \"32Q\", \"32N\"]);\n a3_pilot_reports.constant(\"showRecomendedWaterAcTypes\", [\"319\", \"320\", \"321\", \"32Q\", \"32N\"]);\n a3_pilot_reports.constant(\"showCatIIApprachAcTypes\", [\"DH4\", \"DH8\", \"AT4\"]);\n a3_pilot_reports.constant(\"showGroundInfoAcTypes\", [\"DH4\", \"DH8\", \"AT4\"]);\n a3_pilot_reports.constant(\"showHotelsAcTypes\", [\"DH4\", \"DH8\", \"AT4\"]);\n a3_pilot_reports.constant(\"operationalPhases\", [{\n \"key\": \"3287\",\n \"value\": \"On Stand\"\n }, {\n \"key\": \"3288\",\n \"value\": \"Towing\"\n }, {\n \"key\": \"9242\",\n \"value\": \"Towing - Stand to Stand\"\n }, {\n \"key\": \"9243\",\n \"value\": \"Towing - to/from maint\"\n }, {\n \"key\": \"3289\",\n \"value\": \"Parked\"\n }, {\n \"key\": \"3290\",\n \"value\": \"Pushback\"\n }, {\n \"key\": \"3291\",\n \"value\": \"Taxi-out\"\n }, {\n \"key\": \"3292\",\n \"value\": \"Take-off\"\n }, {\n \"key\": \"3293\",\n \"value\": \"Initial Climb\"\n }, {\n \"key\": \"3294\",\n \"value\": \"Climb\"\n }, {\n \"key\": \"3295\",\n \"value\": \"Cruise\"\n }, {\n \"key\": \"3296\",\n \"value\": \"Descent\"\n }, {\n \"key\": \"3297\",\n \"value\": \"Holding\"\n }, {\n \"key\": \"3298\",\n \"value\": \"Approach\"\n }, {\n \"key\": \"3299\",\n \"value\": \"Landing\"\n }, {\n \"key\": \"3300\",\n \"value\": \"Taxi-in\"\n }, {\n \"key\": \"3301\",\n \"value\": \"Maintenance\"\n }, {\n \"key\": \"3302\",\n \"value\": \"All\"\n }, {\n \"key\": \"3303\",\n \"value\": \"In Aircraft\"\n }, {\n \"key\": \"3304\",\n \"value\": \"In Position at Aircraft\"\n }, {\n \"key\": \"3305\",\n \"value\": \"In Transit To / From Stand\"\n }, {\n \"key\": \"3306\",\n \"value\": \"Moving on Stand\"\n }, {\n \"key\": \"3307\",\n \"value\": \"Positioning to Aircraft\"\n }, {\n \"key\": \"3308\",\n \"value\": \"Removing from Aircraft\"\n }, {\n \"key\": \"3309\",\n \"value\": \"Other\"\n }, {\n \"key\": \"3310\",\n \"value\": \"Hover\"\n }, {\n \"key\": \"3311\",\n \"value\": \"In Flight\"\n }, {\n \"key\": \"3312\",\n \"value\": \"Multiple\"\n }, {\n \"key\": \"3313\",\n \"value\": \"Parked On / By Stand\"\n }, {\n \"key\": \"9241\",\n \"value\": \"Arrival\"\n }, {\n \"key\": \"9244\",\n \"value\": \"Arrival - Marshaling\"\n }, {\n \"key\": \"9245\",\n \"value\": \"Arrival - Guidance\"\n }, {\n \"key\": \"9246\",\n \"value\": \"Servicing\"\n }, {\n \"key\": \"9247\",\n \"value\": \"Servicing - De-icing\"\n }, {\n \"key\": \"9248\",\n \"value\": \"Servicing - Fueling\"\n }, {\n \"key\": \"9249\",\n \"value\": \"Servicing - Catering\"\n }, {\n \"key\": \"9250\",\n \"value\": \"Servicing - Lavatory\"\n }, {\n \"key\": \"9251\",\n \"value\": \"Servicing - Water\"\n }, {\n \"key\": \"9252\",\n \"value\": \"Servicing - Cleaning\"\n }, {\n \"key\": \"9253\",\n \"value\": \"Servicing - Line Maint\"\n }, {\n \"key\": \"9254\",\n \"value\": \"Servicing - Coning\"\n }, {\n \"key\": \"9255\",\n \"value\": \"Servicing - GPU\"\n }, {\n \"key\": \"9256\",\n \"value\": \"Servicing - PCA\"\n }, {\n \"key\": \"9257\",\n \"value\": \"Servicing - Bridging\"\n }, {\n \"key\": \"9258\",\n \"value\": \"Servicing - Chocking\"\n }, {\n \"key\": \"9259\",\n \"value\": \"Loading\"\n }, {\n \"key\": \"9260\",\n \"value\": \"Loading - Passenger\"\n }, {\n \"key\": \"9261\",\n \"value\": \"Loading - Baggage\"\n }, {\n \"key\": \"9262\",\n \"value\": \"Loading - Cargo\"\n }, {\n \"key\": \"9263\",\n \"value\": \"Unloading\"\n }, {\n \"key\": \"9264\",\n \"value\": \"Unloading - Passenger\"\n }, {\n \"key\": \"9265\",\n \"value\": \"Unloading - Baggage\"\n }, {\n \"key\": \"9266\",\n \"value\": \"Unloading - Cargo\"\n }]);\n})();\n\"use strict\";\n\n(function () {\n // Warning!!! This an auto generated file. Any Changes will be lost. If u want to add or edit go to config.json \n a3_pilot_reports.constant(\"version\", \"appVersion_20211203144132\");\n})();\n\"use strict\";\n\n(function () {\n 'use strict'; //Default Configuration For Charts\n\n a3_pilot_reports.constant('barOptions', barOptions);\n a3_pilot_reports.constant('pieDoughnutOptions', pieDoughnutOptions); //Default Configuration For Charts\n\n var pieDoughnutOptions = {\n //Boolean - Whether we should show a stroke on each segment\n segmentShowStroke: true,\n //String - The colour of each segment stroke\n segmentStrokeColor: \"#fff\",\n //Number - The width of each segment stroke\n segmentStrokeWidth: 2,\n //Number - The percentage of the chart that we cut out of the middle\n percentageInnerCutout: 50,\n // This is 0 for Pie charts\n //Number - Amount of animation steps\n animationSteps: 100,\n //String - Animation easing effect\n animationEasing: \"easeOutBounce\",\n //Boolean - Whether we animate the rotation of the Doughnut\n animateRotate: true,\n //Boolean - Whether we animate scaling the Doughnut from the centre\n animateScale: false,\n //String - A legend template\n legendTemplate: \"
Check your connection and try again!
\",\n scrollToTop: false\n };\n } else if (!dateAllowed()) {\n info = {\n border: \"border-left-red\",\n icon: \"fa-calendar-times-o text-red\",\n msg: \"You can not submit a session earlier than its duty date!\",\n scrollToTop: false\n };\n } else if (!isSeatValid()) {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-plane text-orange\",\n msg: \"You need to select different seats for each pilot!\",\n scrollToTop: true\n };\n } else if (!isPilotFunctionValid()) {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-plane text-orange\",\n msg: \" Each sector should have a different PM/PF value for each pilot!\",\n scrollToTop: true\n };\n } else if (syllabusPending()) {\n var traineeDetailsMsg = \"\";\n\n if (scope.selectedTrainee && (scope.selectedPhase.Syllabus.IsGradable || scope.selectedPhase.InFlight)) {\n traineeDetailsMsg = \" for \" + scope.selectedTrainee.Name + \"\";\n }\n\n info = {\n border: \"border-left-orange\",\n icon: \"fa-calendar-times-o text-orange\",\n msg: \"Form cannot be submitted!Please complete all mandatory syllabus items\" + traineeDetailsMsg + \"
\",\n scrollToTop: false\n };\n } else if (traineesPending()) {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-calendar-times-o text-orange\",\n msg: \"Form cannot be submitted!Please complete all trainee forms.
\",\n scrollToTop: true\n };\n } else if (!isMediaValid()) {\n if (scope.hasNoAircraft) {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-plane text-orange\",\n msg: \"You need to provide an aircraft type!\",\n scrollToTop: true\n };\n } else if (scope.hasNoDevice) {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-plane text-orange\",\n msg: \"You need to select a synthetic device!\",\n scrollToTop: true\n };\n }\n } else if (!isSyllabusGradingValid()) {\n var invalidTrainees = scope.trainees.filter(function (t) {\n return t.Session.SyllabusValidationErrors && t.Session.SyllabusValidationErrors.Items.length;\n });\n info = {\n border: \"border-left-orange\",\n icon: \"fa-warning text-orange\",\n msg: \"Some of the selected syllabus items require a grading\",\n SyllabusErrors: invalidTrainees.map(function (t) {\n return t.Session.SyllabusValidationErrors;\n }),\n scrollToTop: false\n };\n } else if (!isGradingValid()) {\n if (!scope.gradingValidationInfo.isDayCompetencesValid || !scope.gradingValidationInfo.isReleaseCompetencesValid) {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-warning text-orange\",\n msg: \"You need to grade all competences before submitting!\",\n scrollToTop: false\n };\n } else if (!scope.gradingValidationInfo.isDayGradingValid || !scope.gradingValidationInfo.isReleaseGradingValid) {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-warning text-orange\",\n msg: \"You need to grade all trainees!\",\n scrollToTop: false\n };\n } else if (!scope.gradingValidationInfo.isCertificateGradingValid) {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-warning text-orange\",\n msg: \"You need to grade all certificate exams!\",\n scrollToTop: false\n };\n }\n } else if (scope.requiresTraineeSignature && !scope.allSignaturesComplete) {\n if (scope.selectedTrainee && !scope.selectedTrainee.Session.Authorized) {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-pencil-square-o text-orange\",\n msg: \"\" + scope.selectedTrainee.Name + \" needs to sign the form!\",\n scrollToTop: false\n };\n } else {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-warning text-orange\",\n msg: \"All trainees need to sign their forms!\",\n scrollToTop: true\n };\n }\n } else {\n isValid = true;\n }\n\n scope.info = info;\n return isValid;\n }\n\n function dateAllowed() {\n var dateAllowed = false; //Submission is allowed only on the day of the training and after\n\n var trainingDay = moment.utc(_date).valueOf();\n var today = moment.utc().valueOf();\n\n if (today >= trainingDay) {\n dateAllowed = true;\n }\n\n return dateAllowed;\n }\n\n function isSeatValid() {\n var isValid = true;\n\n if (!isGround) {\n for (var i = 0; i < trainingFlightIds.length; i++) {\n var selectedSeats = [];\n scope.course.PilotFunctions.forEach(function (pilot) {\n selectedSeats = selectedSeats.concat(pilot.Sectors.filter(function (x) {\n return !x.NonApplicable && x.FlightId == trainingFlightIds[i];\n }).map(function (x) {\n return x.Seat;\n }));\n });\n isValid = new Set(selectedSeats).size == selectedSeats.length;\n if (!isValid) break;\n }\n }\n\n return isValid;\n }\n\n function isPilotFunctionValid() {\n var isValid = true;\n\n if (!isGround) {\n for (var i = 0; i < trainingFlightIds.length; i++) {\n var sectors = [];\n scope.course.PilotFunctions.forEach(function (pilot) {\n sectors = sectors.concat(pilot.Sectors.filter(function (x) {\n return !x.NonApplicable && x.FlightId == trainingFlightIds[i];\n }));\n });\n isValid = sectors.filter(function (x) {\n return x.isPM;\n }).length == 1;\n if (!isValid) break;\n }\n }\n\n return isValid;\n }\n\n function syllabusPending() {\n var syllabus = scope.selectedPhase.Syllabus;\n var type = scope.selectedPhase.ModuleType;\n return syllabus && type == 'Check' && (scope.selectedTrainee && !scope.selectedTrainee.AvailableRelease || !scope.selectedTrainee && scope.trainees.filter(function (x) {\n return !x.Session.Absent;\n }).some(function (x) {\n return !x.AvailableRelease;\n }));\n }\n\n function traineesPending() {\n var syllabus = scope.selectedPhase.Syllabus;\n var type = scope.selectedPhase.ModuleType;\n return syllabus && type == 'Check' && scope.selectedTrainee && scope.trainees.filter(function (x) {\n return !x.Session.Absent;\n }).some(function (x) {\n return !x.AvailableRelease;\n });\n }\n\n function isSyllabusGradingValid() {\n var syllabus = scope.selectedPhase.Syllabus;\n\n if (syllabus && syllabus.IsGradable) {\n var gradableSyllabusItems = syllabus.SyllabusItems.filter(function (x) {\n return x.IsGradable;\n });\n var gradableSyllabusItemIds = gradableSyllabusItems.map(function (x) {\n return x.Id;\n }); //foreach trainee get selected tries that need grading\n\n scope.trainees.filter(function (x) {\n return !x.Session.Absent;\n }).forEach(function (trainee) {\n var invalidItems = [];\n trainee.Session.Items.filter(function (x) {\n return x.Selected && gradableSyllabusItemIds.includes(x.Id);\n }).forEach(function (selectedItem) {\n var syllabusItem = gradableSyllabusItems.find(function (x) {\n return x.Id == selectedItem.Id;\n });\n var gradingType = syllabusItem.GradeType; //Numeric or Outcome or Competences\n\n var traineeSelectedTries = selectedItem.Tries.filter(function (x) {\n return x.Selected;\n });\n traineeSelectedTries.forEach(function (selectedTry) {\n var invalidGrading = gradingType != \"Competences\" && !selectedTry.TryGrading.Grade;\n var invalidCompetences = gradingType == \"Competences\" && !selectedTry.TryGrading.isCompetenceValid;\n\n if (invalidGrading || invalidCompetences) {\n invalidItems.push(syllabusItem.Title);\n }\n });\n });\n trainee.Session.SyllabusValidationErrors = {\n Name: trainee.Name,\n Items: invalidItems\n };\n });\n }\n\n return !scope.trainees.some(function (t) {\n return t.Session.SyllabusValidationErrors && t.Session.SyllabusValidationErrors.Items.length;\n });\n }\n\n function isGradingValid() {\n var isDayGradingValid = scope.selectedPhase.DayGrading.GradeType == \"NotSet\";\n var isReleaseGradingValid = scope.selectedPhase.ReleaseGrading.GradeType == \"NotSet\" || scope.selectedPhase.ReleaseGrading.GradeType == \"CertificateExam\" || !scope.course.AvailableRelease || !scope.course.ReleasedPhase;\n var isCertificateGradingValid = scope.selectedPhase.ReleaseGrading.GradeType != \"CertificateExam\" || !scope.course.ReleasedPhase;\n var isDayCompetencesValid = scope.selectedPhase.DayGrading.Competences.length == 0;\n var isReleaseCompetencesValid = scope.selectedPhase.ReleaseGrading.Competences.length == 0 || !scope.course.AvailableRelease || !scope.course.ReleasedPhase;\n if (!isDayGradingValid) isDayGradingValid = !scope.trainees.filter(function (x) {\n return !x.Session.Absent;\n }).some(function (x) {\n return !x.Session.DayGrading.isGradeValid;\n });\n if (!isReleaseGradingValid) isReleaseGradingValid = !scope.trainees.filter(function (x) {\n return !x.Session.Absent && x.Session.Released;\n }).some(function (x) {\n return !x.Session.ReleaseGrading.isGradeValid;\n });\n if (!isCertificateGradingValid) isCertificateGradingValid = !scope.trainees.filter(function (x) {\n return !x.Session.Absent && x.AvailableRelease;\n }).some(function (x) {\n return !x.Session.ReleaseGrading.isCertificateValid;\n });\n if (!isDayCompetencesValid) isDayCompetencesValid = !scope.trainees.filter(function (x) {\n return !x.Session.Absent;\n }).some(function (x) {\n return !x.Session.DayGrading.isCompetenceValid;\n });\n if (!isReleaseCompetencesValid) isReleaseCompetencesValid = !scope.trainees.filter(function (x) {\n return !x.Session.Absent && x.Session.Released;\n }).some(function (x) {\n return !x.Session.ReleaseGrading.isCompetenceValid;\n });\n scope.gradingValidationInfo = {\n isDayGradingValid: isDayGradingValid,\n isReleaseGradingValid: isReleaseGradingValid,\n isDayCompetencesValid: isDayCompetencesValid,\n isReleaseCompetencesValid: isReleaseCompetencesValid,\n isCertificateGradingValid: isCertificateGradingValid\n };\n return isDayGradingValid && isReleaseGradingValid && isDayCompetencesValid && isReleaseCompetencesValid && isCertificateGradingValid;\n }\n\n function isTraineeGradingValid(trainee) {\n var isDayGradingValid = scope.selectedPhase.DayGrading.GradeType == \"NotSet\";\n var isReleaseGradingValid = scope.selectedPhase.ReleaseGrading.GradeType == \"NotSet\" || scope.selectedPhase.ReleaseGrading.GradeType == \"CertificateExam\" || !scope.course.AvailableRelease || !scope.course.ReleasedPhase;\n var isCertificateGradingValid = scope.selectedPhase.ReleaseGrading.GradeType != \"CertificateExam\" || !scope.course.ReleasedPhase;\n var isDayCompetencesValid = scope.selectedPhase.DayGrading.Competences.length == 0;\n var isReleaseCompetencesValid = scope.selectedPhase.ReleaseGrading.Competences.length == 0 || !scope.course.AvailableRelease || !scope.course.ReleasedPhase;\n if (!isDayGradingValid) isDayGradingValid = trainee.Session.DayGrading.isGradeValid;\n if (!isReleaseGradingValid) isReleaseGradingValid = !trainee.Session.Released || trainee.Session.ReleaseGrading.isGradeValid;\n if (!isCertificateGradingValid) isCertificateGradingValid = !trainee.AvailableRelease || trainee.Session.ReleaseGrading.isCertificateValid;\n if (!isDayCompetencesValid) isDayCompetencesValid = trainee.Session.DayGrading.isCompetenceValid;\n if (!isReleaseCompetencesValid) isReleaseCompetencesValid = !trainee.Session.Released || trainee.Session.ReleaseGrading.isCompetenceValid;\n trainee.Session.gradingValidationInfo = {\n isDayGradingValid: isDayGradingValid,\n isReleaseGradingValid: isReleaseGradingValid,\n isDayCompetencesValid: isDayCompetencesValid,\n isReleaseCompetencesValid: isReleaseCompetencesValid,\n isCertificateGradingValid: isCertificateGradingValid\n };\n return isDayGradingValid && isReleaseGradingValid && isDayCompetencesValid && isReleaseCompetencesValid && isCertificateGradingValid;\n }\n\n function isMediaValid() {\n scope.hasNoAircraft = scope.course.Media && scope.course.Media.radioModel == \"Aircraft\" && !scope.course.Media.inputAircrafts.length;\n scope.hasNoDevice = scope.course.Media && scope.course.Media.radioModel == \"Simulator\" && !scope.course.Media.selectedDevice.selection;\n return !scope.hasNoAircraft && !scope.hasNoDevice;\n }\n /**\r\n * Triggered after a trainee has successfully signed\r\n */\n\n\n function updateTraineeSignatures() {\n updateSession();\n scope.allSignaturesComplete = !scope.trainees.filter(function (x) {\n return !x.Session.Absent;\n }).some(function (x) {\n return !x.Session.Authorized;\n });\n scope.someSignaturesComplete = scope.trainees.filter(function (x) {\n return !x.Session.Absent;\n }).some(function (x) {\n return x.Session.Authorized;\n });\n }\n\n function close() {\n scope.modalInstance.close();\n\n if (scope.info && scope.info.scrollToTop) {\n $window.scrollTo(0, 0);\n }\n }\n\n function showReleasePanel(syllabus) {\n var retVal = false;\n var phase = scope.selectedPhase;\n var availableCourse = scope.availableCourse && scope.trainees.length;\n var isCheck = phase.ModuleType == 'Check';\n var releaseGrading = (phase.ReleaseGrading.Comments || phase.ReleaseGrading.GradeType == 'Numeric' || phase.ReleaseGrading.GradeType == 'Outcome' || phase.ReleaseGrading.Competences.length) && phase.ReleaseGrading.GradeType != 'CertificateExam';\n\n if (isCheck) {\n retVal = availableCourse && releaseGrading;\n } else if (scope.traineeSyllabi.length > 1) {\n var crewId = syllabus.TraineeIds[0];\n var trainee = scope.trainees.find(function (x) {\n return x.CrewId == crewId;\n });\n retVal = scope.reloadRelease && trainee.AvailableRelease && trainee.Session.Released && availableCourse && releaseGrading;\n } else {\n retVal = scope.reloadRelease && scope.course.AvailableRelease && scope.course.ReleasedPhase && availableCourse && releaseGrading;\n }\n\n return retVal;\n }\n\n function releaseTrainee(syllabus) {\n var crewIds = syllabus.TraineeIds;\n var trainees = scope.trainees.filter(function (x) {\n return crewIds.includes(x.CrewId);\n });\n trainees.forEach(function (trainee) {\n trainee.Session.Released = !trainee.Session.Released;\n });\n scope.course.ReleasedPhase = scope.trainees.filter(function (x) {\n return !x.Absent;\n }).some(function (x) {\n return x.Session.Released;\n });\n }\n\n function releaseGroup() {\n scope.trainees.filter(function (x) {\n return !x.Session.Absent;\n }).forEach(function (trainee) {\n trainee.Session.Released = !trainee.Session.Released;\n });\n scope.course.ReleasedPhase = scope.trainees.filter(function (x) {\n return !x.Absent;\n }).some(function (x) {\n return x.Session.Released;\n });\n setReleaseStatus();\n }\n\n function showReleaseBtn(syllabus) {\n var retVal = false;\n var availableCourse = scope.availableCourse && scope.trainees.length;\n var isCheck = scope.selectedPhase.ModuleType == 'Check';\n\n if (isCheck) {\n retVal = false;\n } else if (scope.traineeSyllabi.length > 1) {\n var crewId = syllabus.TraineeIds[0];\n var trainee = scope.trainees.find(function (x) {\n return x.CrewId == crewId;\n });\n retVal = scope.reloadRelease && availableCourse && trainee.AvailableRelease;\n } else {\n retVal = scope.reloadRelease && availableCourse && scope.course.AvailableRelease;\n }\n\n return retVal;\n }\n\n function showGroupReleaseBtn() {\n var retVal = false;\n var availableCourse = scope.availableCourse && scope.trainees.length > 0;\n var isCheck = scope.selectedPhase.ModuleType == 'Check';\n var releaseGrading = (scope.selectedPhase.ReleaseGrading.Comments || scope.selectedPhase.ReleaseGrading.GradeType == 'Numeric' || scope.selectedPhase.ReleaseGrading.GradeType == 'Outcome' || scope.selectedPhase.ReleaseGrading.Competences.length) && scope.selectedPhase.ReleaseGrading.GradeType != 'CertificateExam';\n\n if (isCheck) {\n retVal = false;\n } else {\n retVal = scope.reloadRelease && availableCourse && releaseGrading && !scope.trainees.filter(function (x) {\n return !x.Session.Absent;\n }).some(function (x) {\n return !x.AvailableRelease;\n });\n }\n\n return retVal;\n }\n\n function getTraineeClass(crewId) {\n isSyllabusGradingValid();\n var textClass = \"\";\n var trainee = scope.trainees.find(function (x) {\n return x.CrewId == crewId;\n });\n var syllabus = scope.selectedPhase.Syllabus;\n var type = scope.selectedPhase.ModuleType;\n var allSyllabusCompleted = trainee.AvailableRelease; //Draft status\n\n var selectedItems = trainee.Session.Items.some(function (i) {\n return i.Tries.filter(function (t) {\n return !t.isReadOnly;\n }).some(function (t) {\n return t.Selected;\n });\n }); //Validate syllabus\n\n var validSyllabusGrading = !trainee.Session.SyllabusValidationErrors || !trainee.Session.SyllabusValidationErrors.Items.length; //Validate Day grading\n\n var isDayGradingValid = scope.selectedPhase.DayGrading.GradeType == \"NotSet\";\n var isDayCompetencesValid = scope.selectedPhase.DayGrading.Competences.length == 0;\n if (!isDayGradingValid) isDayGradingValid = trainee.Session.DayGrading.isGradeValid;\n if (!isDayCompetencesValid) isDayCompetencesValid = trainee.Session.DayGrading.isCompetenceValid; //Validate Release grading\n\n var isReleaseGradingValid = scope.selectedPhase.ReleaseGrading.GradeType == \"NotSet\" || scope.selectedPhase.ReleaseGrading.GradeType == \"CertificateExam\" || scope.selectedPhase.ModuleType == \"Training\" && (!trainee.AvailableRelease || !trainee.Session.Released);\n var isReleaseCompetencesValid = scope.selectedPhase.ReleaseGrading.Competences.length == 0 || scope.selectedPhase.ModuleType == \"Training\" && (!trainee.AvailableRelease || !trainee.Session.Released);\n if (!isReleaseGradingValid) isReleaseGradingValid = !trainee.Session.Released || trainee.Session.ReleaseGrading.isGradeValid;\n if (!isReleaseCompetencesValid) isReleaseCompetencesValid = !trainee.Session.Released || trainee.Session.ReleaseGrading.isCompetenceValid;\n\n if (selectedItems) {\n textClass = \"bg-amber text-white\";\n\n if (validSyllabusGrading && isDayGradingValid && isDayCompetencesValid && isReleaseGradingValid && isReleaseCompetencesValid && (type == 'Training' || allSyllabusCompleted)) {\n textClass = \"bg-green text-white\";\n }\n }\n\n return textClass;\n }\n\n function togglePanel(panelId) {\n $('#' + panelId).toggle();\n }\n /**\r\n * Toggle signature panel while trainee hasn't signed yet\r\n * @param {object} trainee \r\n */\n\n\n function openTraineeSignature(_trainee) {\n //Enter signature mode : trainee form becomes read-only\n if (!_trainee.Session.Authorized) {\n setReleaseStatus(); //Trainee can sign only if his form is valid\n\n if (!validateTraineeForm(_trainee)) {\n scope.modalInstance = $uibModal.open({\n templateUrl: 'views/Training/dlgSubmitValidation.html',\n scope: scope,\n backdrop: 'static',\n keyboard: false,\n size: 'lg'\n });\n } else {\n scope.modalInstance = $uibModal.open({\n templateUrl: 'views/Training/dlgTraineeSignature.html',\n controller: 'TraineeSignatureModalCtrl',\n scope: scope,\n backdrop: 'static',\n keyboard: false,\n size: 'md',\n resolve: {\n trainee: function trainee() {\n return _trainee;\n },\n signatureSuccess: function signatureSuccess() {\n return updateTraineeSignatures;\n }\n }\n });\n }\n }\n\n scope.someSignaturesComplete = scope.trainees.filter(function (x) {\n return !x.Session.Absent;\n }).some(function (x) {\n return x.Session.Authorized;\n });\n }\n\n function validateTraineeForm(trainee) {\n var trainee = scope.selectedTrainee;\n var isValid = false;\n var info = {\n border: \"\",\n icon: \"\",\n msg: \"\",\n scrollToTop: false\n };\n\n if (!window.navigator.onLine) {\n info = {\n border: \"border-left-red\",\n icon: \"fa-warning text-red\",\n msg: \" Online mode is required in order to sign.Check your connection and try again!
\",\n scrollToTop: false\n };\n } else if (syllabusPending()) {\n var traineeDetailsMsg = \"\";\n\n if (trainee && (scope.selectedPhase.Syllabus.IsGradable || scope.selectedPhase.InFlight)) {\n traineeDetailsMsg = \" for \" + trainee.Name + \"\";\n }\n\n info = {\n border: \"border-left-orange\",\n icon: \"fa-calendar-times-o text-orange\",\n msg: \"Form cannot be submitted!Please complete all mandatory syllabus items\" + traineeDetailsMsg + \"
\",\n scrollToTop: false\n };\n } else if (!isSyllabusGradingValid() && trainee.Session.SyllabusValidationErrors && trainee.Session.SyllabusValidationErrors.Items.length) {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-warning text-orange\",\n msg: \"Some of the selected syllabus items require a grading\",\n SyllabusErrors: trainee.Session.SyllabusValidationErrors,\n scrollToTop: false\n };\n } else if (!isTraineeGradingValid(trainee)) {\n if (!trainee.Session.gradingValidationInfo.isDayCompetencesValid || !trainee.Session.gradingValidationInfo.isReleaseCompetencesValid) {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-warning text-orange\",\n msg: \"You need to grade all competences!\",\n scrollToTop: false\n };\n } else if (!trainee.Session.isDayGradingValid || !trainee.Session.isReleaseGradingValid) {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-warning text-orange\",\n msg: \"You need to select an overall grade !\",\n scrollToTop: false\n };\n } else if (!trainee.Session.isCertificateGradingValid) {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-warning text-orange\",\n msg: \"You need to grade all certificate exams!\",\n scrollToTop: false\n };\n }\n } else {\n isValid = true;\n }\n\n scope.info = info;\n return isValid;\n }\n\n function resetSignature(_trainee2) {\n var modalInstance = $uibModal.open({\n templateUrl: 'views/Training/dlgResetSignature.html',\n controller: 'TraineeSignatureModalCtrl',\n scope: scope,\n backdrop: 'static',\n keyboard: false,\n size: 'md',\n resolve: {\n trainee: function trainee() {\n return _trainee2;\n },\n signatureSuccess: function signatureSuccess() {\n return updateTraineeSignatures;\n }\n }\n });\n modalInstance.result.then(function (confirm) {\n if (confirm) {\n _trainee2.Session.Authorized = false;\n scope.trainees.find(function (x) {\n return x.CrewId == _trainee2.CrewId;\n }).Session.Authorized = false;\n updateTraineeSignatures();\n }\n });\n }\n }\n\n return {\n restrict: 'E',\n terminal: false,\n templateUrl: 'views/Training/course.html',\n scope: false,\n link: link\n };\n }\n})();\n\"use strict\";\n\n(function () {\n 'use strict';\n\n a3_pilot_reports.factory('CourseFactory', CourseFactory);\n /**\r\n * @memberof PilotReports\r\n * @ngdoc factory\r\n * @name CourseFactory\r\n * @description \r\n * Add, Update, Delete and Get Training Courses.\r\n * @ngInject\r\n */\n\n function CourseFactory(IndexedDBService, GroundDutyFactory, $http, apiUrl) {\n /**\r\n * Initialize Course\r\n * @memberof CourseFactory\r\n */\n function Course() {\n this.Id = null;\n }\n\n var objType = 'Courses';\n var objCallback = Course;\n var service = {\n setCoursesFromServer: setCoursesFromServer,\n setCoursesToStorage: setCoursesToStorage,\n //save all courses\n addCourseToStorage: addCourseToStorage,\n //update course\n saveOneCourseToStorage: saveOneCourseToStorage,\n //save course\n getCoursesFromStorage: getCoursesFromStorage,\n //get all\n getCourseFromStorage: getCourseFromStorage,\n //getById\n updateCourseInfo: updateCourseInfo,\n updateFlightCourseInfo: updateFlightCourseInfo,\n getCoursesFromStorageByIds: getCoursesFromStorageByIds,\n setCourseOutdated: setCourseOutdated,\n upsertCourse: upsertCourse\n };\n /**\r\n * Get Course By Id\r\n * @memberof CourseFactory\r\n * @param {function} callback \r\n */\n\n function getCourseFromStorage(courseId, callback, errorCallback) {\n IndexedDBService.getById(objType, courseId).then(function (result) {\n callback(result);\n })[\"catch\"](errorCallback);\n }\n\n ;\n /**\r\n * Get Courses\r\n * @memberof CourseFactory\r\n * @param {function} callback \r\n */\n\n function getCoursesFromStorage(callback, errorCallback) {\n IndexedDBService.getAll(objType).then(function (results) {\n callback(results);\n })[\"catch\"](errorCallback);\n }\n\n ;\n /**\r\n * Get Course By Ids\r\n * @memberof CourseFactory\r\n * @param {function} callback \r\n */\n\n function getCoursesFromStorageByIds(courseIds, callback, errorCallback) {\n IndexedDBService.getAll(objType).then(function (results) {\n var selectedResults = [];\n results.forEach(function (result) {\n if (courseIds.includes(result.Id) && selectedResults.filter(function (x) {\n return x.Id == result.Id;\n }).length == 0) {\n selectedResults.push(result);\n }\n });\n callback(selectedResults);\n })[\"catch\"](errorCallback);\n }\n\n ;\n\n function updateCourseInfo(courseId, dutyId, callback, errorOnSaveCallback, errorOnNetwork) {\n var traingingApiURL = apiUrl + '/Training?courseId=' + courseId + '&dutyId=' + dutyId;\n $http.get(traingingApiURL, {\n 'Content-Type': 'application/json'\n }).then(function (data) {\n var course = data.data;\n course.FetchedTime = moment.utc().toJSON();\n var duty = GroundDutyFactory.getGroundDutyFromStorage(dutyId);\n course.FetchedDutyCodes = duty.RelatedGroundDuties.filter(function (x) {\n return !x.IsInstructor;\n }).map(function (x) {\n return String(x.GroundDutyNo);\n });\n course.LastFetchedDutyId = dutyId; //Upsert course in IndexDB \n\n upsertCourse(course, function (course) {\n callback(course);\n }, errorOnSaveCallback);\n })[\"catch\"](errorOnNetwork);\n }\n\n function updateFlightCourseInfo(crewRouteCourse, date, dutyNo, dutyDay, callback, errorOnSaveCallback, errorOnNetwork) {\n var traingingApiURL = apiUrl + '/Training/GetCrewRouteTraining';\n $http.post(traingingApiURL, crewRouteCourse, {\n 'Content-Type': 'application/json'\n }).then(function (data) {\n var course = data.data;\n course.FetchedTime = moment.utc().toJSON();\n course.FetchedCrewRoute = {\n date: date,\n dutyNo: dutyNo,\n dutyDay: dutyDay\n }; //Upsert course in IndexDB \n\n upsertCourse(course, function (course) {\n callback(course);\n }, errorOnSaveCallback);\n })[\"catch\"](errorOnNetwork);\n }\n\n function upsertCourse(course, callback, errorOnSaveCallback) {\n getCourseFromStorage(course.Id, function (localCourse) {\n if (localCourse) {\n saveOneCourseToStorage(course);\n } else {\n addCourseToStorage(course);\n }\n\n callback(course);\n }, errorOnSaveCallback);\n }\n\n function setCourseOutdated(courseId, callback, errorCallback) {\n getCourseFromStorage(courseId, function (localCourse) {\n if (localCourse) {\n localCourse.NeedsRefresh = true;\n saveOneCourseToStorage(localCourse);\n }\n\n if (callback) {\n callback();\n }\n }, errorCallback);\n }\n /**\r\n * Set Courses from server API \r\n * @memberof CourseFactory\r\n * @param {array} courses Courses Object\r\n * @param {array} courseIdsToSend Current courses of the storage\r\n * @param {string} lastSyncDate Last Sync Date \r\n */\n\n\n function setCoursesFromServer(courses, callback, errorCallback) {\n getCoursesFromStorage(function (localCourses) {\n // No courses found - Save All Incoming\n if (!localCourses || localCourses.length == 0) {\n setCoursesToStorage(courses);\n } else {\n for (var j = 0; j < courses.length; j++) {\n var IsCourseIncluded = false;\n\n for (var h = 0; h < localCourses.length; h++) {\n if (courses[j].Id == localCourses[h].Id) {\n IsCourseIncluded = true;\n break;\n }\n } //Update existing course\n\n\n if (IsCourseIncluded) {\n localCourses[h].Title = courses[j].Title; //Update title from sync\n\n saveOneCourseToStorage(localCourses[h]);\n } //Add a new Course\n else {\n addCourseToStorage(courses[j]);\n }\n }\n\n localCourses.filter(function (x) {\n return !courses.some(function (z) {\n return z.Id == x.Id;\n });\n }).forEach(function (course) {\n IndexedDBService.remove(objType, course.Id);\n });\n }\n });\n }\n /**\r\n * Set Courses\r\n * @memberof CourseFactory\r\n * @param {array} Courses A list of courses to set to indexedDB\r\n */\n\n\n function setCoursesToStorage(Courses, callback, errorCallback) {\n IndexedDBService.addAll(objType, Courses).then(callback)[\"catch\"](errorCallback);\n ;\n }\n\n ;\n /**\r\n * Add Course to Storage\r\n * @memberof CourseFactory\r\n * @param {object} Course\r\n */\n\n function addCourseToStorage(Course, callback, errorCallback) {\n IndexedDBService.add(objType, Course).then(callback)[\"catch\"](errorCallback);\n ;\n }\n\n ;\n /**\r\n * Update Course to Storage\r\n * @memberof CourseFactory\r\n * @param {object} Course\r\n */\n\n function saveOneCourseToStorage(Course, callback, errorCallback) {\n IndexedDBService.put(objType, Course).then(callback)[\"catch\"](errorCallback);\n }\n\n ;\n return service;\n }\n})();\n\"use strict\";\n\n(function () {\n 'use strict';\n\n a3_pilot_reports.controller('FlightCourseCtrl', FlightCourseCtrl);\n /**\r\n * @memberof PilotReports\r\n * @ngdoc controller\r\n * @name FlightCourseCtrl\r\n * @description \r\n *\r\n * @ngInject\r\n */\n\n function FlightCourseCtrl($route, $filter, $timeout, FlightSessionFactory, CrewRouteFactory, FlightFactory, GroundDutyFactory, CourseFactory, $scope, $location, $routeParams) {\n $scope.gotoCourse = gotoCourse;\n $scope.gotoCrewRoute = gotoCrewRoute;\n $scope.gotoFlight = gotoFlight;\n $scope.stickySelectedTrainee = stickySelectedTrainee;\n $scope.toggleView = toggleView;\n $scope.refreshCourse = refresh;\n $scope.courseTrainees = [];\n var courseId = Number($routeParams.courseId);\n var dutyNo = Number($routeParams.dutyNo);\n var dutyDay = Number($routeParams.dutyDay);\n $scope.viewFromFlight = Number($routeParams.flightId);\n var crewRouteDuty = CrewRouteFactory.getCrewRouteFromStorage(dutyNo, dutyDay);\n var date = $routeParams.date;\n crewRouteDuty.date = date;\n var crewRouteCourse = crewRouteDuty.Courses.find(function (x) {\n return x.CourseId == courseId && new moment(x.Date).isSame(date);\n });\n $scope.isEdit = false;\n $scope.loading = false;\n $scope.refreshSuccess = true; //show refresh icon\n\n if (!crewRouteDuty) {\n // go to dashboard if no groundDuty\n $location.path(\"/\");\n } else {\n $scope.flights = FlightFactory.getFlightsByDutyNo(dutyNo, dutyDay); //Get Crew Route's course\n\n CourseFactory.getCourseFromStorage(courseId, function (savedCourse) {\n var dutyCourse = savedCourse;\n $scope.dutyCourse = dutyCourse;\n initCourse(false);\n });\n $scope.crewRouteDuty = crewRouteDuty;\n }\n\n function gotoFlight() {\n var flightId = Number($routeParams.flightId);\n $location.path('/flightinfo/' + flightId);\n }\n\n function initCourse(afterRefresh) {\n var courseId = $scope.dutyCourse.Id;\n FlightSessionFactory.getSession(courseId, date, dutyNo, dutyDay, crewRouteCourse.TrainingFlightIds, afterRefresh, function (course) {\n if (course && !course.HasLimitedInfo) {\n $scope.availableCourse = true;\n $scope.selectedPhase = course.selectedPhase;\n $scope.trainees = course.CourseTrainees;\n course.SequenceWarning = false;\n }\n\n $scope.course = course;\n manageCourseStatus($scope.dutyCourse, course, afterRefresh);\n toggleView('History'); //default\n\n if ($scope.trainees) {\n stickySelectedTrainee(); //Check for status change (new trainees found on a submitted session (reset) || failed certificate trainees want to retake the test)\n\n if (afterRefresh && $scope.isCourseComplete && $scope.trainees.length) {\n CrewRouteFactory.setCoursePending(dutyNo, dutyDay, courseId, date);\n $scope.isCourseComplete = false;\n $route.reload();\n }\n }\n\n $scope.reload = false;\n $timeout(function () {\n $scope.reload = true;\n }, 100);\n });\n }\n\n function gotoCourse(course) {\n $location.path('/course/' + course.Id + '/' + groundDuty.DutyDateS + \"/\" + groundDuty.Id);\n }\n\n function gotoCrewRoute() {\n $location.path('/crewRoute/' + dutyNo + '/' + dutyDay);\n }\n\n function refresh() {\n $scope.loading = true;\n\n if ($scope.isOffline) {\n $timeout(function () {\n $scope.loading = false;\n }, 100);\n $scope.refreshSuccess = false;\n $scope.availableCourseInfo = false;\n $scope.refreshErrorMsg = \"Online mode is required in order to get course. Please connect to the internet and try again.\";\n } else {\n CourseFactory.updateFlightCourseInfo(crewRouteCourse, date, dutyNo, dutyDay, function () {\n $scope.loading = false;\n $scope.refreshSuccess = true;\n $scope.availableCourseInfo = true;\n initCourse(true);\n $scope.reload = false;\n $timeout(function () {\n $scope.reload = true;\n }, 100);\n }, function () {\n $scope.loading = false;\n $scope.refreshSuccess = false;\n $scope.availableCourseInfo = false;\n $scope.refreshErrorMsg = \"Something went wrong! Please Try again.\";\n }, function (error) {\n console.log(error);\n $scope.loading = false;\n $scope.refreshSuccess = false;\n $scope.availableCourseInfo = false;\n $scope.refreshErrorMsg = \"Oops! Something went wrong!\";\n\n if (error.data.errorMessage) {\n $scope.refreshErrorMsg = error.data.errorMessage;\n }\n });\n }\n }\n\n function manageCourseStatus(dutyCourse, course, afterRefresh) {\n // COMPLETED : has been submitted\n var isCourseComplete = crewRouteCourse.Status == \"Completed\"; // NEEDS SUBMIT : 1 hour has passed since the end of the course\n\n var now = moment.utc();\n\n if (!dutyCourse.IsCompleted) {\n var needsSubmit = false;\n var fetched = moment.utc(crewRouteDuty.DutyEnd);\n var duration = moment.duration(now.diff(fetched)).asHours();\n\n if (duration > 1) {\n needsSubmit = true;\n }\n } // LIMITED : no info available\n\n\n var isCourseLimited = !course || course.HasLimitedInfo || course.HasLimitedSession && !afterRefresh; // OUTDATED : NeedsRefresh || 18 hours since last refresh\n\n var isCourseOutdated = false;\n\n if (course && course.FetchedTime) {\n var now = moment.utc();\n var fetched = moment.utc(course.FetchedTime);\n var duration = moment.duration(now.diff(fetched)).asHours();\n\n if (duration > 18 || course.NeedsRefresh) {\n isCourseOutdated = true;\n }\n }\n\n $scope.headerMsg = \"Refresh Course\";\n if (isCourseLimited) $scope.headerMsg = \"Fetch Course\";\n $scope.hasPendingTraining = !isCourseComplete;\n $scope.hasUnsetTraining = needsSubmit;\n $scope.isCourseLimited = isCourseLimited;\n $scope.isCourseComplete = isCourseComplete;\n $scope.isCourseOutdated = isCourseOutdated;\n $scope.hasNotifications = isCourseLimited || isCourseOutdated || isCourseComplete;\n }\n\n function stickySelectedTrainee() {\n if ($scope.trainees && $scope.trainees.filter(function (x) {\n return !x.Session.Absent;\n }).length) {\n if ($scope.trainees.filter(function (x) {\n return !x.Session.Absent;\n }).find(function (x) {\n return x.Session.selected;\n })) {\n $scope.selectedTrainee = $scope.trainees.filter(function (x) {\n return !x.Session.Absent;\n }).find(function (x) {\n return x.Session.selected;\n });\n } else {\n $scope.selectedTrainee = $scope.trainees.filter(function (x) {\n return !x.Session.Absent;\n })[0];\n }\n } else {\n $scope.selectedTrainee = null;\n }\n\n if ($scope.selectedTrainee) $scope.selectedTraineeBadge = {\n CrewId: $scope.selectedTrainee.CrewId\n };\n }\n\n function toggleView(mode) {\n $scope.viewMode = mode;\n }\n }\n})();\n\"use strict\";\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n(function () {\n 'use strict';\n\n a3_pilot_reports.factory('FlightSessionFactory', FlightSessionFactory);\n /**\r\n * @memberof PilotReports\r\n * @ngdoc factory\r\n * @name FlightSessionFactory\r\n * @description \r\n * Add, Update, Delete and Flight Sessions.\r\n * @ngInject\r\n */\n\n function FlightSessionFactory(IndexedDBService, CrewRouteFactory, FlightFactory, CourseFactory, $http, apiUrl, $filter) {\n /**\r\n * Initialize Session\r\n * @memberof FlightSessionFactory\r\n */\n function Session() {\n this.Id = null;\n }\n\n var objType = 'FlightSessions';\n var objCallback = Session;\n var service = {\n getAll: getAll,\n getSession: getSession,\n setSession: setSession,\n updateSession: updateSession,\n getSessionTrainees: getSessionTrainees,\n submitSession: submitSession,\n remove: remove,\n getCrewRouteFlightTrainees: getCrewRouteFlightTrainees,\n applyTraineeInfoToSession: applyTraineeInfoToSession\n };\n /**\r\n * Get all flight training sessions\r\n * @memberof FlightSessionFactory\r\n * @param {function} callback \r\n */\n\n function getAll(callback) {\n IndexedDBService.getAll(objType).then(function (results) {\n callback(results);\n });\n }\n\n ;\n /**\r\n * Get session By day and courseId\r\n * @memberof FlightSessionFactory\r\n * @param {function} callback \r\n */\n\n function getSession(courseId, day, dutyNo, dutyDay, trainingFlightIds, afterRefresh, callback, errorCallback) {\n IndexedDBService.getById(objType, [day, courseId, dutyNo, dutyDay]).then(function (session) {\n CourseFactory.getCourseFromStorage(courseId, function (course) {\n if (course && !course.HasLimitedInfo && course.CrewCoursePhases && course.CourseTrainees) {\n mergeCourseWithSession(course, session, dutyNo, dutyDay, trainingFlightIds, afterRefresh);\n }\n\n callback(course);\n }, errorCallback);\n })[\"catch\"](errorCallback);\n }\n /**\r\n * Remove session By day, dutyNo, dutyDay and courseId\r\n * @memberof FlightSessionFactory\r\n * @param {function} callback \r\n */\n\n\n function remove(courseId, day, dutyNo, dutyDay, callback, errorCallback) {\n IndexedDBService.remove(objType, [day, courseId, dutyNo, dutyDay]).then(callback)[\"catch\"](errorCallback);\n }\n\n ;\n /**\r\n * Get session Trainees By day and courseId\r\n * @memberof FlightSessionFactory\r\n * @param {function} callback \r\n */\n\n function getSessionTrainees(courseId, day, dutyNo, dutyDay, callback, errorCallback) {\n IndexedDBService.getById(objType, [day, courseId, dutyNo, dutyDay]).then(function (session) {\n var trainees = session && session.trainees ? session.trainees : [];\n callback(trainees);\n })[\"catch\"](errorCallback);\n }\n\n ;\n /**\r\n * Set session\r\n * @memberof FlightSessionFactory\r\n * @param {function} callback \r\n */\n\n function setSession(session, callback, errorCallback) {\n IndexedDBService.getById(objType, [session.day, session.courseId, session.dutyNo, session.dutyDay]).then(function (result) {\n if (result) {\n saveSessionToStorage(session).then(callback)[\"catch\"](errorCallback);\n ;\n } else {\n addSessionToStorage(session).then(callback)[\"catch\"](errorCallback);\n }\n })[\"catch\"](errorCallback);\n }\n\n ;\n /**\r\n * Set session\r\n * @memberof FlightSessionFactory\r\n * @param {function} callback \r\n */\n\n function updateSession(trainees, session, courseId, day, dutyNo, dutyDay, callback, errorCallback) {\n IndexedDBService.getById(objType, [day, courseId, dutyNo, dutyDay]).then(function (localSession) {\n var isNewSession = false;\n\n if (!localSession) {\n localSession = {\n courseId: courseId,\n day: day,\n dutyNo: dutyNo,\n dutyDay: dutyDay,\n trainees: []\n };\n isNewSession = true;\n } else {\n localSession.trainees = [];\n }\n\n if (session) {\n localSession.Media = session.Media;\n localSession.ReleasedPhase = session.ReleasedPhase;\n localSession.PilotFunctions = session.PilotFunctions;\n localSession.TraineeEligibilty = session.TraineeEligibilty;\n }\n\n trainees.forEach(function (trainee) {\n localSession.trainees.push(trainee);\n });\n\n if (isNewSession) {\n addSessionToStorage(localSession).then(callback)[\"catch\"](errorCallback);\n } else {\n saveSessionToStorage(localSession).then(callback)[\"catch\"](errorCallback);\n }\n })[\"catch\"](errorCallback);\n }\n\n function mergeCourseWithSession(course, session, dutyNo, dutyDay, trainingFlightIds, afterRefresh) {\n course.HasLimitedSession = session == undefined;\n var hasPreviousSessions = mergeSyllabusWithHistory(course.CourseTrainees, course.CrewCoursePhases);\n filterTraineesByEligibility(dutyNo, dutyDay, course, trainingFlightIds, session, afterRefresh);\n course.CrewCoursePhases.forEach(function (phase) {\n calculatePhaseStatus(phase, course);\n });\n course.selectedPhase = getSelectedPhase(course); // Calculate eligible trainees phase status\n\n course.CourseTrainees.forEach(function (trainee) {\n var traineePhase = trainee.Phases.find(function (x) {\n return x.PhaseId == course.selectedPhase.PhaseId;\n });\n\n if (traineePhase) {\n trainee.ActivePhaseStatus = traineePhase.PhaseStatus;\n } else {\n trainee.ActivePhaseStatus = \"Pending\";\n }\n\n trainee.Selectable = trainee.ActivePhaseStatus == \"InProgress\";\n }); // Non InProgress trainees will be marked as NonEligible (remove further ahead trainees on multiple InProgress phases)\n\n course.CourseTrainees.filter(function (x) {\n return !x.Selectable;\n }).forEach(function (invalidPhaseTrainee) {\n invalidPhaseTrainee.EligibilityStatus = false;\n invalidPhaseTrainee.EligibilityDesc = \"AlreadySubmitted\";\n course.NonEligibleTrainees.push(invalidPhaseTrainee);\n });\n course.CourseTrainees = course.CourseTrainees.filter(function (x) {\n return x.EligibilityStatus;\n }); // Get trainee sessions\n\n course.CourseTrainees.forEach(function (trainee) {\n var sessionTrainee = session ? session.trainees.find(function (x) {\n return x.CrewId == trainee.CrewId;\n }) : null;\n\n if (sessionTrainee) {\n trainee.Session = sessionTrainee.Session;\n } else {\n trainee.Session = {\n Released: course.selectedPhase.ModuleType == \"Training\" ? false : true,\n CrewId: trainee.CrewId,\n Items: [],\n Absent: false,\n DayGrading: {\n Comments: null,\n Grade: null,\n Competences: []\n },\n ReleaseGrading: {\n Comments: null,\n Grade: null,\n Competences: []\n }\n };\n }\n });\n /* Set default values for release option\r\n Training Modules: 'No' release as default\r\n Check Module: 'Yes' release as default\r\n */\n\n course.ReleasedPhase = course.selectedPhase.ModuleType == \"Training\" ? false : true;\n\n if (session) {\n course.Media = session.Media;\n course.ReleasedPhase = session.ReleasedPhase;\n course.PilotFunctions = session.PilotFunctions;\n course.TraineeEligibilty = session.TraineeEligibilty;\n }\n }\n\n function getSelectedPhase(course) {\n var hasSelectedPhase = false;\n var phases = course.CrewCoursePhases;\n phases.forEach(function (phase, index, array) {\n phase.isFirst = index == 0;\n phase.isLast = index + 1 == array.length; // Select the first InProgress & selected phase\n\n if (!hasSelectedPhase && phase.Status == \"InProgress\" && phase.isSelected) {\n phase.Selected = true;\n hasSelectedPhase = true;\n }\n }); // Select the first InProgress phase\n\n if (!hasSelectedPhase && phases.some(function (x) {\n return x.Status == \"InProgress\";\n })) {\n phases.find(function (x) {\n return x.Status == \"InProgress\";\n }).Selected = true;\n hasSelectedPhase = true;\n }\n\n if (!hasSelectedPhase) {\n phases.find(function (x) {\n return x.isFirst;\n }).Selected = true;\n }\n\n var selectedPhase = phases.find(function (x) {\n return x.Selected;\n });\n return selectedPhase;\n }\n\n function filterTraineesByEligibility(dutyNo, dutyDay, course, trainingFlightIds, session, afterRefresh) {\n var _course$CourseTrainee;\n\n // Trainee Eligiblity cases\n // 1. After refresh - Save newly fetched eligibility in session\n // 2. No refresh & Session exists - Get last fetched eligibility from session\n // 3. No refresh & No session exists - Rely on previously fetched eligibility (different duty - same course)\n var traineeEligibility = course.TraineeEligibilty;\n\n if (!afterRefresh && session && session.TraineeEligibilty) {\n traineeEligibility = session.TraineeEligibilty;\n }\n\n if (session) session.TraineeEligibilty = traineeEligibility; //update session eligibility\n // Get crew route trainees without any training records\n\n var trainees = getCrewRouteFlightTrainees(dutyNo, dutyDay, trainingFlightIds);\n var inactiveTrainees = trainees.filter(function (x) {\n return !course.CourseTrainees.some(function (z) {\n return z.CrewId == x.CrewId;\n });\n }); //Exclude Non valid trainees\n\n var eligibleTraineeIds = Object.keys(traineeEligibility).filter(function (x) {\n return traineeEligibility[x] == \"NotStarted\" || traineeEligibility[x] == \"ValidPhase\" || traineeEligibility[x] == \"FailedCertificate\";\n }).map(Number);\n var eligibleTrainees = inactiveTrainees.filter(function (x) {\n return eligibleTraineeIds.includes(x.CrewId);\n });\n eligibleTrainees.forEach(function (trainee) {\n trainee.EligibilityStatus = true;\n });\n createNewPhaseTrainees(dutyNo, dutyDay, trainingFlightIds, course, eligibleTrainees); // Merge eligibleTrainees (inactive) with CourseTrainees (eligible & active)\n\n course.CourseTrainees.forEach(function (trainee) {\n trainee.EligibilityStatus = true;\n });\n\n (_course$CourseTrainee = course.CourseTrainees).push.apply(_course$CourseTrainee, _toConsumableArray(eligibleTrainees)); // Non eligible trainees\n\n\n var nonEligibleTrainees = inactiveTrainees.filter(function (x) {\n return !eligibleTraineeIds.includes(x.CrewId);\n });\n course.NonEligibleTrainees = nonEligibleTrainees;\n nonEligibleTrainees.forEach(function (trainee) {\n trainee.EligibilityStatus = false;\n trainee.EligibilityDesc = traineeEligibility[trainee.CrewId];\n }); // Result:\n // CourseTrainees = eligible trainees (active or new)\n // Non EligibleTrainees\n }\n /**\r\n * Create first phase foreach trainee\r\n * @param {object} groundDuty\r\n * @param {object} course\r\n * @param {array} trainees Eligible trainees that haven't yet started training\r\n */\n\n\n function createNewPhaseTrainees(dutyNo, dutyDay, trainingFlightIds, course, trainees) {\n var flights = FlightFactory.getFlightsByDutyNo(dutyNo, dutyDay).filter(function (f) {\n return trainingFlightIds.some(function (z) {\n return z == f.FlightId;\n });\n }); //Match TrainingIndicators with PhaseDutyNos\n\n var crewCoursePhaseDutyNos = [];\n var crewrouteTrainingIndicators = [];\n course.CrewCoursePhases.forEach(function (coursePhase) {\n crewCoursePhaseDutyNos = crewCoursePhaseDutyNos.concat(coursePhase.FlightTrainingIndicators);\n });\n flights.forEach(function (flight) {\n crewrouteTrainingIndicators.push(flight.TrainingIndicatorId.toString());\n });\n var relatedDutyNos = crewCoursePhaseDutyNos.filter(function (x) {\n return crewrouteTrainingIndicators.includes(x);\n });\n var relatedPhases = course.CrewCoursePhases.filter(function (x) {\n return x.FlightTrainingIndicators.some(function (fti) {\n return relatedDutyNos.includes(fti);\n });\n }); //From related phases, select first in order\n\n relatedPhases = $filter('orderBy')(relatedPhases, 'OrderNo');\n var firstPhase = relatedPhases[0];\n trainees.forEach(function (trainee) {\n trainee.Phases = [{\n PhaseId: firstPhase.PhaseId,\n PhaseStatus: \"InProgress\",\n RepeatRequestedItems: [],\n isSelected: true //selectedPhase\n\n }];\n });\n }\n\n function getCrewRouteFlightTrainees(dutyNo, dutyDay, trainingFlightIds) {\n var flights = FlightFactory.getFlightsByDutyNo(dutyNo, dutyDay).filter(function (f) {\n return trainingFlightIds.some(function (z) {\n return z == f.FlightId;\n });\n });\n var trainees = [];\n flights.forEach(function (flight) {\n flight.crew.filter(function (x) {\n return x.IsTrainee && !x.isDHC;\n }).forEach(function (trainee) {\n if (!trainees.some(function (x) {\n return x.id == trainee.id;\n })) {\n //do not push duplicates : trainees that are in multiple flights\n trainees.push(trainee);\n }\n });\n });\n trainees.forEach(function (trainee) {\n trainee.CrewId = trainee.id;\n trainee.Id = trainee.id;\n trainee.Name = trainee.name;\n trainee.AimsId = trainee.aimsId;\n });\n return trainees;\n }\n\n function calculatePhaseStatus(phase, course) {\n course.CourseTrainees.forEach(function (trainee) {\n var traineePhase = trainee.Phases.find(function (x) {\n return x.PhaseId == phase.PhaseId;\n });\n\n if (traineePhase && traineePhase.PhaseStatus == \"InProgress\") {\n phase.Status = \"InProgress\";\n } else if (!traineePhase && phase.Status != \"InProgress\") {\n phase.Status = \"Pending\";\n } else if (traineePhase && traineePhase.PhaseStatus == \"Completed\" && phase.Status != \"InProgress\") {\n phase.Status = \"Completed\";\n } //Selected phase, If at least one trainee has it selected\n\n\n if (traineePhase && !phase.isSelected) {\n phase.isSelected = traineePhase.isSelected;\n }\n });\n }\n\n function mergeSyllabusWithHistory(trainees, phases) {\n var flatSullabusItems = [];\n trainees.forEach(function (trainee) {\n trainee.Phases.forEach(function (phase) {\n phase.Sessions.forEach(function (session) {\n session.Items.forEach(function (item) {\n var flatItem = createFlatHistorySullabusItem(trainee, phase, session, item);\n flatSullabusItems.push(flatItem);\n });\n });\n });\n });\n phases.filter(function (x) {\n return x.Syllabus;\n }).forEach(function (phase, index, array) {\n phase.Syllabus.SyllabusItems.forEach(function (syllabusItem) {\n syllabusItem.History = flatSullabusItems.filter(function (item) {\n return item.ItemId == syllabusItem.Id;\n });\n });\n });\n var hasPreviousSessions = flatSullabusItems.length > 0;\n return hasPreviousSessions;\n }\n\n function createFlatHistorySullabusItem(trainee, phase, session, item) {\n var flatItem = {\n CrewId: trainee.CrewId,\n PhaseId: phase.PhaseId,\n SessionId: session.SessionId,\n SessionComments: session.SessionComments,\n SubmissionDate: item.SubmissionDate,\n RepeatRequired: item.RepeatRequired,\n Tries: item.Tries,\n ItemId: item.SyllabusItemId,\n Grade: session.Grade,\n GradeType: session.GradeType,\n InstructorName: session.InstructorName,\n InstructorAimsId: session.InstructorAimsId\n };\n return flatItem;\n }\n /**\r\n * Add Session to Storage\r\n * @memberof FlightSessionFactory\r\n * @param {object} Session\r\n */\n\n\n function addSessionToStorage(session) {\n return IndexedDBService.add(objType, session);\n }\n\n ;\n /**\r\n * Update Session to Storage\r\n * @memberof FlightSessionFactory\r\n * @param {object} Session\r\n */\n\n function saveSessionToStorage(session) {\n return IndexedDBService.put(objType, session);\n }\n\n ;\n\n function submitSession(submittedSession, callback) {\n var traingingApiURL = apiUrl + '/Training/SubmitTraining';\n return $http.post(traingingApiURL, submittedSession, {\n 'Content-Type': 'application/json'\n }).then(callback);\n }\n\n function applyTraineeInfoToSession(course, courseId, day, dutyNo, dutyDay, callback, errorCallback) {\n IndexedDBService.getById(objType, [day, courseId, dutyNo, dutyDay]).then(function (localSession) {\n var isNewSession = false;\n\n if (!localSession) {\n localSession = {\n courseId: courseId,\n day: day,\n dutyNo: dutyNo,\n dutyDay: dutyDay,\n trainees: [],\n TraineeEligibilty: course.TraineeEligibilty,\n CourseTrainees: course.CourseTrainees\n };\n isNewSession = true;\n } else {\n localSession.CourseTrainees = course.CourseTrainees;\n localSession.TraineeEligibilty = course.TraineeEligibilty;\n }\n\n if (isNewSession) {\n addSessionToStorage(localSession).then(callback)[\"catch\"](errorCallback);\n } else {\n saveSessionToStorage(localSession).then(callback)[\"catch\"](errorCallback);\n }\n })[\"catch\"](errorCallback);\n }\n\n return service;\n }\n})();\n\"use strict\";\n\n(function () {\n 'use strict';\n\n a3_pilot_reports.directive('grading', grading);\n /**\r\n * @memberof PilotReports\r\n * @ngdoc directive\r\n * @name grading\r\n * @restrict E\r\n * @description\r\n * Implementation of overall grading\r\n * @example\r\n * Usage:\r\n *Check your connection and try again!
\"\n };\n } else if (scope.settings.TraineeSignature && scope.trainees.filter(function (x) {\n return x.RadioModel;\n }).some(function (x) {\n return !x.Authorized;\n })) {\n if (selectedTrainee && !selectedTrainee.Authorized) {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-pencil-square-o text-orange\",\n msg: \"\" + selectedTrainee.TraineeName + \" needs to sign the form!\",\n scrollToTop: false\n };\n } else {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-warning text-orange\",\n msg: \"All trainees need to sign their forms!\",\n scrollToTop: true\n };\n }\n } else if (!isGradingValid()) {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-warning text-orange\",\n msg: \"\"\n };\n\n if (selectedTrainee && !selectedTrainee.ReleaseGrading.isCompetenceValid) {\n info.msg = \"You need to grade all competences for \" + selectedTrainee.TraineeName + \" before submitting!\";\n } else if (selectedTrainee && !selectedTrainee.ReleaseGrading.isGradeValid) {\n info.msg = \"You need to grade \" + selectedTrainee.TraineeName + \" before submitting!\";\n } else if (!scope.gradingValidationInfo.isReleaseCompetencesValid || !scope.gradingValidationInfo.isReleaseGradingValid) {\n info.msg = \"You need to grade all trainees before submitting!\";\n }\n } else {\n isValid = true;\n }\n\n scope.info = info;\n return isValid;\n }\n\n function validateTraineeForm(trainee) {\n /*Requirements before trainee signature\r\n 1. OnLine Mode\r\n 2. Valid Trainee Release Grading\r\n */\n var isValid = false;\n var info = {\n border: \"\",\n icon: \"\",\n msg: \"\"\n };\n\n if (!window.navigator.onLine) {\n info = {\n border: \"border-left-red\",\n icon: \"fa-warning text-red\",\n msg: \" Online mode is required in order to submit a training.Check your connection and try again!
\"\n };\n } else if (!trainee.ReleaseGrading.isCompetenceValid) {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-warning text-orange\",\n msg: \"You need to grade all competences!\"\n };\n } else if (!trainee.ReleaseGrading.isGradeValid) {\n info = {\n border: \"border-left-orange\",\n icon: \"fa-warning text-orange\",\n msg: \"You need to select an overall grade!\"\n };\n } else {\n isValid = true;\n }\n\n scope.info = info;\n return isValid;\n }\n\n function isGradingValid() {\n var isReleaseGradingValid = scope.settings.GradeType == \"NotSet\";\n var isReleaseCompetencesValid = scope.settings.Competences.length == 0;\n if (!isReleaseGradingValid) isReleaseGradingValid = !scope.trainees.filter(function (x) {\n return x.RadioModel;\n }).some(function (x) {\n return !x.ReleaseGrading.isGradeValid;\n });\n if (!isReleaseCompetencesValid) isReleaseCompetencesValid = !scope.trainees.filter(function (x) {\n return x.RadioModel;\n }).some(function (x) {\n return !x.ReleaseGrading.isCompetenceValid;\n });\n scope.gradingValidationInfo = {\n isReleaseGradingValid: isReleaseGradingValid,\n isReleaseCompetencesValid: isReleaseCompetencesValid\n };\n return isReleaseGradingValid && isReleaseCompetencesValid;\n }\n\n function openTraineeSignature(_trainee) {\n //Enter signature mode : trainee form becomes read-only\n if (!_trainee.Authorized) {\n //Trainee can sign only if his form is valid\n if (!validateTraineeForm(_trainee)) {\n scope.modalInstance = $uibModal.open({\n templateUrl: 'views/Training/dlgSubmitValidation.html',\n scope: scope,\n backdrop: 'static',\n keyboard: false,\n size: 'lg'\n });\n } else {\n _trainee.Session = {\n Authorized: false\n };\n _trainee.Name = _trainee.TraineeName;\n scope.modalInstance = $uibModal.open({\n templateUrl: 'views/Training/dlgTraineeSignature.html',\n controller: 'TraineeSignatureModalCtrl',\n scope: scope,\n backdrop: 'static',\n keyboard: false,\n size: 'md',\n resolve: {\n trainee: function trainee() {\n return _trainee;\n },\n signatureSuccess: function signatureSuccess() {\n return function () {\n _trainee.Authorized = true;\n };\n }\n }\n });\n }\n }\n }\n\n function resetSignature(_trainee2) {\n var modalInstance = $uibModal.open({\n templateUrl: 'views/Training/dlgResetSignature.html',\n controller: 'TraineeSignatureModalCtrl',\n scope: scope,\n backdrop: 'static',\n keyboard: false,\n size: 'md',\n resolve: {\n trainee: function trainee() {\n return _trainee2;\n },\n signatureSuccess: function signatureSuccess() {\n return function () {};\n }\n }\n });\n modalInstance.result.then(function (confirm) {\n if (confirm) {\n _trainee2.Authorized = false;\n _trainee2.Session.Authorized = false;\n }\n });\n }\n }\n\n return {\n restrict: 'E',\n terminal: false,\n templateUrl: 'views/Training/releasable-module.tpl.html',\n scope: false,\n link: link\n };\n }\n})();\n\"use strict\";\n\n(function () {\n a3_pilot_reports.directive('releaseWarning', releaseWarning);\n /**\r\n * @memberof CabinReports\r\n * @ngdoc directive\r\n * @name releaseWarning\r\n * @restrict E\r\n * @description\r\n * Soft rules alert in release\r\n * @example\r\n * Usage:\r\n *Check your connection and try again!
\",\r\n scrollToTop: false\r\n };\r\n }\r\n else if (!dateAllowed()) {\r\n info = {\r\n border: \"border-left-red\",\r\n icon: \"fa-calendar-times-o text-red\",\r\n msg: \"You can not submit a session earlier than its duty date!\",\r\n scrollToTop: false\r\n };\r\n }\r\n else if (!isSeatValid()) {\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-plane text-orange\",\r\n msg: \"You need to select different seats for each pilot!\",\r\n scrollToTop: true\r\n };\r\n }\r\n else if (!isPilotFunctionValid()) {\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-plane text-orange\",\r\n msg: \" Each sector should have a different PM/PF value for each pilot!\",\r\n scrollToTop: true\r\n };\r\n }\r\n else if (syllabusPending()) {\r\n var traineeDetailsMsg = \"\";\r\n if(scope.selectedTrainee && (scope.selectedPhase.Syllabus.IsGradable || scope.selectedPhase.InFlight)) {\r\n traineeDetailsMsg = \" for \" + scope.selectedTrainee.Name + \"\"\r\n }\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-calendar-times-o text-orange\",\r\n msg: \"Form cannot be submitted!Please complete all mandatory syllabus items\" + traineeDetailsMsg +\"
\",\r\n scrollToTop:false\r\n };\r\n }\r\n else if(traineesPending()){\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-calendar-times-o text-orange\",\r\n msg: \"Form cannot be submitted!Please complete all trainee forms.
\",\r\n scrollToTop:true\r\n };\r\n }\r\n else if (!isMediaValid()) {\r\n if (scope.hasNoAircraft) {\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-plane text-orange\",\r\n msg: \"You need to provide an aircraft type!\",\r\n scrollToTop:true\r\n };\r\n }\r\n else if (scope.hasNoDevice) {\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-plane text-orange\",\r\n msg: \"You need to select a synthetic device!\",\r\n scrollToTop:true\r\n };\r\n\r\n }\r\n }\r\n else if(!isSyllabusGradingValid()){\r\n var invalidTrainees = scope.trainees.filter(t => t.Session.SyllabusValidationErrors && t.Session.SyllabusValidationErrors.Items.length);\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-warning text-orange\",\r\n msg: \"Some of the selected syllabus items require a grading\",\r\n SyllabusErrors : invalidTrainees.map(t => t.Session.SyllabusValidationErrors),\r\n scrollToTop:false\r\n };\r\n }\r\n else if (!isGradingValid()) {\r\n if (!scope.gradingValidationInfo.isDayCompetencesValid || !scope.gradingValidationInfo.isReleaseCompetencesValid) {\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-warning text-orange\",\r\n msg: \"You need to grade all competences before submitting!\",\r\n scrollToTop:false\r\n };\r\n }\r\n else if (!scope.gradingValidationInfo.isDayGradingValid || !scope.gradingValidationInfo.isReleaseGradingValid) {\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-warning text-orange\",\r\n msg: \"You need to grade all trainees!\",\r\n scrollToTop:false\r\n };\r\n }\r\n else if (!scope.gradingValidationInfo.isCertificateGradingValid) {\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-warning text-orange\",\r\n msg: \"You need to grade all certificate exams!\",\r\n scrollToTop:false\r\n };\r\n }\r\n }\r\n else if(scope.requiresTraineeSignature && !scope.allSignaturesComplete){\r\n\r\n if(scope.selectedTrainee && !scope.selectedTrainee.Session.Authorized){\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-pencil-square-o text-orange\",\r\n msg: \"\" + scope.selectedTrainee.Name + \" needs to sign the form!\",\r\n scrollToTop:false\r\n };\r\n }\r\n else{\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-warning text-orange\",\r\n msg: \"All trainees need to sign their forms!\",\r\n scrollToTop:true\r\n };\r\n }\r\n }\r\n else {\r\n isValid = true;\r\n }\r\n\r\n scope.info = info;\r\n return isValid;\r\n }\r\n\r\n \r\n function dateAllowed() {\r\n var dateAllowed = false;\r\n\r\n //Submission is allowed only on the day of the training and after\r\n var trainingDay = moment.utc(date).valueOf();\r\n var today = moment.utc().valueOf();\r\n\r\n if (today >= trainingDay) {\r\n dateAllowed = true;\r\n }\r\n\r\n return dateAllowed;\r\n }\r\n\r\n function isSeatValid(){\r\n var isValid = true;\r\n if(!isGround){\r\n for (var i = 0; i < trainingFlightIds.length; i++) {\r\n var selectedSeats = [];\r\n scope.course.PilotFunctions.forEach(function(pilot){\r\n selectedSeats = selectedSeats.concat(pilot.Sectors.filter(x => !x.NonApplicable && x.FlightId == trainingFlightIds[i]).map(x => x.Seat))\r\n });\r\n isValid = (new Set(selectedSeats)).size == selectedSeats.length;\r\n if(!isValid) break;\r\n }\r\n }\r\n return isValid;\r\n }\r\n\r\n function isPilotFunctionValid(){\r\n var isValid = true;\r\n if(!isGround){\r\n for (var i = 0; i < trainingFlightIds.length; i++) {\r\n var sectors = [];\r\n \r\n scope.course.PilotFunctions.forEach(function(pilot){\r\n sectors = sectors.concat(pilot.Sectors.filter(x => !x.NonApplicable && x.FlightId == trainingFlightIds[i]))\r\n });\r\n\r\n isValid = sectors.filter(x => x.isPM).length == 1;\r\n if(!isValid) break;\r\n }\r\n }\r\n return isValid;\r\n }\r\n\r\n function syllabusPending(){\r\n var syllabus = scope.selectedPhase.Syllabus;\r\n var type = scope.selectedPhase.ModuleType;\r\n\r\n return syllabus && type == 'Check' && ( (scope.selectedTrainee && !scope.selectedTrainee.AvailableRelease) || ((!scope.selectedTrainee && scope.trainees.filter(x => !x.Session.Absent).some(x => !x.AvailableRelease))) );\r\n }\r\n\r\n function traineesPending(){\r\n var syllabus = scope.selectedPhase.Syllabus;\r\n var type = scope.selectedPhase.ModuleType;\r\n\r\n return syllabus && type == 'Check' && scope.selectedTrainee && scope.trainees.filter(x => !x.Session.Absent).some(x => !x.AvailableRelease);\r\n }\r\n\r\n function isSyllabusGradingValid(){\r\n var syllabus = scope.selectedPhase.Syllabus;\r\n if(syllabus && syllabus.IsGradable){\r\n \r\n var gradableSyllabusItems = syllabus.SyllabusItems.filter(x => x.IsGradable);\r\n var gradableSyllabusItemIds = gradableSyllabusItems.map(x => x.Id);\r\n\r\n //foreach trainee get selected tries that need grading\r\n scope.trainees.filter(x => !x.Session.Absent).forEach(function(trainee){\r\n var invalidItems = [];\r\n trainee.Session.Items.filter(x => x.Selected && gradableSyllabusItemIds.includes(x.Id)).forEach(function(selectedItem){\r\n var syllabusItem = gradableSyllabusItems.find(x => x.Id == selectedItem.Id);\r\n var gradingType = syllabusItem.GradeType; //Numeric or Outcome or Competences\r\n var traineeSelectedTries = selectedItem.Tries.filter(x => x.Selected);\r\n\r\n traineeSelectedTries.forEach(function(selectedTry){\r\n\r\n var invalidGrading = gradingType != \"Competences\" && !selectedTry.TryGrading.Grade;\r\n var invalidCompetences = gradingType == \"Competences\" && !selectedTry.TryGrading.isCompetenceValid;\r\n \r\n if(invalidGrading || invalidCompetences){\r\n invalidItems.push(syllabusItem.Title);\r\n }\r\n });\r\n });\r\n trainee.Session.SyllabusValidationErrors = {\r\n Name : trainee.Name,\r\n Items : invalidItems\r\n };\r\n }); \r\n }\r\n\r\n return !scope.trainees.some(t => t.Session.SyllabusValidationErrors && t.Session.SyllabusValidationErrors.Items.length);\r\n }\r\n\r\n function isGradingValid() {\r\n var isDayGradingValid = scope.selectedPhase.DayGrading.GradeType == \"NotSet\";\r\n var isReleaseGradingValid = scope.selectedPhase.ReleaseGrading.GradeType == \"NotSet\" || scope.selectedPhase.ReleaseGrading.GradeType == \"CertificateExam\" || !scope.course.AvailableRelease || !scope.course.ReleasedPhase;\r\n var isCertificateGradingValid = scope.selectedPhase.ReleaseGrading.GradeType != \"CertificateExam\" || !scope.course.ReleasedPhase;\r\n var isDayCompetencesValid = scope.selectedPhase.DayGrading.Competences.length == 0;\r\n var isReleaseCompetencesValid = scope.selectedPhase.ReleaseGrading.Competences.length == 0 || !scope.course.AvailableRelease || !scope.course.ReleasedPhase;\r\n\r\n if (!isDayGradingValid) isDayGradingValid = !scope.trainees.filter(x => !x.Session.Absent).some(x => !x.Session.DayGrading.isGradeValid);\r\n if (!isReleaseGradingValid) isReleaseGradingValid = !scope.trainees.filter(x => !x.Session.Absent && x.Session.Released).some(x => !x.Session.ReleaseGrading.isGradeValid);\r\n if (!isCertificateGradingValid) isCertificateGradingValid = !scope.trainees.filter(x => !x.Session.Absent && x.AvailableRelease).some(x => !x.Session.ReleaseGrading.isCertificateValid);\r\n\r\n\r\n if (!isDayCompetencesValid) isDayCompetencesValid = !scope.trainees.filter(x => !x.Session.Absent).some(x => !x.Session.DayGrading.isCompetenceValid);\r\n if (!isReleaseCompetencesValid) isReleaseCompetencesValid = !scope.trainees.filter(x => !x.Session.Absent && x.Session.Released).some(x => !x.Session.ReleaseGrading.isCompetenceValid);\r\n\r\n scope.gradingValidationInfo = {\r\n isDayGradingValid: isDayGradingValid,\r\n isReleaseGradingValid: isReleaseGradingValid,\r\n isDayCompetencesValid: isDayCompetencesValid,\r\n isReleaseCompetencesValid: isReleaseCompetencesValid,\r\n isCertificateGradingValid: isCertificateGradingValid\r\n };\r\n\r\n return isDayGradingValid && isReleaseGradingValid && isDayCompetencesValid && isReleaseCompetencesValid && isCertificateGradingValid;\r\n }\r\n\r\n function isTraineeGradingValid(trainee) {\r\n var isDayGradingValid = scope.selectedPhase.DayGrading.GradeType == \"NotSet\";\r\n var isReleaseGradingValid = scope.selectedPhase.ReleaseGrading.GradeType == \"NotSet\" || scope.selectedPhase.ReleaseGrading.GradeType == \"CertificateExam\" || !scope.course.AvailableRelease || !scope.course.ReleasedPhase;\r\n var isCertificateGradingValid = scope.selectedPhase.ReleaseGrading.GradeType != \"CertificateExam\" || !scope.course.ReleasedPhase;\r\n var isDayCompetencesValid = scope.selectedPhase.DayGrading.Competences.length == 0;\r\n var isReleaseCompetencesValid = scope.selectedPhase.ReleaseGrading.Competences.length == 0 || !scope.course.AvailableRelease || !scope.course.ReleasedPhase;\r\n\r\n if (!isDayGradingValid) isDayGradingValid = trainee.Session.DayGrading.isGradeValid;\r\n if (!isReleaseGradingValid) isReleaseGradingValid = !trainee.Session.Released || trainee.Session.ReleaseGrading.isGradeValid;\r\n if (!isCertificateGradingValid) isCertificateGradingValid = !trainee.AvailableRelease || trainee.Session.ReleaseGrading.isCertificateValid;\r\n\r\n\r\n if (!isDayCompetencesValid) isDayCompetencesValid = trainee.Session.DayGrading.isCompetenceValid;\r\n if (!isReleaseCompetencesValid) isReleaseCompetencesValid = !trainee.Session.Released || trainee.Session.ReleaseGrading.isCompetenceValid;\r\n\r\n trainee.Session.gradingValidationInfo = {\r\n isDayGradingValid: isDayGradingValid,\r\n isReleaseGradingValid: isReleaseGradingValid,\r\n isDayCompetencesValid: isDayCompetencesValid,\r\n isReleaseCompetencesValid: isReleaseCompetencesValid,\r\n isCertificateGradingValid: isCertificateGradingValid\r\n };\r\n\r\n return isDayGradingValid && isReleaseGradingValid && isDayCompetencesValid && isReleaseCompetencesValid && isCertificateGradingValid;\r\n }\r\n\r\n function isMediaValid() {\r\n scope.hasNoAircraft = scope.course.Media && scope.course.Media.radioModel == \"Aircraft\" && !scope.course.Media.inputAircrafts.length;\r\n scope.hasNoDevice = scope.course.Media && scope.course.Media.radioModel == \"Simulator\" && !scope.course.Media.selectedDevice.selection;\r\n return !scope.hasNoAircraft && !scope.hasNoDevice;\r\n }\r\n\r\n /**\r\n * Triggered after a trainee has successfully signed\r\n */\r\n function updateTraineeSignatures(){\r\n updateSession();\r\n scope.allSignaturesComplete = !scope.trainees.filter(x => !x.Session.Absent).some(x => !x.Session.Authorized);\r\n scope.someSignaturesComplete = scope.trainees.filter(x => !x.Session.Absent).some(x => x.Session.Authorized);\r\n }\r\n\r\n function close() {\r\n scope.modalInstance.close();\r\n\r\n if(scope.info && scope.info.scrollToTop){\r\n $window.scrollTo(0, 0);\r\n }\r\n }\r\n\r\n function showReleasePanel(syllabus){\r\n var retVal = false;\r\n var phase = scope.selectedPhase;\r\n \r\n var availableCourse = scope.availableCourse && scope.trainees.length;\r\n var isCheck = phase.ModuleType=='Check';\r\n var releaseGrading = (phase.ReleaseGrading.Comments || \r\n phase.ReleaseGrading.GradeType == 'Numeric' || \r\n phase.ReleaseGrading.GradeType == 'Outcome' ||\r\n phase.ReleaseGrading.Competences.length) &&\r\n phase.ReleaseGrading.GradeType != 'CertificateExam';\r\n\r\n if(isCheck){\r\n retVal = availableCourse && releaseGrading;\r\n }\r\n else if(scope.traineeSyllabi.length > 1){\r\n var crewId = syllabus.TraineeIds[0];\r\n var trainee = scope.trainees.find(x => x.CrewId == crewId);\r\n retVal = scope.reloadRelease && trainee.AvailableRelease && trainee.Session.Released && availableCourse && releaseGrading;\r\n }\r\n else{\r\n retVal = scope.reloadRelease && scope.course.AvailableRelease && scope.course.ReleasedPhase && availableCourse && releaseGrading;\r\n }\r\n return retVal;\r\n }\r\n\r\n function releaseTrainee(syllabus){\r\n\r\n var crewIds = syllabus.TraineeIds;\r\n var trainees = scope.trainees.filter(x => crewIds.includes(x.CrewId));\r\n\r\n trainees.forEach(function(trainee){\r\n trainee.Session.Released = !trainee.Session.Released;\r\n });\r\n\r\n scope.course.ReleasedPhase = scope.trainees.filter(x => !x.Absent).some(x => x.Session.Released);\r\n }\r\n\r\n function releaseGroup(){\r\n scope.trainees.filter(x => !x.Session.Absent).forEach(function(trainee){\r\n trainee.Session.Released = !trainee.Session.Released;\r\n });\r\n\r\n scope.course.ReleasedPhase = scope.trainees.filter(x => !x.Absent).some(x => x.Session.Released);\r\n setReleaseStatus();\r\n \r\n }\r\n\r\n function showReleaseBtn(syllabus){\r\n var retVal = false;\r\n\r\n var availableCourse = scope.availableCourse && scope.trainees.length;\r\n var isCheck = scope.selectedPhase.ModuleType=='Check';\r\n \r\n\r\n if(isCheck){\r\n retVal = false;\r\n }\r\n else if(scope.traineeSyllabi.length > 1){\r\n var crewId = syllabus.TraineeIds[0];\r\n var trainee = scope.trainees.find(x => x.CrewId == crewId);\r\n retVal = scope.reloadRelease && availableCourse && trainee.AvailableRelease;\r\n }\r\n else{\r\n retVal = scope.reloadRelease && availableCourse && scope.course.AvailableRelease;\r\n }\r\n\r\n return retVal;\r\n }\r\n\r\n function showGroupReleaseBtn(){\r\n var retVal = false;\r\n\r\n var availableCourse = scope.availableCourse && scope.trainees.length>0;\r\n var isCheck = scope.selectedPhase.ModuleType=='Check';\r\n var releaseGrading = (scope.selectedPhase.ReleaseGrading.Comments || \r\n scope.selectedPhase.ReleaseGrading.GradeType == 'Numeric' || \r\n scope.selectedPhase.ReleaseGrading.GradeType == 'Outcome' ||\r\n scope.selectedPhase.ReleaseGrading.Competences.length) &&\r\n scope.selectedPhase.ReleaseGrading.GradeType != 'CertificateExam';\r\n \r\n\r\n if(isCheck){\r\n retVal = false;\r\n }\r\n else{\r\n retVal = scope.reloadRelease && availableCourse && releaseGrading && !scope.trainees.filter(x => !x.Session.Absent).some(x => !x.AvailableRelease);\r\n }\r\n\r\n return retVal;\r\n }\r\n\r\n function getTraineeClass(crewId){\r\n\r\n isSyllabusGradingValid();\r\n\r\n var textClass=\"\";\r\n\r\n var trainee = scope.trainees.find(x => x.CrewId == crewId);\r\n var syllabus = scope.selectedPhase.Syllabus;\r\n var type = scope.selectedPhase.ModuleType;\r\n \r\n var allSyllabusCompleted = trainee.AvailableRelease;\r\n\r\n //Draft status\r\n var selectedItems = trainee.Session.Items.some(i => i.Tries.filter(t => !t.isReadOnly).some(t => t.Selected));\r\n\r\n //Validate syllabus\r\n var validSyllabusGrading = !trainee.Session.SyllabusValidationErrors || !trainee.Session.SyllabusValidationErrors.Items.length;\r\n \r\n //Validate Day grading\r\n var isDayGradingValid = scope.selectedPhase.DayGrading.GradeType == \"NotSet\";\r\n var isDayCompetencesValid = scope.selectedPhase.DayGrading.Competences.length == 0;\r\n if (!isDayGradingValid) isDayGradingValid = trainee.Session.DayGrading.isGradeValid;\r\n if (!isDayCompetencesValid) isDayCompetencesValid = trainee.Session.DayGrading.isCompetenceValid;\r\n\r\n\r\n //Validate Release grading\r\n var isReleaseGradingValid = scope.selectedPhase.ReleaseGrading.GradeType == \"NotSet\" || scope.selectedPhase.ReleaseGrading.GradeType == \"CertificateExam\" \r\n || (scope.selectedPhase.ModuleType == \"Training\" && (!trainee.AvailableRelease || !trainee.Session.Released));\r\n\r\n var isReleaseCompetencesValid = scope.selectedPhase.ReleaseGrading.Competences.length == 0 \r\n || (scope.selectedPhase.ModuleType == \"Training\" && (!trainee.AvailableRelease || !trainee.Session.Released));\r\n if (!isReleaseGradingValid) isReleaseGradingValid = !trainee.Session.Released || trainee.Session.ReleaseGrading.isGradeValid;\r\n if (!isReleaseCompetencesValid) isReleaseCompetencesValid = !trainee.Session.Released || trainee.Session.ReleaseGrading.isCompetenceValid;\r\n\r\n\r\n\r\n if(selectedItems){\r\n textClass = \"bg-amber text-white\";\r\n if(validSyllabusGrading && isDayGradingValid && isDayCompetencesValid && isReleaseGradingValid && isReleaseCompetencesValid\r\n && (type =='Training' || allSyllabusCompleted)){\r\n textClass = \"bg-green text-white\";\r\n }\r\n }\r\n \r\n return textClass;\r\n }\r\n\r\n function togglePanel(panelId) {\r\n $('#' + panelId).toggle();\r\n }\r\n\r\n /**\r\n * Toggle signature panel while trainee hasn't signed yet\r\n * @param {object} trainee \r\n */\r\n function openTraineeSignature(trainee){\r\n //Enter signature mode : trainee form becomes read-only\r\n if(!trainee.Session.Authorized){\r\n setReleaseStatus();\r\n //Trainee can sign only if his form is valid\r\n if (!validateTraineeForm(trainee)) {\r\n scope.modalInstance = $uibModal.open({\r\n templateUrl: 'views/Training/dlgSubmitValidation.html',\r\n scope: scope,\r\n backdrop: 'static',\r\n keyboard: false,\r\n size: 'lg'\r\n });\r\n }\r\n else{\r\n scope.modalInstance = $uibModal.open({\r\n templateUrl: 'views/Training/dlgTraineeSignature.html',\r\n controller: 'TraineeSignatureModalCtrl',\r\n scope: scope,\r\n backdrop: 'static',\r\n keyboard: false,\r\n size: 'md',\r\n resolve: {\r\n trainee: function () { return trainee; },\r\n signatureSuccess: function () { return updateTraineeSignatures; }\r\n }\r\n });\r\n }\r\n }\r\n\r\n scope.someSignaturesComplete = scope.trainees.filter(x => !x.Session.Absent).some(x => x.Session.Authorized);\r\n }\r\n \r\n function validateTraineeForm(trainee) {\r\n var trainee = scope.selectedTrainee;\r\n\r\n var isValid = false;\r\n var info = {\r\n border: \"\",\r\n icon: \"\",\r\n msg: \"\",\r\n scrollToTop: false\r\n };\r\n\r\n if (!window.navigator.onLine) {\r\n info = {\r\n border: \"border-left-red\",\r\n icon: \"fa-warning text-red\",\r\n msg: \" Online mode is required in order to sign.Check your connection and try again!
\",\r\n scrollToTop: false\r\n };\r\n }\r\n else if (syllabusPending()) {\r\n var traineeDetailsMsg = \"\";\r\n if(trainee && (scope.selectedPhase.Syllabus.IsGradable || scope.selectedPhase.InFlight)) {\r\n traineeDetailsMsg = \" for \" + trainee.Name + \"\"\r\n }\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-calendar-times-o text-orange\",\r\n msg: \"Form cannot be submitted!Please complete all mandatory syllabus items\" + traineeDetailsMsg +\"
\",\r\n scrollToTop:false\r\n };\r\n }\r\n else if(!isSyllabusGradingValid() && trainee.Session.SyllabusValidationErrors && trainee.Session.SyllabusValidationErrors.Items.length){\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-warning text-orange\",\r\n msg: \"Some of the selected syllabus items require a grading\",\r\n SyllabusErrors : trainee.Session.SyllabusValidationErrors,\r\n scrollToTop:false\r\n };\r\n }\r\n else if (!isTraineeGradingValid(trainee)) {\r\n if (!trainee.Session.gradingValidationInfo.isDayCompetencesValid || !trainee.Session.gradingValidationInfo.isReleaseCompetencesValid) {\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-warning text-orange\",\r\n msg: \"You need to grade all competences!\",\r\n scrollToTop:false\r\n };\r\n }\r\n else if (!trainee.Session.isDayGradingValid || !trainee.Session.isReleaseGradingValid) {\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-warning text-orange\",\r\n msg: \"You need to select an overall grade !\",\r\n scrollToTop:false\r\n };\r\n }\r\n else if (!trainee.Session.isCertificateGradingValid) {\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-warning text-orange\",\r\n msg: \"You need to grade all certificate exams!\",\r\n scrollToTop:false\r\n };\r\n }\r\n }\r\n else {\r\n isValid = true;\r\n }\r\n\r\n scope.info = info;\r\n \r\n \r\n return isValid;\r\n }\r\n\r\n\r\n function resetSignature(trainee){\r\n var modalInstance = $uibModal.open({\r\n templateUrl: 'views/Training/dlgResetSignature.html',\r\n controller: 'TraineeSignatureModalCtrl',\r\n scope: scope,\r\n backdrop: 'static',\r\n keyboard: false,\r\n size: 'md',\r\n resolve: {\r\n trainee: function () { return trainee; },\r\n signatureSuccess: function () { return updateTraineeSignatures; }\r\n }\r\n });\r\n\r\n modalInstance.result.then(function (confirm) {\r\n if(confirm){\r\n trainee.Session.Authorized = false;\r\n scope.trainees.find(x => x.CrewId == trainee.CrewId).Session.Authorized = false;\r\n updateTraineeSignatures();\r\n }\r\n \r\n });\r\n }\r\n }\r\n return {\r\n restrict: 'E',\r\n terminal: false,\r\n templateUrl: 'views/Training/course.html',\r\n scope: false,\r\n link: link\r\n }\r\n }\r\n})();\r\n","(function () {\r\n 'use strict';\r\n\r\n a3_pilot_reports.factory('CourseFactory', CourseFactory);\r\n\r\n /**\r\n * @memberof PilotReports\r\n * @ngdoc factory\r\n * @name CourseFactory\r\n * @description \r\n * Add, Update, Delete and Get Training Courses.\r\n * @ngInject\r\n */\r\n function CourseFactory(IndexedDBService, GroundDutyFactory, $http,apiUrl) {\r\n\r\n /**\r\n * Initialize Course\r\n * @memberof CourseFactory\r\n */\r\n function Course() {\r\n this.Id = null;\r\n }\r\n\r\n var objType = 'Courses';\r\n var objCallback = Course;\r\n\r\n var service = {\r\n setCoursesFromServer: setCoursesFromServer,\r\n setCoursesToStorage : setCoursesToStorage, //save all courses\r\n addCourseToStorage : addCourseToStorage, //update course\r\n saveOneCourseToStorage : saveOneCourseToStorage, //save course\r\n getCoursesFromStorage : getCoursesFromStorage, //get all\r\n getCourseFromStorage : getCourseFromStorage, //getById\r\n updateCourseInfo : updateCourseInfo,\r\n updateFlightCourseInfo : updateFlightCourseInfo,\r\n getCoursesFromStorageByIds : getCoursesFromStorageByIds,\r\n setCourseOutdated: setCourseOutdated,\r\n upsertCourse : upsertCourse\r\n };\r\n\r\n /**\r\n * Get Course By Id\r\n * @memberof CourseFactory\r\n * @param {function} callback \r\n */\r\n function getCourseFromStorage(courseId, callback,errorCallback) {\r\n IndexedDBService.getById(objType, courseId).then(function (result) {\r\n\t\t\t\tcallback(result);\r\n\t\t\t}).catch(errorCallback);\r\n };\r\n \r\n /**\r\n * Get Courses\r\n * @memberof CourseFactory\r\n * @param {function} callback \r\n */\r\n function getCoursesFromStorage( callback,errorCallback) {\r\n IndexedDBService.getAll(objType).then(function (results) {\r\n\t\t\t\tcallback(results);\r\n\t\t\t}).catch(errorCallback);\r\n };\r\n\r\n \r\n /**\r\n * Get Course By Ids\r\n * @memberof CourseFactory\r\n * @param {function} callback \r\n */\r\n function getCoursesFromStorageByIds(courseIds, callback,errorCallback) {\r\n IndexedDBService.getAll(objType).then(function (results) {\r\n var selectedResults = [];\r\n results.forEach(function(result){\r\n if(courseIds.includes(result.Id) && selectedResults.filter(x=>x.Id == result.Id).length == 0)\r\n {\r\n selectedResults.push(result); \r\n }\r\n })\r\n\t\t\t\tcallback(selectedResults);\r\n\t\t\t}).catch(errorCallback);\r\n };\r\n\r\n \r\n\r\n function updateCourseInfo(courseId, dutyId, callback, errorOnSaveCallback, errorOnNetwork){\r\n var traingingApiURL = apiUrl + '/Training?courseId=' + courseId + '&dutyId=' + dutyId;\r\n $http.get(traingingApiURL, { 'Content-Type': 'application/json' })\r\n .then(function(data){\r\n var course = data.data;\r\n \r\n course.FetchedTime = moment.utc().toJSON();\r\n var duty = GroundDutyFactory.getGroundDutyFromStorage(dutyId);\r\n course.FetchedDutyCodes = duty.RelatedGroundDuties.filter(x => !x.IsInstructor).map(x => String(x.GroundDutyNo));\r\n course.LastFetchedDutyId = dutyId;\r\n\r\n //Upsert course in IndexDB \r\n upsertCourse(course, function(course){\r\n callback(course);\r\n }, errorOnSaveCallback);\r\n })\r\n .catch(errorOnNetwork)\r\n }\r\n \r\n function updateFlightCourseInfo(crewRouteCourse, date, dutyNo, dutyDay, callback, errorOnSaveCallback, errorOnNetwork){\r\n var traingingApiURL = apiUrl + '/Training/GetCrewRouteTraining';\r\n $http.post(traingingApiURL, crewRouteCourse, {'Content-Type' : 'application/json' })\r\n .then(function(data){\r\n var course = data.data;\r\n \r\n course.FetchedTime = moment.utc().toJSON();\r\n \r\n course.FetchedCrewRoute = {\r\n date: date, \r\n dutyNo: dutyNo,\r\n dutyDay: dutyDay\r\n };\r\n \r\n //Upsert course in IndexDB \r\n upsertCourse(course, function(course){\r\n callback(course);\r\n }, errorOnSaveCallback);\r\n })\r\n .catch(errorOnNetwork)\r\n }\r\n\r\n function upsertCourse(course, callback, errorOnSaveCallback){\r\n getCourseFromStorage(course.Id, function(localCourse) {\r\n if (localCourse) {\r\n saveOneCourseToStorage(course);\r\n } else {\r\n addCourseToStorage(course);\r\n }\r\n callback(course);\r\n }, errorOnSaveCallback);\r\n }\r\n\r\n\r\n function setCourseOutdated(courseId,callback,errorCallback){\r\n getCourseFromStorage(courseId,function(localCourse){ \r\n if(localCourse){\r\n localCourse.NeedsRefresh = true;\r\n saveOneCourseToStorage(localCourse);\r\n }\r\n\r\n if(callback){\r\n callback();\r\n }\r\n }, errorCallback)\r\n }\r\n \r\n\r\n \r\n /**\r\n * Set Courses from server API \r\n * @memberof CourseFactory\r\n * @param {array} courses Courses Object\r\n * @param {array} courseIdsToSend Current courses of the storage\r\n * @param {string} lastSyncDate Last Sync Date \r\n */\r\n function setCoursesFromServer(courses,callback,errorCallback) {\r\n \r\n getCoursesFromStorage(function(localCourses){\r\n // No courses found - Save All Incoming\r\n if (!localCourses || localCourses.length == 0) {\r\n setCoursesToStorage(courses);\r\n } \r\n else \r\n {\r\n for (var j = 0; j < courses.length; j++) {\r\n var IsCourseIncluded = false;\r\n\r\n for (var h = 0; h < localCourses.length; h++) {\r\n if (courses[j].Id == localCourses[h].Id) {\r\n IsCourseIncluded = true;\r\n break; \r\n }\r\n } \r\n \r\n //Update existing course\r\n if (IsCourseIncluded) {\r\n localCourses[h].Title = courses[j].Title; //Update title from sync\r\n saveOneCourseToStorage(localCourses[h]);\r\n } \r\n //Add a new Course\r\n else {\r\n addCourseToStorage(courses[j]);\r\n }\r\n }\r\n \r\n localCourses.filter(x=> !courses.some(z=>z.Id == x.Id)).forEach(function(course){\r\n IndexedDBService.remove(objType,course.Id)\r\n })\r\n } \r\n })\r\n \r\n }\r\n\r\n /**\r\n * Set Courses\r\n * @memberof CourseFactory\r\n * @param {array} Courses A list of courses to set to indexedDB\r\n */\r\n function setCoursesToStorage(Courses,callback,errorCallback) {\r\n IndexedDBService.addAll(objType, Courses).then(callback).catch(errorCallback);;\r\n };\r\n\r\n /**\r\n * Add Course to Storage\r\n * @memberof CourseFactory\r\n * @param {object} Course\r\n */\r\n function addCourseToStorage(Course,callback,errorCallback) {\r\n IndexedDBService.add(objType, Course).then(callback).catch(errorCallback);;\r\n };\r\n\r\n /**\r\n * Update Course to Storage\r\n * @memberof CourseFactory\r\n * @param {object} Course\r\n */\r\n function saveOneCourseToStorage(Course,callback,errorCallback) {\r\n IndexedDBService.put(objType, Course).then(callback).catch(errorCallback);\r\n };\r\n\r\n return service;\r\n }\r\n\r\n})();\r\n","(function () {\r\n 'use strict';\r\n\r\n a3_pilot_reports.factory('FlightSessionFactory', FlightSessionFactory);\r\n\r\n /**\r\n * @memberof PilotReports\r\n * @ngdoc factory\r\n * @name FlightSessionFactory\r\n * @description \r\n * Add, Update, Delete and Flight Sessions.\r\n * @ngInject\r\n */\r\n function FlightSessionFactory(IndexedDBService, CrewRouteFactory, FlightFactory, CourseFactory, $http, apiUrl, $filter) {\r\n\r\n /**\r\n * Initialize Session\r\n * @memberof FlightSessionFactory\r\n */\r\n function Session() {\r\n this.Id = null;\r\n }\r\n\r\n var objType = 'FlightSessions';\r\n var objCallback = Session;\r\n\r\n var service = {\r\n getAll: getAll,\r\n getSession: getSession,\r\n setSession: setSession,\r\n updateSession: updateSession,\r\n getSessionTrainees: getSessionTrainees,\r\n submitSession: submitSession,\r\n remove: remove,\r\n getCrewRouteFlightTrainees : getCrewRouteFlightTrainees,\r\n applyTraineeInfoToSession : applyTraineeInfoToSession\r\n };\r\n\r\n /**\r\n * Get all flight training sessions\r\n * @memberof FlightSessionFactory\r\n * @param {function} callback \r\n */\r\n function getAll(callback) {\r\n IndexedDBService.getAll(objType).then(function(results){\r\n callback(results);\r\n });\r\n };\r\n\r\n /**\r\n * Get session By day and courseId\r\n * @memberof FlightSessionFactory\r\n * @param {function} callback \r\n */\r\n function getSession(courseId, day, dutyNo, dutyDay, trainingFlightIds, afterRefresh, callback, errorCallback) {\r\n IndexedDBService.getById(objType, [day, courseId, dutyNo, dutyDay]).then(function (session) {\r\n CourseFactory.getCourseFromStorage(courseId, function (course) {\r\n if (course && !course.HasLimitedInfo && course.CrewCoursePhases && course.CourseTrainees) {\r\n mergeCourseWithSession(course, session, dutyNo, dutyDay, trainingFlightIds, afterRefresh);\r\n }\r\n callback(course);\r\n }, errorCallback);\r\n })\r\n .catch(errorCallback);\r\n }\r\n\r\n\r\n /**\r\n * Remove session By day, dutyNo, dutyDay and courseId\r\n * @memberof FlightSessionFactory\r\n * @param {function} callback \r\n */\r\n function remove(courseId, day, dutyNo, dutyDay, callback, errorCallback) {\r\n IndexedDBService.remove(objType, [day, courseId, dutyNo, dutyDay])\r\n .then(callback)\r\n .catch(errorCallback);\r\n };\r\n\r\n /**\r\n * Get session Trainees By day and courseId\r\n * @memberof FlightSessionFactory\r\n * @param {function} callback \r\n */\r\n function getSessionTrainees(courseId, day, dutyNo, dutyDay, callback, errorCallback) {\r\n IndexedDBService.getById(objType, [day, courseId, dutyNo, dutyDay]).then(function (session) {\r\n var trainees = session && session.trainees ? session.trainees : [];\r\n callback(trainees);\r\n })\r\n .catch(errorCallback);\r\n };\r\n\r\n /**\r\n * Set session\r\n * @memberof FlightSessionFactory\r\n * @param {function} callback \r\n */\r\n function setSession(session, callback, errorCallback) {\r\n IndexedDBService.getById(objType, [session.day, session.courseId, session.dutyNo, session.dutyDay]).then(function (result) {\r\n if (result) {\r\n saveSessionToStorage(session).then(callback).catch(errorCallback);;\r\n } else {\r\n addSessionToStorage(session).then(callback).catch(errorCallback);\r\n }\r\n }).catch(errorCallback);\r\n };\r\n\r\n /**\r\n * Set session\r\n * @memberof FlightSessionFactory\r\n * @param {function} callback \r\n */\r\n function updateSession(trainees, session, courseId, day, dutyNo, dutyDay, callback, errorCallback) {\r\n IndexedDBService.getById(objType, [day, courseId, dutyNo, dutyDay])\r\n .then(function (localSession) {\r\n var isNewSession = false;\r\n if (!localSession) {\r\n localSession = { courseId: courseId, day: day, dutyNo: dutyNo, dutyDay: dutyDay, trainees: [] }\r\n isNewSession = true;\r\n } else {\r\n localSession.trainees = [];\r\n }\r\n\r\n if (session) {\r\n localSession.Media = session.Media;\r\n localSession.ReleasedPhase = session.ReleasedPhase;\r\n localSession.PilotFunctions = session.PilotFunctions;\r\n localSession.TraineeEligibilty = session.TraineeEligibilty;\r\n }\r\n\r\n trainees.forEach(function (trainee) {\r\n localSession.trainees.push(trainee);\r\n });\r\n\r\n if (isNewSession) {\r\n addSessionToStorage(localSession).then(callback).catch(errorCallback);\r\n } else {\r\n saveSessionToStorage(localSession).then(callback).catch(errorCallback);\r\n }\r\n }).catch(errorCallback);\r\n }\r\n\r\n function mergeCourseWithSession(course, session, dutyNo, dutyDay, trainingFlightIds, afterRefresh) {\r\n course.HasLimitedSession = session == undefined;\r\n\r\n var hasPreviousSessions = mergeSyllabusWithHistory(course.CourseTrainees, course.CrewCoursePhases);\r\n filterTraineesByEligibility(dutyNo, dutyDay, course, trainingFlightIds, session, afterRefresh);\r\n \r\n course.CrewCoursePhases.forEach(function (phase) {\r\n calculatePhaseStatus(phase, course);\r\n });\r\n course.selectedPhase = getSelectedPhase(course);\r\n\r\n\r\n // Calculate eligible trainees phase status\r\n course.CourseTrainees.forEach(function (trainee) {\r\n var traineePhase = trainee.Phases.find(x => x.PhaseId == course.selectedPhase.PhaseId);\r\n if (traineePhase) {\r\n trainee.ActivePhaseStatus = traineePhase.PhaseStatus;\r\n }\r\n else {\r\n trainee.ActivePhaseStatus = \"Pending\";\r\n }\r\n trainee.Selectable = trainee.ActivePhaseStatus == \"InProgress\";\r\n });\r\n\r\n // Non InProgress trainees will be marked as NonEligible (remove further ahead trainees on multiple InProgress phases)\r\n course.CourseTrainees.filter(x => !x.Selectable).forEach(function(invalidPhaseTrainee){\r\n invalidPhaseTrainee.EligibilityStatus = false;\r\n invalidPhaseTrainee.EligibilityDesc = \"AlreadySubmitted\";\r\n course.NonEligibleTrainees.push(invalidPhaseTrainee);\r\n });\r\n course.CourseTrainees = course.CourseTrainees.filter(x => x.EligibilityStatus);\r\n \r\n // Get trainee sessions\r\n course.CourseTrainees.forEach(function (trainee) {\r\n var sessionTrainee = session ? session.trainees.find(x => x.CrewId == trainee.CrewId) : null;\r\n if (sessionTrainee) {\r\n trainee.Session = sessionTrainee.Session;\r\n } else {\r\n trainee.Session = {\r\n Released: course.selectedPhase.ModuleType == \"Training\" ? false : true,\r\n CrewId: trainee.CrewId,\r\n Items: [],\r\n Absent: false,\r\n DayGrading: {\r\n Comments: null,\r\n Grade: null,\r\n Competences: []\r\n },\r\n ReleaseGrading: {\r\n Comments: null,\r\n Grade: null,\r\n Competences: []\r\n }\r\n }\r\n }\r\n });\r\n\r\n /* Set default values for release option\r\n Training Modules: 'No' release as default\r\n Check Module: 'Yes' release as default\r\n */\r\n course.ReleasedPhase = course.selectedPhase.ModuleType == \"Training\" ? false : true;\r\n\r\n if (session){\r\n course.Media = session.Media;\r\n course.ReleasedPhase = session.ReleasedPhase;\r\n course.PilotFunctions = session.PilotFunctions;\r\n course.TraineeEligibilty = session.TraineeEligibilty;\r\n }\r\n }\r\n\r\n function getSelectedPhase(course){\r\n var hasSelectedPhase = false;\r\n var phases = course.CrewCoursePhases;\r\n\r\n phases.forEach(function (phase, index, array) {\r\n phase.isFirst = index == 0;\r\n phase.isLast = (index + 1 == array.length);\r\n // Select the first InProgress & selected phase\r\n if (!hasSelectedPhase && phase.Status == \"InProgress\" && phase.isSelected) {\r\n phase.Selected = true;\r\n hasSelectedPhase = true;\r\n }\r\n });\r\n \r\n // Select the first InProgress phase\r\n if (!hasSelectedPhase && phases.some(x => x.Status == \"InProgress\")) {\r\n phases.find(x => x.Status == \"InProgress\").Selected = true;\r\n hasSelectedPhase = true;\r\n }\r\n\r\n if (!hasSelectedPhase) {\r\n phases.find(x => x.isFirst).Selected = true;\r\n }\r\n\r\n var selectedPhase = phases.find(x => x.Selected);\r\n\r\n return selectedPhase;\r\n }\r\n\r\n\r\n function filterTraineesByEligibility(dutyNo, dutyDay, course, trainingFlightIds, session, afterRefresh){\r\n // Trainee Eligiblity cases\r\n // 1. After refresh - Save newly fetched eligibility in session\r\n // 2. No refresh & Session exists - Get last fetched eligibility from session\r\n // 3. No refresh & No session exists - Rely on previously fetched eligibility (different duty - same course)\r\n\r\n var traineeEligibility = course.TraineeEligibilty;\r\n if(!afterRefresh && session && session.TraineeEligibilty){ \r\n traineeEligibility = session.TraineeEligibilty;\r\n }\r\n if(session) session.TraineeEligibilty = traineeEligibility; //update session eligibility\r\n \r\n // Get crew route trainees without any training records\r\n var trainees = getCrewRouteFlightTrainees(dutyNo, dutyDay, trainingFlightIds);\r\n \r\n var inactiveTrainees = trainees.filter(x => !course.CourseTrainees.some(z => z.CrewId == x.CrewId));\r\n\r\n //Exclude Non valid trainees\r\n var eligibleTraineeIds = Object.keys(traineeEligibility).filter(x => traineeEligibility[x] == \"NotStarted\" || traineeEligibility[x] == \"ValidPhase\" || traineeEligibility[x] == \"FailedCertificate\").map(Number);\r\n var eligibleTrainees = inactiveTrainees.filter(x => eligibleTraineeIds.includes(x.CrewId));\r\n eligibleTrainees.forEach(function (trainee) { trainee.EligibilityStatus = true });\r\n createNewPhaseTrainees(dutyNo, dutyDay, trainingFlightIds, course, eligibleTrainees);\r\n \r\n // Merge eligibleTrainees (inactive) with CourseTrainees (eligible & active)\r\n course.CourseTrainees.forEach(function (trainee) { trainee.EligibilityStatus = true });\r\n course.CourseTrainees.push(...eligibleTrainees);\r\n \r\n // Non eligible trainees\r\n var nonEligibleTrainees = inactiveTrainees.filter(x => !eligibleTraineeIds.includes(x.CrewId));\r\n course.NonEligibleTrainees = nonEligibleTrainees;\r\n\r\n nonEligibleTrainees.forEach(function (trainee) {\r\n trainee.EligibilityStatus = false;\r\n trainee.EligibilityDesc = traineeEligibility[trainee.CrewId];\r\n });\r\n \r\n // Result:\r\n // CourseTrainees = eligible trainees (active or new)\r\n // Non EligibleTrainees\r\n }\r\n\r\n /**\r\n * Create first phase foreach trainee\r\n * @param {object} groundDuty\r\n * @param {object} course\r\n * @param {array} trainees Eligible trainees that haven't yet started training\r\n */\r\n function createNewPhaseTrainees(dutyNo, dutyDay, trainingFlightIds, course, trainees) {\r\n var flights = FlightFactory.getFlightsByDutyNo(dutyNo, dutyDay).filter(f => trainingFlightIds.some(z => z == f.FlightId));\r\n //Match TrainingIndicators with PhaseDutyNos\r\n var crewCoursePhaseDutyNos = [];\r\n var crewrouteTrainingIndicators = [];\r\n course.CrewCoursePhases.forEach(function(coursePhase){\r\n crewCoursePhaseDutyNos = crewCoursePhaseDutyNos.concat(coursePhase.FlightTrainingIndicators);\r\n });\r\n flights.forEach(function(flight){\r\n crewrouteTrainingIndicators.push(flight.TrainingIndicatorId.toString());\r\n });\r\n\r\n var relatedDutyNos = crewCoursePhaseDutyNos.filter(x => crewrouteTrainingIndicators.includes(x));\r\n var relatedPhases = course.CrewCoursePhases.filter(x => x.FlightTrainingIndicators.some(fti => relatedDutyNos.includes(fti)));\r\n\r\n //From related phases, select first in order\r\n relatedPhases = $filter('orderBy')(relatedPhases, 'OrderNo');\r\n var firstPhase = relatedPhases[0];\r\n\r\n trainees.forEach(function (trainee) {\r\n trainee.Phases = [{\r\n PhaseId: firstPhase.PhaseId,\r\n PhaseStatus: \"InProgress\",\r\n RepeatRequestedItems: [],\r\n isSelected: true //selectedPhase\r\n }];\r\n })\r\n }\r\n \r\n function getCrewRouteFlightTrainees(dutyNo, dutyDay, trainingFlightIds) {\r\n var flights = FlightFactory.getFlightsByDutyNo(dutyNo, dutyDay).filter(f => trainingFlightIds.some(z => z == f.FlightId));\r\n\r\n var trainees = [];\r\n flights.forEach(function(flight){\r\n flight.crew.filter(x => x.IsTrainee && !x.isDHC).forEach(function(trainee){\r\n if(!trainees.some(x => x.id == trainee.id)){ //do not push duplicates : trainees that are in multiple flights\r\n trainees.push(trainee);\r\n }\r\n });\r\n });\r\n\r\n trainees.forEach(function(trainee){\r\n trainee.CrewId = trainee.id;\r\n trainee.Id = trainee.id;\r\n trainee.Name = trainee.name;\r\n trainee.AimsId = trainee.aimsId;\r\n\r\n });\r\n return trainees;\r\n }\r\n\r\n function calculatePhaseStatus(phase, course) {\r\n course.CourseTrainees.forEach(function (trainee) {\r\n var traineePhase = trainee.Phases.find(x => x.PhaseId == phase.PhaseId);\r\n if (traineePhase && traineePhase.PhaseStatus == \"InProgress\") {\r\n phase.Status = \"InProgress\";\r\n } else if (!traineePhase && phase.Status != \"InProgress\") {\r\n phase.Status = \"Pending\";\r\n } else if (traineePhase && traineePhase.PhaseStatus == \"Completed\" && phase.Status != \"InProgress\") {\r\n phase.Status = \"Completed\";\r\n }\r\n //Selected phase, If at least one trainee has it selected\r\n if(traineePhase && !phase.isSelected){\r\n phase.isSelected = traineePhase.isSelected;\r\n }\r\n });\r\n\r\n }\r\n \r\n function mergeSyllabusWithHistory(trainees, phases) {\r\n var flatSullabusItems = [];\r\n trainees.forEach(function (trainee) {\r\n trainee.Phases.forEach(function (phase) {\r\n phase.Sessions.forEach(function (session) {\r\n session.Items.forEach(function (item) {\r\n var flatItem = createFlatHistorySullabusItem(trainee, phase, session, item);\r\n flatSullabusItems.push(flatItem);\r\n });\r\n });\r\n });\r\n });\r\n\r\n\r\n phases.filter(x => x.Syllabus).forEach(function (phase, index, array) {\r\n phase.Syllabus.SyllabusItems.forEach(function (syllabusItem) {\r\n syllabusItem.History = flatSullabusItems.filter(item => item.ItemId == syllabusItem.Id);\r\n })\r\n });\r\n var hasPreviousSessions = flatSullabusItems.length > 0;\r\n\r\n return hasPreviousSessions;\r\n }\r\n\r\n function createFlatHistorySullabusItem(trainee, phase, session, item) {\r\n var flatItem =\r\n {\r\n CrewId: trainee.CrewId,\r\n PhaseId: phase.PhaseId,\r\n SessionId: session.SessionId,\r\n SessionComments: session.SessionComments,\r\n SubmissionDate: item.SubmissionDate,\r\n RepeatRequired: item.RepeatRequired,\r\n Tries: item.Tries,\r\n ItemId: item.SyllabusItemId,\r\n Grade: session.Grade,\r\n GradeType: session.GradeType,\r\n InstructorName: session.InstructorName,\r\n InstructorAimsId: session.InstructorAimsId\r\n };\r\n return flatItem;\r\n }\r\n\r\n /**\r\n * Add Session to Storage\r\n * @memberof FlightSessionFactory\r\n * @param {object} Session\r\n */\r\n function addSessionToStorage(session) {\r\n return IndexedDBService.add(objType, session);\r\n };\r\n\r\n /**\r\n * Update Session to Storage\r\n * @memberof FlightSessionFactory\r\n * @param {object} Session\r\n */\r\n function saveSessionToStorage(session) {\r\n return IndexedDBService.put(objType, session);\r\n };\r\n\r\n function submitSession(submittedSession, callback) {\r\n var traingingApiURL = apiUrl + '/Training/SubmitTraining';\r\n return $http.post(traingingApiURL, submittedSession, { 'Content-Type': 'application/json' })\r\n .then(callback);\r\n } \r\n\r\n function applyTraineeInfoToSession(course, courseId, day, dutyNo, dutyDay, callback, errorCallback){\r\n IndexedDBService.getById(objType, [day, courseId, dutyNo, dutyDay])\r\n .then(function (localSession) {\r\n var isNewSession = false;\r\n if (!localSession) {\r\n localSession = { \r\n courseId: courseId, \r\n day: day, \r\n dutyNo: dutyNo, \r\n dutyDay: dutyDay, \r\n trainees: [],\r\n TraineeEligibilty : course.TraineeEligibilty,\r\n CourseTrainees : course.CourseTrainees\r\n };\r\n isNewSession = true;\r\n } else {\r\n localSession.CourseTrainees = course.CourseTrainees;\r\n localSession.TraineeEligibilty = course.TraineeEligibilty;\r\n }\r\n\r\n if (isNewSession) {\r\n addSessionToStorage(localSession).then(callback).catch(errorCallback);\r\n } else {\r\n saveSessionToStorage(localSession).then(callback).catch(errorCallback);\r\n }\r\n }).catch(errorCallback);\r\n }\r\n return service;\r\n }\r\n})();\r\n","(function () {\r\n 'use strict';\r\n\r\n a3_pilot_reports.directive('grading', grading);\r\n /**\r\n * @memberof PilotReports\r\n * @ngdoc directive\r\n * @name grading\r\n * @restrict E\r\n * @description\r\n * Implementation of overall grading\r\n * @example\r\n * Usage:\r\n *Check your connection and try again!
\",\r\n };\r\n }\r\n else if(scope.settings.TraineeSignature && scope.trainees.filter(x => x.RadioModel).some(x => !x.Authorized)){\r\n\r\n if(selectedTrainee && !selectedTrainee.Authorized){\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-pencil-square-o text-orange\",\r\n msg: \"\" + selectedTrainee.TraineeName + \" needs to sign the form!\",\r\n scrollToTop:false\r\n };\r\n }\r\n else{\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-warning text-orange\",\r\n msg: \"All trainees need to sign their forms!\",\r\n scrollToTop:true\r\n };\r\n }\r\n }\r\n else if (!isGradingValid()) {\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-warning text-orange\",\r\n msg : \"\"\r\n };\r\n if(selectedTrainee && !selectedTrainee.ReleaseGrading.isCompetenceValid) {\r\n info.msg = \"You need to grade all competences for \" + selectedTrainee.TraineeName + \" before submitting!\"\r\n }\r\n else if(selectedTrainee && !selectedTrainee.ReleaseGrading.isGradeValid){\r\n info.msg = \"You need to grade \" + selectedTrainee.TraineeName + \" before submitting!\"\r\n }\r\n else if(!scope.gradingValidationInfo.isReleaseCompetencesValid || !scope.gradingValidationInfo.isReleaseGradingValid){\r\n info.msg = \"You need to grade all trainees before submitting!\"\r\n }\r\n }\r\n else {\r\n isValid = true;\r\n }\r\n\r\n scope.info = info;\r\n return isValid;\r\n }\r\n\r\n function validateTraineeForm(trainee) {\r\n /*Requirements before trainee signature\r\n 1. OnLine Mode\r\n 2. Valid Trainee Release Grading\r\n */\r\n\r\n var isValid = false;\r\n var info = {\r\n border: \"\",\r\n icon: \"\",\r\n msg: \"\"\r\n };\r\n\r\n if (!window.navigator.onLine) {\r\n info = {\r\n border: \"border-left-red\",\r\n icon: \"fa-warning text-red\",\r\n msg: \" Online mode is required in order to submit a training.Check your connection and try again!
\",\r\n };\r\n }\r\n else if (!trainee.ReleaseGrading.isCompetenceValid) {\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-warning text-orange\",\r\n msg : \"You need to grade all competences!\"\r\n };\r\n }\r\n else if (!trainee.ReleaseGrading.isGradeValid) {\r\n info = {\r\n border: \"border-left-orange\",\r\n icon: \"fa-warning text-orange\",\r\n msg : \"You need to select an overall grade!\"\r\n };\r\n }\r\n else {\r\n isValid = true;\r\n }\r\n\r\n scope.info = info;\r\n return isValid;\r\n }\r\n\r\n function isGradingValid() {\r\n var isReleaseGradingValid = scope.settings.GradeType == \"NotSet\";\r\n var isReleaseCompetencesValid = scope.settings.Competences.length == 0;\r\n\r\n if (!isReleaseGradingValid) isReleaseGradingValid = !scope.trainees.filter(x => x.RadioModel).some(x => !x.ReleaseGrading.isGradeValid);\r\n\r\n if (!isReleaseCompetencesValid) isReleaseCompetencesValid = !scope.trainees.filter(x => x.RadioModel).some(x => !x.ReleaseGrading.isCompetenceValid);\r\n\r\n scope.gradingValidationInfo = {\r\n isReleaseGradingValid: isReleaseGradingValid,\r\n isReleaseCompetencesValid: isReleaseCompetencesValid,\r\n };\r\n\r\n return isReleaseGradingValid && isReleaseCompetencesValid;\r\n }\r\n\r\n\r\n function openTraineeSignature(trainee){\r\n //Enter signature mode : trainee form becomes read-only\r\n if(!trainee.Authorized){\r\n //Trainee can sign only if his form is valid\r\n if (!validateTraineeForm(trainee)) {\r\n scope.modalInstance = $uibModal.open({\r\n templateUrl: 'views/Training/dlgSubmitValidation.html',\r\n scope: scope,\r\n backdrop: 'static',\r\n keyboard: false,\r\n size: 'lg'\r\n });\r\n }\r\n else{\r\n trainee.Session = {Authorized:false};\r\n trainee.Name = trainee.TraineeName;\r\n scope.modalInstance = $uibModal.open({\r\n templateUrl: 'views/Training/dlgTraineeSignature.html',\r\n controller: 'TraineeSignatureModalCtrl',\r\n scope: scope,\r\n backdrop: 'static',\r\n keyboard: false,\r\n size: 'md',\r\n resolve: {\r\n trainee: function () { return trainee; },\r\n signatureSuccess: function () { return function(){trainee.Authorized = true}; }\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n function resetSignature(trainee){\r\n var modalInstance = $uibModal.open({\r\n templateUrl: 'views/Training/dlgResetSignature.html',\r\n controller: 'TraineeSignatureModalCtrl',\r\n scope: scope,\r\n backdrop: 'static',\r\n keyboard: false,\r\n size: 'md',\r\n resolve: {\r\n trainee: function () { return trainee; },\r\n signatureSuccess: function () { return function(){}; }\r\n }\r\n });\r\n\r\n modalInstance.result.then(function (confirm) {\r\n if(confirm){\r\n trainee.Authorized = false;\r\n trainee.Session.Authorized = false;\r\n }\r\n \r\n });\r\n }\r\n }\r\n\r\n return {\r\n restrict: 'E',\r\n terminal: false,\r\n templateUrl: 'views/Training/releasable-module.tpl.html',\r\n scope: false,\r\n link: link\r\n }\r\n }\r\n\r\n})();\r\n","(function () {\r\n\r\n a3_pilot_reports.directive('releaseWarning', releaseWarning);\r\n\r\n /**\r\n * @memberof CabinReports\r\n * @ngdoc directive\r\n * @name releaseWarning\r\n * @restrict E\r\n * @description\r\n * Soft rules alert in release\r\n * @example\r\n * Usage:\r\n *