private bool IsValidServiceOffering(EducationSecurityPrincipal user, int index, string studentSISId, Student student, DataTable dataTable, out DateTime?startDate, out DateTime?endDate, ServiceUploadModel model) { startDate = endDate = null; if (studentSISId == null || student == null) { ProcessError(dataTable.Rows[index], string.Format(CultureInfo.CurrentCulture, "Malformed Student Id on row {0}", index + 1), model); return(false); } else if (!GrantUserAccessToSchedulingAnOffering(user, student)) { ProcessError(dataTable.Rows[index], string.Format(CultureInfo.CurrentCulture, "You do not have permission to interact with the referenced student on row {0}", index + 1), model); return(false); } else if (!ExcelUtility.TryGetOADate(dataTable.Rows[index][2].ToString(), out startDate)) { ProcessError(dataTable.Rows[index], string.Format(CultureInfo.CurrentCulture, "Malformed Start Date on row {0}", index + 1), model); return(false); } else if (!ExcelUtility.TryGetOADate(dataTable.Rows[index][3].ToString(), out endDate)) { ProcessError(dataTable.Rows[index], string.Format(CultureInfo.CurrentCulture, "Malformed End Date on row {0}", index + 1), model); return(false); } return(true); }
private bool IsValidServiceOffering(EducationSecurityPrincipal user, int index, string studentSISId, Student student, DataTable dataTable, out DateTime?dateAttended, out int duration, ServiceUploadModel model, Subject subject) { dateAttended = null; duration = 0; string subjectName = dataTable.Rows[index][3].ToString(); if (studentSISId == null || student == null) { ProcessError(dataTable.Rows[index], string.Format(CultureInfo.CurrentCulture, "Malformed Student Id on row {0}", index + 1), model); return(false); } else if (!GrantUserAccessToSchedulingAnOffering(user, student)) { ProcessError(dataTable.Rows[index], string.Format(CultureInfo.CurrentCulture, "You do not have permission to interact with the referenced student on row {0}", index + 1), model); return(false); } else if (!ExcelUtility.TryGetOADate(dataTable.Rows[index][2].ToString(), out dateAttended)) { ProcessError(dataTable.Rows[index], string.Format(CultureInfo.CurrentCulture, "Malformed Date Attended on row {0}", index + 1), model); return(false); } else if (subject == null) { ProcessError(dataTable.Rows[index], string.Format(CultureInfo.CurrentCulture, "Malformed Subject on row {0}", index + 1), model); return(false); } else if (dataTable.Rows[index][4].ToString() != string.Empty && !int.TryParse(dataTable.Rows[index][4].ToString(), out duration)) { ProcessError(dataTable.Rows[index], string.Format(CultureInfo.CurrentCulture, "Malformed Duration on row {0}", index + 1), model); return(false); } return(true); }