public Dictionary<Type, ISwitchable> CreatePages(User user) { var pages = new Dictionary<Type, ISwitchable>(); switch (user.UserRole) { case Role.Vet: pages.Add(typeof (View.Vet.ProtegesPage), new View.Vet.ProtegesPage(new ProtegesPageViewModel(user))); pages.Add(typeof (View.Vet.MedicalProceduresPage), new View.Vet.MedicalProceduresPage(new ViewModel.Vet.MedicalProceduresPageViewModel(user))); pages.Add(typeof (DiseasePage), new DiseasePage(new DiseasePageViewModel(user))); break; case Role.Manager: pages.Add(typeof (View.Manager.EmployeesPage), new View.Manager.EmployeesPage(new ViewModel.Manager.EmployeesPageViewModel(user))); pages.Add(typeof (View.Manager.AnimalsPage), new View.Manager.AnimalsPage(new ViewModel.Manager.AnimalsPageViewModel(user))); pages.Add(typeof (View.Manager.DiseasesPage), new View.Manager.DiseasesPage(new ViewModel.Manager.DiseasesPageViewModel(user))); pages.Add(typeof (View.Manager.MedicalProceduresPage), new View.Manager.MedicalProceduresPage(new ViewModel.Manager.MedicalProceduresPageViewModel(user))); break; case Role.RegularEmployee: pages.Add(typeof (CleaningPage), new CleaningPage(new CleaningPageViewModel(user))); pages.Add(typeof (FeedingPage), new FeedingPage(new FeedingPageViewModel(user))); pages.Add(typeof (View.RegularEmployee.ProtegesPage), new View.RegularEmployee.ProtegesPage(new RegularEmployee.ProtegesPageViewModel(user))); break; case Role.Admin: pages.Add(typeof (View.Admin.AnimalsPage), new View.Admin.AnimalsPage(new ViewModel.Admin.AnimalsPageViewModel(user))); pages.Add(typeof (CagesAndAreasPage), new CagesAndAreasPage(new CagesAndAreasPageViewModel(user))); pages.Add(typeof (View.Admin.EmployeesPage), new View.Admin.EmployeesPage(new ViewModel.Admin.EmployeesPageViewModel(user))); pages.Add(typeof (SpeciesPage), new SpeciesPage(new SpeciesPageViewModel(user))); pages.Add(typeof (View.Admin.DiseasesPage), new View.Admin.DiseasesPage(new ViewModel.Admin.DiseasesPageViewModel(user))); pages.Add(typeof (View.Admin.MedicalProceduresPage), new View.Admin.MedicalProceduresPage(new ViewModel.Admin.MedicalProceduresPageViewModel(user))); pages.Add(typeof (View.Admin.CleaningsAndFeedingsPage), new View.Admin.CleaningsAndFeedingsPage(new ViewModel.Admin.CleaningsAndFeedingsPageViewModel(user))); break; default: throw new ArgumentOutOfRangeException(); } return pages; }
public MainWindow(Type page, User user, MainWindowViewModel viewModel) { InitializeComponent(); Switcher.PageSwitcher = this; DataContext = viewModel; pages = viewModel.CreatePages(user); Switcher.Switch(page); Closing += viewModel.OnWindowClosing; }
public ProtegesPageViewModel(User user) : base(user, new Dialoger(), new SQLSelect(), new SQLInsert(),new SQLUpdate(), new SQLDelete()) { Genders = new List<Gender> { Gender.Male, Gender.Female, Gender.Gonomochronism, Gender.Intersex, Gender.NotSpecified }; OnPropertyChanged("Genders"); OpenEditAnimalWindowCommand = new RelayCommand(obj => OpenEditAnimalWindow()); EditAnimalCommand = new RelayCommand(obj => EditAnimal()); }
public FeedingPageViewModel(User user) : base(user, new Dialoger(), new SQLSelect(), new SQLInsert(), new SQLUpdate(), new SQLDelete()) { LoadData(); AddFeedingCommand = new RelayCommand(obj => AddFeeding()); RemoveFeedingCommand = new RelayCommand(obj => RemoveFeeding()); OpenEditFeedingWindowCommand = new RelayCommand(obj => OpenEditFeedingWindow()); EditFeedingCommand = new RelayCommand(obj => EditFeeding()); }
public DiseasePageViewModel(User user) : base(user, new Dialoger(), new SQLSelect(), new SQLInsert(), new SQLUpdate(), new SQLDelete()) { LoadData(); AddDiseaseCommand = new RelayCommand(obj => AddDisease()); EditDiseaseCommand = new RelayCommand(obj => EditDisease()); OpenEditDiseaseWindowCommand = new RelayCommand(obj => OpenEditDiseaseWindow()); RemoveDiseaseCommand = new RelayCommand(obj => RemoveDisease()); }
public MedicalProceduresPageViewModel(User user) : base(user, new Dialoger(), new SQLSelect(), new SQLInsert(), new SQLUpdate(), new SQLDelete()) { LoadData(); AddMedicalProcedureCommand = new RelayCommand(obj => AddMedicalProcedure()); EditMedicalProcedureCommand = new RelayCommand(obj => EditMedicalProcedure()); RemoveMedicalProcedureCommand = new RelayCommand(obj => RemoveMedicalProcedure()); OpenEditMedicalProcedureWindowCommand = new RelayCommand(obj => OpenEditMedicalProcedureWindow()); OpenAddMedicineWindowCommand = new RelayCommand(obj => OpenAddMedicineWindow()); AddMedicineCommand = new RelayCommand(obj => AddMedicine()); }
public EmployeesPageViewModel(User user) : base(new Dialoger(), user, new SQLSelect(), new SQLInsert(), new SQLUpdate()) { LoadData(); Genders = new List<Gender> {Gender.Male, Gender.Female}; OnPropertyChanged("Genders"); Roles = new List<Role> {Role.Manager, Role.Vet, Role.RegularEmployee}; OnPropertyChanged("Roles"); AddEmployeeCommand = new RelayCommand(obj => AddEmployee()); OpenEditEmployeeWindowCommand = new RelayCommand(obj => OpenEditEmployeeWindow()); EditEmployeeCommand = new RelayCommand(obj => EditEmployee()); }
public ManagerBaseViewModel(IDialoger dialoger, User user, ISQLSelect sqlSelect, ISQLInsert sqlInsert, ISQLUpdate sqlUpdate) { this.dialoger = dialoger; this.user = user; this.sqlSelect = sqlSelect; this.sqlInsert = sqlInsert; this.sqlUpdate = sqlUpdate; employee = sqlSelect.GetEmployee(this.user); EmployeesCommand = new RelayCommand(obj => GoToEmployeesPage()); AnimalsCommand = new RelayCommand(obj => GoToAnimalsPage()); DiseasesCommand = new RelayCommand(obj => GoToDiseasesPage()); MedicalProceduresCommand = new RelayCommand(obj => GoToMedicalProceduresPage()); }
protected VetBaseViewModel(User user, IDialoger dialoger, ISQLSelect sqlSelect, ISQLInsert sqlInsert, ISQLUpdate sqlUpdate, ISQLDelete sqlDelete) { User = user; this.sqlSelect = sqlSelect; this.sqlInsert = sqlInsert; this.sqlUpdate = sqlUpdate; this.sqlDelete = sqlDelete; employee = sqlSelect.GetEmployee(User); this.dialoger = dialoger; LoadData(); DiseasesCommand = new RelayCommand(obj => GoToDiseasePage()); MedicalProceduresCommand = new RelayCommand(obj => GoToMedicalProceduresPage()); ProtegesCommand = new RelayCommand(obj => GoToProtegesPage()); }
protected AdminBaseViewModel(User user, ISQLCredentials sqlCredentials, IDialoger dialoger, ISQLSelect sqlSelect, ISQLInsert sqlInsert, ISQLUpdate sqlUpdate) { this.sqlCredentials = sqlCredentials; this.dialoger = dialoger; this.user = user; this.sqlSelect = sqlSelect; this.sqlInsert = sqlInsert; this.sqlUpdate = sqlUpdate; EmployeesCommand = new RelayCommand(obj => GoToEmployeesPage()); AnimalsCommand = new RelayCommand(obj => GoToAnimalsPage()); SpeciesCommand = new RelayCommand(obj => GoToSpeciesPage()); CagesAndAreasCommand = new RelayCommand(obj => GoToCagesAndAreasPage()); MedicalProceduresCommand = new RelayCommand(obj => GoToMedicineProceduresPage()); DiseasesCommand = new RelayCommand(obj => GoToDiseasesPage()); CleaningsAndFeedingsCommand = new RelayCommand(obj => GoToCleaningsAndFeedingsPage()); }
protected RegularEmployeeBaseViewModel(User user, IDialoger dialoger, ISQLSelect sqlSelect, ISQLInsert sqlInsert, ISQLUpdate sqlUpdate, ISQLDelete sqlDelete) { this.dialoger = dialoger; this.sqlSelect = sqlSelect; this.sqlInsert = sqlInsert; this.sqlUpdate = sqlUpdate; this.sqlDelete = sqlDelete; User = user; employee = sqlSelect.GetEmployee(User); LoadData(); FeedingCommand = new RelayCommand(obj => GoToFeedingPage()); CleaningCommand = new RelayCommand(obj => GoToCleaningPage()); ProtegesCommand = new RelayCommand(obj => GoToProtegesPage()); }
private CagesAndAreasPageViewModel(User user, ISQLDelete sqlDelete) : base(user, new SQLCredentials(), new Dialoger(), new SQLSelect(), new SQLInsert(), new SQLUpdate()) { this.sqlDelete = sqlDelete; LoadData(); AddCageCommand = new RelayCommand(obj => AddNewCage()); AddAreaCommand = new RelayCommand(obj => AddNewArea()); OpenEditAreaWindowCommand = new RelayCommand(obj => OpenEditAreaWindow()); OpenEditCageWindowCommand = new RelayCommand(obj => OpenEditCageWindow()); EditCageCommand = new RelayCommand(obj => EditCage()); EditAreaCommand = new RelayCommand(obj => EditArea()); RemoveAreaCommand = new RelayCommand(obj => RemoveArea()); RemoveCageCommand = new RelayCommand(obj => RemoveCage()); }
public AnimalsPageViewModel(User user) : base(user, new SQLCredentials(), new Dialoger(), new SQLSelect(), new SQLInsert(), new SQLUpdate()) { LoadData(); Genders = new List<Gender> { Gender.Male, Gender.Female, Gender.Gonomochronism, Gender.Intersex, Gender.NotSpecified }; OnPropertyChanged("Genders"); Areas = sqlSelect.GetListOfAreas(); OnPropertyChanged("Areas"); Species = sqlSelect.GetListOfAllSpecies(); OnPropertyChanged("Species"); Guards = sqlSelect.GetListOfAllGuards(); OnPropertyChanged("Guards"); Vets = sqlSelect.GetListOfAllVets(); OnPropertyChanged("Vets"); AddAnimalCommand = new RelayCommand(obj => AddNewAnimal()); EditAnimalCommand = new RelayCommand(obj => EditAnimal()); OpenEditAnimalWindowCommand = new RelayCommand(obj => OpenEditAnimalWindow()); }
public MedicalProceduresPageViewModel(User user) : base(new Dialoger(), user, new SQLSelect(), new SQLInsert(), new SQLUpdate()) { LoadData(); }
public void LogIn(Type page, User user) { var pageSwitcher = new MainWindow(page, user, new MainWindowViewModel()); pageSwitcher.Show(); Close(); }
public ProtegesPageViewModel(User user) : base(user, new Dialoger(), new SQLSelect(), new SQLInsert(), new SQLUpdate(), new SQLDelete()) { LoadData(); }
public DiseasesPageViewModel(User user) : base(new Dialoger(), user, new SQLSelect(), new SQLInsert(), new SQLUpdate()) { LoadData(); }
public CagesAndAreasPageViewModel(User user) : this(user, new SQLDelete()) { }
public SpeciesPageViewModel(User user) : base(user, new SQLCredentials(), new Dialoger(), new SQLSelect(), new SQLInsert(), new SQLUpdate()) { LoadData(); }
public CleaningsAndFeedingsPageViewModel(User user) : base(user, new SQLCredentials(), new Dialoger(), new SQLSelect(), new SQLInsert(), new SQLUpdate()) { LoadData(); }