// // Copyright © 2024 Hardcore Engineering Inc. // // Licensed under the Eclipse Public License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. You may // obtain a copy of the License at https://www.eclipse.org/legal/epl-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // // See the License for the specific language governing permissions and // limitations under the License. // import training, { type Training } from '@hcengineering/training' import { canViewTraining } from './canViewTraining' import { getClient } from '@hcengineering/presentation' import { getCurrentEmployeeRef } from './getCurrentEmployeeRef' export async function canViewTrainingOverview (trn: Training): Promise { if (canViewTraining(trn)) { return true } const client = getClient() const trainingRequests = await client.findAll(training.class.TrainingRequest, { attachedTo: trn._id, trainees: getCurrentEmployeeRef() }) return trainingRequests.some((req) => req.canceledOn == null) }