/// <summary> /// Constructor for YearInGroup form. Assings repositories, disables buttons for non admin users. /// </summary> /// <param name="_groupId">Id of a group the year belongs to.</param> /// <param name="_yearId">Id of a selected year.</param> /// <param name="_isAdmin">Determines wether the form is displayed by an admin.</param> public YearInGroupForm(int _groupId, int _yearId, bool _isAdmin) { InitializeComponent(); groupId = _groupId; yearId = _yearId; isAdmin = _isAdmin; users = new HttpUsersRepository(); years = new HttpYearsRepository(); subjects = new HttpSubjectsRepository(); groupDetails = new HttpGroupDetailsRepository(); usersGridView.CellDoubleClick += seeUser; subjectsGridView.CellDoubleClick += editSubject; UpdateTables(); btnAddSubject.Click += AddSubject; if (!isAdmin) { btnAddSubject.Visible = false; btnDeleteYear.Visible = false; btnEditYear.Visible = false; } }
/// <summary> /// Default constructor for Year Form /// </summary> public YearForm() { InitializeComponent(); yearsRepo = new HttpYearsRepository(); txtYearStart.Text = DateTime.Now.ToString("d"); txtYearEnd.Text = DateTime.Now.AddDays(100).ToString("d"); yearLocal = new YearsViewModel(); //yearLocal.user_id = Globals.CurrentUser.id; }
/// <summary> /// Loads data from given year to a form. /// <param name="year">Year to be displayed</param> /// </summary> private async void LoadData(YearsViewModel year) { yearsRepo = new HttpYearsRepository(); if ((yearLocal = await yearsRepo.GetOne(year.id)) != null) { txtYearDesc.Text = yearLocal.year_desc; txtYearEnd.Text = yearLocal.end_date.ToString("yyyy-MM-dd"); txtYearStart.Text = yearLocal.start.ToString("yyyy-MM-dd"); txtYearName.Text = yearLocal.name; edit = true; } }
/*-----------------------------UPDATING FUNCTIONS-----------------------------*/ /// <summary> /// Updates repositories. /// </summary> private void UpdateRepositories() { years = new HttpYearsRepository(); subjects = new HttpSubjectsRepository(); grades = new HttpSubjectDetailsRepository(); users = new HttpUsersRepository(); groups = new HttpGroupsRepository(); groupDetails = new HttpGroupDetailsRepository(); }