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());
        }