public void CheckEvaluationScheme(EvaluationScheme evaluation_scheme) { int chapter_idx = 0; int section_idx = 0; _log.Info("Studente" + this.ToString() + " verifica versione rubrica valutativa..."); if (EvaluationSchemeRelease != evaluation_scheme.Release) { foreach (EvaluationChapter chapter in evaluation_scheme.Chapters) { section_idx = 0; foreach (EvaluationSection sec in chapter.Sections) { if (GetEvaluationLevel(chapter_idx, section_idx) == EL_NOT_FOUND) { _log.Info(" Nuova livello valutativo [" + chapter_idx.ToString() + ", " + section_idx.ToString() + "]"); StudentEvaluationItem ei = new StudentEvaluationItem(); ei.Tag = StudentEvaluationItem.EncodeTag(chapter_idx, section_idx); ei.LastChange = DateTime.Now; ei.EvalNumber = -1; EvaluationItems.Add(ei); } section_idx++; } chapter_idx++; } EvaluationSchemeRelease = evaluation_scheme.Release; EvaluationSchemeDate = evaluation_scheme.DatePubblication.ToString("dd/MM/yyyy"); } }
public int GetEvaluationLevel(int chapter_idx, int section_idx) { try { foreach (StudentEvaluationItem ei in EvaluationItems) { int ch = 0; int sec = 0; StudentEvaluationItem.DecodeTag(ei.Tag, out ch, out sec); if ((chapter_idx == ch) && (section_idx == sec)) { return(ei.EvalNumber); } } return(EL_NOT_FOUND); } catch { return(EL_ERROR); } }
private void load_evaluation_scheme(EvaluationScheme evaluation_scheme) { int chapter_idx; int section_idx; try { if (evaluation_scheme == null) { return; } EvaluationSchemeRelease = evaluation_scheme.Release; EvaluationSchemeDate = evaluation_scheme.DatePubblication.ToString("dd/MM/yyyy"); EvaluationItems = new List <StudentEvaluationItem>(); chapter_idx = 0; foreach (EvaluationChapter chapter in evaluation_scheme.Chapters) { section_idx = 0; foreach (EvaluationSection section in chapter.Sections) { StudentEvaluationItem i = new StudentEvaluationItem(); i.Tag = StudentEvaluationItem.EncodeTag(chapter_idx, section_idx); i.LastChange = DateTime.Now; i.EvalNumber = -1; EvaluationItems.Add(i); section_idx++; } chapter_idx++; } } catch { } }