public void ShowAddTrainingGroup(IFormFactory formFactory,
                                         ITrainingGroupRepository trainingGroupRepository,
                                         ITrainingRepository trainingRepository,
                                         ITrainingPeriodRepository trainingPeriodRepository,
                                         IMainController mainController)
        {
            IAddTrainingGroupForm form = formFactory.CreateAddTrainingGroupForm();

            List <Training> trainings = trainingRepository.GetAllTrainings();

            List <TrainingPeriod> trainingPeriods = trainingPeriodRepository.GetAllTrainingPeriods().ToList();

            // Uklanjanje zauzetih termina s popisa dostupnih termina
            foreach (TrainingGroup group in trainingGroupRepository.GetAllTrainingGroups())
            {
                foreach (TrainingPeriod trainingPeriod in group.TrainingPeriods)
                {
                    int index = trainingPeriods.FindIndex(period => period.PeriodId == trainingPeriod.PeriodId);

                    if (index != -1)
                    {
                        trainingPeriods.RemoveAt(index);
                    }
                }
            }

            List <TrainingPeriod> newPeriods = trainingPeriods.Select(item => item).ToList();

            form.ShowModal(mainController, trainings, newPeriods);
        }
Esempio n. 2
0
        public void ShowAddClient(IFormFactory formFactory,
                                  ITrainingGroupRepository trainingGroupRepository,
                                  IMainController mainController)
        {
            IAddClientForm form = formFactory.CreateAddClientForm();

            List <TrainingGroup> trainingGroups = trainingGroupRepository.GetAllTrainingGroups();

            form.ShowModal(mainController, trainingGroups);
        }
        public void ShowTrainingGroups(IViewTrainingGroupsForm form, ITrainingGroupRepository trainingGroupRepository,
                                       IMainController mainController)
        {
            List <TrainingGroup> trainingGroups = trainingGroupRepository.GetAllTrainingGroups();

            Subject subject = (Subject)trainingGroupRepository;

            subject.Attach((IObserver)form);

            form.ShowModaless(mainController, trainingGroups);
        }
Esempio n. 4
0
        public void RemoveTrainingWithName(string trainingName, ITrainingRepository trainingRepository, ITrainingGroupRepository trainingGroupRepository)
        {
            List <TrainingGroup> trainingGroups = trainingGroupRepository.GetAllTrainingGroups();

            if (!trainingGroups.Any(group =>
                                    group.Training.Name == trainingName))
            {
                trainingRepository.RemoveTrainingWithName(trainingName);
            }
            else
            {
                throw new DependantDataNotDeletableException();
            }
        }
Esempio n. 5
0
        public void ShowEditClient(IFormFactory formFactory,
                                   IClientRepository clientRepository,
                                   ITrainingGroupRepository trainingGroupRepository,
                                   string oib,
                                   IMainController mainController)
        {
            IEditClientForm form = formFactory.CreateEditClientForm();

            Client client = clientRepository.GetClientWithOib(oib);

            List <TrainingGroup> trainingGroups = trainingGroupRepository.GetAllTrainingGroups();

            form.ShowModal(mainController, client, trainingGroups);
        }
Esempio n. 6
0
        public void RemoveTrainingPeriodWithId(int periodId, ITrainingPeriodRepository trainingPeriodRepository, ITrainingGroupRepository trainingGroupRepository)
        {
            List <TrainingGroup> trainingGroups = trainingGroupRepository.GetAllTrainingGroups();

            if (!trainingGroups.Any(group =>
                                    group.TrainingPeriods.FindIndex(period =>
                                                                    period.PeriodId == periodId) != -1))
            {
                trainingPeriodRepository.RemoveTrainingPeriodWithId(periodId);
            }
            else
            {
                throw new DependantDataNotDeletableException();
            }
        }