public Course_elearn get_course_by_name(Course_elearn getThis) { SqlConnection conn = new SqlConnection(); Course_elearn toReturn = null; try { conn = new SqlConnection(); string connstr = ConfigurationManager.ConnectionStrings["DBConnectionString"].ToString(); conn.ConnectionString = connstr; conn.Open(); SqlCommand comm = new SqlCommand(); comm.Connection = conn; comm.CommandText = "select * from Elearn_course where elearn_courseName =@name"; comm.Parameters.AddWithValue("@name", getThis.getCourseName()); SqlDataReader dr = comm.ExecuteReader(); while (dr.Read()) { toReturn = new Course_elearn(); int cid = (int)dr["elearn_courseID"]; //1 toReturn.setCourseID(cid); toReturn.setCourseName((string)dr["elearn_courseName"]); //2 if (!dr.IsDBNull(4)) { toReturn.setCourseProvider((string)dr["elearn_courseProvider"]); } ; toReturn.setStartDate((DateTime)dr["start_date"]);//3 if (!dr.IsDBNull(4)) { toReturn.setExpiryDate((DateTime)dr["expiry_date"]); } toReturn.setStatus((string)dr["status"]); //4 //get the prereq toReturn.setDescription((string)dr["description"]); //6 ArrayList list = getPrereqOfCourse(cid); //5 if (list != null) { toReturn.setPrerequisite(list); //retrieve arraylist of all prereq course_elearn objects } toReturn.setCategoryID((int)dr["categoryID"]); //7 toReturn.setHoursAwarded((double)dr["hoursAwarded"]); if (!dr.IsDBNull(11)) { toReturn.setTargetAudience((string)dr["targetAudience"]); } toReturn.setCourseType((string)dr["courseType"]); } dr.Close(); } catch (SqlException ex) { throw ex; } finally { conn.Close(); } return(toReturn); }
protected void cfmSubmit_Click(object sender, EventArgs e) { //to do validations Course_elearnDAO ceDAO = new Course_elearnDAO(); int courseID = Convert.ToInt32(Request.QueryString["id"]); Course_elearn currentCourse = ceDAO.get_course_by_id(courseID); //change to MM-dd-yyyy string fromDate = fromDateInput.Text.Substring(3, 2) + "/" + fromDateInput.Text.Substring(0, 2) + "/" + fromDateInput.Text.Substring(6, 4); string toDate = toDateInput.Text.Substring(3, 2) + "/" + toDateInput.Text.Substring(0, 2) + "/" + toDateInput.Text.Substring(6, 4); ceDAO.updateCourse(courseID, Convert.ToInt32(moduleType.SelectedValue), nameOfModuleInput.Text, descriptionModuleInput.Text, Convert.ToDouble(hoursInput.Text), DateTime.ParseExact(fromDate, "MM/dd/yyyy", CultureInfo.InvariantCulture), DateTime.ParseExact(toDate, "MM/dd/yyyy", CultureInfo.InvariantCulture)); //update prerequisites //delete all prereq first ceDAO.deletePrerequisitesByCourseID(courseID); //insert all new prereq List <int> prereqIDlist = (List <int>)Session["selectedPrereq"]; foreach (int prereqID in prereqIDlist) { ceDAO.insertPrerequisite(courseID, prereqID); } //set audit User currentUser = (User)Session["currentUser"]; setAudit(currentUser, "course", "update", courseID.ToString(), "course name: " + currentCourse.getCourseName()); Response.Redirect($"viewModuleInfo.aspx?id={courseID}"); }
protected void gvPrereqCart_RowCommand(object sender, GridViewCommandEventArgs e) { string id_str = Request.QueryString["id"]; int id_num = int.Parse(id_str); QuizDAO quizDAO = new QuizDAO(); Quiz currentQuiz = quizDAO.getQuizByID(id_num); Course_elearn currentCourse = currentQuiz.getMainCourse(); List <int> prereqIDlist = (List <int>)Session["selectedPrereq"]; int id = Convert.ToInt32(e.CommandArgument); List <int> allLinkedQuizzes = quizDAO.getAllQuizLinkedToPrerequisite(id); foreach (int linkedID in allLinkedQuizzes) { if (prereqIDlist.Contains(linkedID)) { prereqIDlist.Remove(linkedID); } } prereqIDlist.Remove(id); Session["selectedPrereq"] = prereqIDlist; var itemIDs = string.Join(",", ((IList <int>)Session["selectedPrereq"]).ToArray()); var sqlQueryCourseList = ""; if (itemIDs.Length > 0) { sqlQueryCourseList = String.Format("SELECT * FROM [Quiz] WHERE status='active' and elearn_courseID='{0}' and quizID NOT IN ({1}) and quizID != " + id_str, currentCourse.getCourseID(), itemIDs); } else { sqlQueryCourseList = "SELECT * FROM [Quiz] WHERE status='active' and elearn_courseID = '" + currentCourse.getCourseID() + "' and quizID != " + currentQuiz.getQuizID(); } SqlDataSource1.SelectCommand = sqlQueryCourseList; gvPrereq.DataSource = SqlDataSource1; gvPrereq.DataBind(); gvPrereq.UseAccessibleHeader = true; if (gvPrereq.Rows.Count > 0) { gvPrereq.HeaderRow.TableSection = TableRowSection.TableHeader; } var sqlQuery = ""; if (itemIDs.Length > 0) { sqlQuery = String.Format("SELECT * FROM [Quiz] WHERE [quizID] IN ({0})", itemIDs); } else { sqlQuery = "SELECT * FROM [Quiz] WHERE [quizID] = -1"; } SqlDataSourcePrereqCart.SelectCommand = sqlQuery; gvPrereqCart.DataSource = SqlDataSourcePrereqCart; gvPrereqCart.DataBind(); }
public ArrayList getPrereqOfCourse(int course_id) { ArrayList toReturn_list = new ArrayList(); SqlConnection conn = new SqlConnection(); Course_elearn toReturn = null; try { conn = new SqlConnection(); string connstr = ConfigurationManager.ConnectionStrings["DBConnectionString"].ToString(); conn.ConnectionString = connstr; conn.Open(); SqlCommand comm = new SqlCommand(); comm.Connection = conn; comm.CommandText = "select * from Elearn_course ce inner join " + "(select prereq_courseID from Elearn_prerequisites where elearn_courseID = @check) " + "as temp on ce.elearn_courseID = temp.prereq_courseID;"; //get data of all courses that are prereqs comm.Parameters.AddWithValue("@check", course_id); SqlDataReader dr = comm.ExecuteReader(); while (dr.Read()) { toReturn = new Course_elearn(); toReturn.setCourseID((int)dr["elearn_courseID"]); toReturn.setCourseName((string)dr["elearn_courseName"]); if (!dr.IsDBNull(4)) { toReturn.setCourseProvider((string)dr["elearn_courseProvider"]); } ; toReturn.setStartDate((DateTime)dr["start_date"]); if (!dr.IsDBNull(4)) { toReturn.setExpiryDate((DateTime)dr["expiry_date"]); } toReturn.setStatus((string)dr["status"]); toReturn.setDescription((string)dr["description"]); toReturn.setCategoryID((int)dr["categoryID"]); toReturn.setHoursAwarded((double)dr["hoursAwarded"]); if (!dr.IsDBNull(11)) { toReturn.setTargetAudience((string)dr["targetAudience"]); } toReturn.setCourseType((string)dr["courseType"]); toReturn_list.Add(toReturn); //parse as course_elearn object to store and return in arraylist } dr.Close(); } catch (SqlException ex) { throw ex; } finally { conn.Close(); } return(toReturn_list); }
protected void gvPrereq_RowCommand(object sender, GridViewCommandEventArgs e) { List <int> prereqIDlist = (List <int>)Session["selectedPrereq"]; int id = Convert.ToInt32(e.CommandArgument); //to get course and add any prereq related to the course Course_elearnDAO ceDAO = new Course_elearnDAO(); Course_elearn selectedCourse = ceDAO.get_course_by_id(id); ArrayList allPrereq = getAllPrerequisites(id); ArrayList allPrereqNoDup = new ArrayList(); foreach (int prereqID in allPrereq) { if (!allPrereqNoDup.Contains(prereqID) && !prereqIDlist.Contains(prereqID)) { allPrereqNoDup.Add(prereqID); } } foreach (int prereqID in allPrereqNoDup) { prereqIDlist.Add(prereqID); } prereqIDlist.Add(id); Session["selectedPrereq"] = prereqIDlist; var itemIDs = string.Join(",", ((IList <int>)Session["selectedPrereq"]).ToArray()); var sqlQueryCourseList = ""; if (itemIDs.Length > 0) { sqlQueryCourseList = String.Format("SELECT * FROM [Elearn_course] ec INNER JOIN [Elearn_courseCategory] ecc ON ec.categoryID = ecc.categoryID WHERE ec.status='active' and ec.start_date<=getDate() and ec.expiry_date>=getDate() and ec.elearn_courseID NOT IN ({0}) and ec.courseType='Online Learning'", itemIDs); } else { sqlQueryCourseList = "SELECT * FROM [Elearn_course] ec INNER JOIN [Elearn_courseCategory] ecc ON ec.categoryID = ecc.categoryID WHERE ec.status='active' and ec.start_date<=getDate() and ec.expiry_date>=getDate() and ec.courseType='Online Learning'"; } SqlDataSource1.SelectCommand = sqlQueryCourseList; gvPrereq.DataSource = SqlDataSource1; gvPrereq.DataBind(); gvPrereq.UseAccessibleHeader = true; if (gvPrereq.Rows.Count > 0) { gvPrereq.HeaderRow.TableSection = TableRowSection.TableHeader; } var sqlQuery = String.Format("SELECT * FROM [Elearn_course] WHERE [elearn_courseID] IN ({0})", itemIDs); SqlDataSourcePrereqCart.SelectCommand = sqlQuery; gvPrereqCart.DataSource = SqlDataSourcePrereqCart; gvPrereqCart.DataBind(); }
public ArrayList get_uploaded_content_by_id(Course_elearn course) { SqlConnection conn = new SqlConnection(); ArrayList toReturn_list = new ArrayList(); Upload toReturn = null; try { conn = new SqlConnection(); string connstr = ConfigurationManager.ConnectionStrings["DBConnectionString"].ToString(); conn.ConnectionString = connstr; conn.Open(); SqlCommand comm = new SqlCommand(); comm.Connection = conn; comm.CommandText = "select upload_date, upload_title, upload_desc, server_path, upload_type, video_link from [Elearn_courseContent] where elearn_courseID=@id"; comm.Parameters.AddWithValue("@id", course.getCourseID()); SqlDataReader dr = comm.ExecuteReader(); while (dr.Read()) { toReturn = new Upload(); toReturn.setDate((DateTime)dr["upload_date"]); //3 toReturn.setTitle((string)dr["upload_title"]); //4 toReturn.setDesc((string)dr["upload_desc"]); //6 if (dr["server_path"] != DBNull.Value) { toReturn.setServerPath((string)dr["server_path"]); } if (dr["upload_type"] != DBNull.Value) { toReturn.upload_type = (string)dr["upload_type"]; } if (dr["video_link"] != DBNull.Value) { toReturn.video_link = (string)dr["video_link"]; } toReturn_list.Add(toReturn); } dr.Close(); } catch (SqlException ex) { throw ex; } finally { conn.Close(); } return(toReturn_list); }
protected void cfmActivate_Click(object sender, EventArgs e) { Course_elearnDAO ceDAO = new Course_elearnDAO(); Course_elearn currentCourse = ceDAO.get_course_by_id(Convert.ToInt32(Request.QueryString["id"])); ceDAO.activateCourse(Convert.ToInt32(Request.QueryString["id"])); int cat = currentCourse.getCategoryID(); //set audit User currentUser = (User)Session["currentUser"]; setAudit(currentUser, "course", "activate", currentCourse.getCourseID().ToString(), "course name: " + currentCourse.getCourseName()); Response.Redirect($"viewAllModule.aspx"); }
public ArrayList get_testimonials_by_course(Course_elearn course) { SqlConnection conn = new SqlConnection(); ArrayList toReturn_list = new ArrayList(); Testimonial toReturn = null; UserDAO u = new UserDAO(); try { conn = new SqlConnection(); string connstr = ConfigurationManager.ConnectionStrings["DBConnectionString"].ToString(); conn.ConnectionString = connstr; conn.Open(); SqlCommand comm = new SqlCommand(); comm.Connection = conn; comm.CommandText = "select * from Testimonials where courseID=@id"; comm.Parameters.AddWithValue("@id", course.getCourseID()); SqlDataReader dr = comm.ExecuteReader(); while (dr.Read()) { toReturn = new Testimonial(); toReturn.setStaffName((string)dr["staff_name"]); //4 toReturn.set_course_elearn(course); //6 toReturn.setQuote((string)dr["quote"]); toReturn.setUser(u.getUserByID((String)dr["userID"])); toReturn.setID((int)dr["ID"]); toReturn.setTitle((string)dr["title"]); toReturn_list.Add(toReturn); } dr.Close(); } catch (SqlException ex) { throw ex; } finally { conn.Close(); } return(toReturn_list); }
protected void Page_Load(object sender, EventArgs e) { //Response.Write(DateTime.Now.ToShortDateString()); Course_elearnDAO cdao = new Course_elearnDAO(); string id_str = null; if (Request.QueryString["id"] != null) { id_str = Request.QueryString["id"]; int id_num = int.Parse(id_str); current = cdao.get_course_by_id(id_num); TestimonialDAO t = new TestimonialDAO(); testimonials = t.get_testimonials_by_course(current); } else { return; } if (!IsPostBack) { int id_num = int.Parse(id_str); current = cdao.get_course_by_id(id_num); lblCourseNameHeader.Text = current.getCourseName(); lblBreadcrumbCourseName.Text = current.getCourseName(); lblCourseName.Text = current.getCourseName(); lblCourseDescription.Text = current.getDescription(); hoursOutput.Text = current.getHoursAwarded().ToString(); if (!current.getTargetAudience().Equals("")) { lblTargetAudience.Text = current.getTargetAudience(); } else { lblTargetAudience.Text = "-"; } lblCoursePeriodStart.Text = "Start: " + current.getStartDate().ToLongDateString(); lblCoursePeriodEnd.Text = "End: " + current.getExpiryDate().ToLongDateString(); DateTime currentDateTime = DateTime.Now; if (current.getStatus().Equals("Inactive") || !(DateTime.Compare(current.getStartDate(), currentDateTime) < 0 && DateTime.Compare(current.getExpiryDate(), currentDateTime) > 0)) { panelInactive.Visible = true; } Page.Form.Attributes.Add("enctype", "multipart/form-data"); } }
protected Boolean checkIfCompletedAllPrerequisite(string userID, int quizID) { QuizDAO quizDAO = new QuizDAO(); QuizResultDAO qrDAO = new QuizResultDAO(); Course_elearnDAO ceDAO = new Course_elearnDAO(); Quiz currentQuiz = quizDAO.getQuizByID(quizID); Course_elearn currentCourse = currentQuiz.getMainCourse(); //check user completed all prereq course's quizzes ArrayList allPrereqCourses = ceDAO.getPrereqOfCourse(currentCourse.getCourseID()); if (allPrereqCourses.Count > 0) { foreach (Course_elearn ce in allPrereqCourses) { if (ce.getStatus().Equals("active") && (ce.getStartDate() <= DateTime.Now.Date && ce.getExpiryDate() >= DateTime.Now.Date)) { List <Quiz> allQuizzes = quizDAO.getAllQuizByCourseID(ce.getCourseID()); foreach (Quiz innerQuiz in allQuizzes) { if (!qrDAO.getQuizResultByUserIDandQuizID(userID, innerQuiz.getQuizID())) { return(false); } } } } } //if all prereq courses cleared, to check current quiz's prereqs ArrayList allPrerequisites = quizDAO.getPrereqOfQuiz(quizID); foreach (Quiz prereq in allPrerequisites) { if (currentCourse.getStatus().Equals("active") && (currentCourse.getStartDate() <= DateTime.Now.Date && currentCourse.getExpiryDate() >= DateTime.Now.Date)) { if (!qrDAO.getQuizResultByUserIDandQuizID(userID, prereq.getQuizID())) { return(false); } } } return(true); }
protected void Page_Load(object sender, EventArgs e) { //Response.Write(DateTime.Now.ToShortDateString()); Course_elearnDAO cdao = new Course_elearnDAO(); string id_str = null; if (Request.QueryString["id"] != null) { id_str = Request.QueryString["id"]; int id_num = int.Parse(id_str); current = cdao.get_course_by_id(id_num); TestimonialDAO t = new TestimonialDAO(); testimonials = t.get_testimonials_by_course(current); } else { return; } if (!IsPostBack) { int id_num = int.Parse(id_str); current = cdao.get_course_by_id(id_num); lblCourseNameHeader.Text = current.getCourseName(); lblBreadcrumbCourseName.Text = current.getCourseName(); lblCourseName.Text = current.getCourseName(); lblCourseDescription.Text = current.getDescription(); hoursOutput.Text = current.getHoursAwarded().ToString(); if (!current.getTargetAudience().Equals("")) { lblTargetAudience.Text = current.getTargetAudience(); } else { lblTargetAudience.Text = "-"; } lblCoursePeriodStart.Text = "Start: " + current.getStartDate().ToLongDateString(); lblCoursePeriodEnd.Text = "End: " + current.getExpiryDate().ToLongDateString(); } }
protected void btnSubmit_Click(object sender, EventArgs e) { Course_elearnDAO cdao = new Course_elearnDAO(); int id_int = Convert.ToInt32(id.Text); Boolean check = false; DateTime exp = new DateTime(); if (expiry != null) { if (expiry.Text != "") { exp = Convert.ToDateTime(expiry.Text); check = true; } } Course_elearn c = null; if (check) // if no expiry date { c = new Course_elearn(id_int, name.Text, provider.Text, DateTime.Now, status.Text, desc.Text, "Leadership"); } else // if got expiry date { c = new Course_elearn(id_int, name.Text, provider.Text, DateTime.Now, exp, status.Text, desc.Text, "Leadership"); } //check pre req here //pull pre req from model, check the course object here before creating the entry in the database //create the course object //now insert into database by calling DAO Course_elearnDAO cDao = new Course_elearnDAO(); Course_elearn res = cDao.create_elearnCourse(c); Session.Add("res", res); Response.Redirect("WebForm1.aspx"); }
protected void gvPrereqCart_RowCommand(object sender, GridViewCommandEventArgs e) { List <int> prereqIDlist = (List <int>)Session["selectedPrereq"]; int id = Convert.ToInt32(e.CommandArgument); Course_elearnDAO ceDAO = new Course_elearnDAO(); Course_elearn currentCourse = ceDAO.get_course_by_id(Convert.ToInt32(Request.QueryString["id"])); List <int> allLinkedCourses = ceDAO.getAllCourseLinkedToPrerequisite(id); foreach (int linkedID in allLinkedCourses) { if (prereqIDlist.Contains(linkedID)) { prereqIDlist.Remove(linkedID); } } prereqIDlist.Remove(id); Session["selectedPrereq"] = prereqIDlist; var itemIDs = string.Join(",", ((IList <int>)Session["selectedPrereq"]).ToArray()); var itemIDs2 = string.Join(",", ((IList <int>)Session["selectedPostreq"]).ToArray()); var sqlQueryCourseList = ""; if (itemIDs.Length > 0 && itemIDs2.Length > 0) { sqlQueryCourseList = String.Format("SELECT * FROM [Elearn_course] ec INNER JOIN [Elearn_courseCategory] ecc ON ec.categoryID = ecc.categoryID WHERE ec.status='active' and ec.start_date<=getDate() and ec.expiry_date>=getDate() and ec.elearn_courseID NOT IN ({0}) and ec.elearn_courseID NOT IN ({1}) and ec.courseType='Online Learning' and ec.elearn_courseID != " + currentCourse.getCourseID(), itemIDs, itemIDs2); } else if (itemIDs.Length > 0 && itemIDs2.Length < 1) { sqlQueryCourseList = String.Format("SELECT * FROM [Elearn_course] ec INNER JOIN [Elearn_courseCategory] ecc ON ec.categoryID = ecc.categoryID WHERE ec.status='active' and ec.start_date<=getDate() and ec.expiry_date>=getDate() and ec.elearn_courseID NOT IN ({0}) and ec.courseType='Online Learning' and ec.elearn_courseID != " + currentCourse.getCourseID(), itemIDs); } else if (itemIDs.Length < 1 && itemIDs2.Length > 0) { sqlQueryCourseList = String.Format("SELECT * FROM [Elearn_course] ec INNER JOIN [Elearn_courseCategory] ecc ON ec.categoryID = ecc.categoryID WHERE ec.status='active' and ec.start_date<=getDate() and ec.expiry_date>=getDate() and ec.elearn_courseID NOT IN ({0}) and ec.courseType='Online Learning' and ec.elearn_courseID != " + currentCourse.getCourseID(), itemIDs2); } else { sqlQueryCourseList = String.Format("SELECT * FROM [Elearn_course] ec INNER JOIN [Elearn_courseCategory] ecc ON ec.categoryID = ecc.categoryID WHERE ec.status='active' and ec.start_date<=getDate() and ec.expiry_date>=getDate() and ec.courseType='Online Learning' and ec.elearn_courseID != " + currentCourse.getCourseID()); } SqlDataSource1.SelectCommand = sqlQueryCourseList; gvPrereq.DataSource = SqlDataSource1; gvPrereq.DataBind(); gvPrereq.UseAccessibleHeader = true; if (gvPrereq.Rows.Count > 0) { gvPrereq.HeaderRow.TableSection = TableRowSection.TableHeader; } var sqlQuery = ""; if (itemIDs.Length > 0) { sqlQuery = String.Format("SELECT * FROM [Elearn_course] WHERE [elearn_courseID] IN ({0}) and elearn_courseID != " + currentCourse.getCourseID(), itemIDs); } else { sqlQuery = "SELECT * FROM [Elearn_course] WHERE [elearn_courseID] = -1"; } SqlDataSourcePrereqCart.SelectCommand = sqlQuery; gvPrereqCart.DataSource = SqlDataSourcePrereqCart; gvPrereqCart.DataBind(); }
public Course_elearn create_elearnCourse(Course_elearn course) { SqlConnection conn = new SqlConnection(); Course_elearn toReturn = null; try { conn = new SqlConnection(); string connstr = ConfigurationManager.ConnectionStrings["DBConnectionString"].ToString(); conn.ConnectionString = connstr; conn.Open(); SqlCommand comm = new SqlCommand(); comm.Connection = conn; comm.CommandText = "insert into [Elearn_course] " + "(elearn_courseName, elearn_courseProvider, entry_date, start_date, expiry_date, status, description, categoryID, courseCreator, hoursAwarded, targetAudience, courseType) OUTPUT INSERTED.elearn_courseID " + "values (@cName, @provider, Convert(datetime, @entry, 103), convert(datetime,@time,103), Convert(datetime,@expiry,103), @status, @desc, @category, @courseCreator, @hoursAwarded, @targetAudience, @courseType)"; comm.Parameters.AddWithValue("@cName", course.getCourseName()); if (course.getCourseProvider() != null) { comm.Parameters.AddWithValue("@provider", course.getCourseProvider()); } else { comm.Parameters.AddWithValue("@provider", DBNull.Value); } comm.Parameters.AddWithValue("@entry", course.getEntryDate()); if (course.getStartDate() == null) { comm.Parameters.AddWithValue("@time", DBNull.Value); } else { comm.Parameters.AddWithValue("@time", course.getStartDate()); } if (course.getExpiryDate() == null) { comm.Parameters.AddWithValue("@expiry", DBNull.Value); } else { comm.Parameters.AddWithValue("@expiry", course.getExpiryDate()); } comm.Parameters.AddWithValue("@status", course.getStatus()); comm.Parameters.AddWithValue("@desc", course.getDescription()); comm.Parameters.AddWithValue("@category", course.getCategoryID()); comm.Parameters.AddWithValue("@courseCreator", course.getCourseCreator().getUserID()); comm.Parameters.AddWithValue("@hoursAwarded", course.getHoursAwarded()); comm.Parameters.AddWithValue("@targetAudience", course.getTargetAudience()); comm.Parameters.AddWithValue("@courseType", course.getCourseType()); int a = (Int32)comm.ExecuteScalar(); //need new method to create pre-requisities here to store in seperate table (pre-req table) course.setCourseID(a); toReturn = course; } catch (SqlException ex) { throw ex; } finally { conn.Close(); } return(toReturn); }
protected void submitBtn_Click(object sender, EventArgs e) { Page.Validate("ValidateForm"); if (!Page.IsValid) { } else { Course_elearnDAO cdao = new Course_elearnDAO(); //int id_int = Convert.ToInt32(id.Text); Boolean check = true; User user = (User)Session["currentUser"]; Course_elearn c = null; string type = Request.QueryString["type"]; string name = nameOfModuleInput.Text; string fromDate = fromDateInput.Text.Substring(3, 2) + "/" + fromDateInput.Text.Substring(0, 2) + "/" + fromDateInput.Text.Substring(6, 4); string toDate = toDateInput.Text.Substring(3, 2) + "/" + toDateInput.Text.Substring(0, 2) + "/" + toDateInput.Text.Substring(6, 4); if (check && moduleType.Text != "") // if no expiry date { c = new Course_elearn(name, user.getDepartment(), DateTime.Now, DateTime.ParseExact(fromDate, "MM/dd/yyyy", CultureInfo.InvariantCulture), DateTime.ParseExact(toDate, "MM/dd/yyyy", CultureInfo.InvariantCulture), "active", descriptionModuleInput.Text, Convert.ToInt32(moduleType.SelectedValue), user, Convert.ToDouble(hoursInput.Text), txtTargetAudience.Text, ddlCourseType.SelectedValue); } //check pre req here //pull pre req from model, check the course object here before creating the entry in the database /*List<int> allSelectedID = new List<int>(); * int counter = 0; * foreach (GridViewRow row in gvPrereq.Rows) * { * CheckBox chkRow = (row.Cells[0].FindControl("chkboxPrereq") as CheckBox); * if (chkRow.Checked) * { * int prereqID = Convert.ToInt32(gvPrereq.DataKeys[counter].Value.ToString()); * allSelectedID.Add(prereqID); * } * counter++; * }*/ //create the course object //now insert into database by calling DAO Course_elearnDAO cDao = new Course_elearnDAO(); Course_elearn res = cDao.create_elearnCourse(c); Course_elearn course_with_id = cDao.get_course_by_name(res); List <int> prereqIDlist = (List <int>)Session["selectedPrereq"]; int id = course_with_id.getCourseID(); if (ddlCourseType.SelectedValue.Equals("Online Learning")) { foreach (int prereqID in prereqIDlist) { cDao.insertPrerequisite(id, prereqID); } //create dir string file = "~/Data/"; string add = Server.MapPath(file) + id; Directory.CreateDirectory(add); } //set audit User currentUser = (User)Session["currentUser"]; setAudit(currentUser, "course", "create", res.getCourseID().ToString(), "course name: " + res.getCourseName()); Response.Redirect("viewModuleInfo.aspx?id=" + id); } }
protected void btnConfirmSubmit_Click(object sender, EventArgs e) { //to do validation Page.Validate("ValidateFormTwo"); if (!Page.IsValid) { } else { //add the last question List <QuizQuestion> allQuestions = (List <QuizQuestion>)Session["allQuestions"]; QuizQuestion newQuestion = new QuizQuestion(); newQuestion.setQuestion(txtQuizQuestion.Text); QuizAnswer answer1 = new QuizAnswer(); answer1.setAnswer(txtOptionOne.Text); QuizAnswer answer2 = new QuizAnswer(); answer2.setAnswer(txtOptionTwo.Text); QuizAnswer answer3 = new QuizAnswer(); answer3.setAnswer(txtOptionThree.Text); QuizAnswer answer4 = new QuizAnswer(); answer4.setAnswer(txtOptionFour.Text); List <QuizAnswer> allAnswersForLastQn = new List <QuizAnswer>(); allAnswersForLastQn.Add(answer1); allAnswersForLastQn.Add(answer2); allAnswersForLastQn.Add(answer3); allAnswersForLastQn.Add(answer4); newQuestion.setAllAnswers(allAnswersForLastQn); if (ddlCorrectAns.SelectedValue.Equals("1")) { newQuestion.setQuizAnswer(answer1); } else if (ddlCorrectAns.SelectedValue.Equals("2")) { newQuestion.setQuizAnswer(answer2); } else if (ddlCorrectAns.SelectedValue.Equals("3")) { newQuestion.setQuizAnswer(answer3); } else { newQuestion.setQuizAnswer(answer4); } allQuestions.Add(newQuestion); QuizDAO quizDAO = new QuizDAO(); QuizAnswerDAO qaDAO = new QuizAnswerDAO(); QuizQuestionDAO qqDAO = new QuizQuestionDAO(); Course_elearnDAO ceDAO = new Course_elearnDAO(); Course_elearn currentCourse = ceDAO.get_course_by_id(Convert.ToInt32(Request.QueryString["id"])); //create quiz List <string> part1 = (List <string>)Session["createQuiz1"]; Quiz newQuiz = new Quiz(); newQuiz.setTitle(part1[0]); newQuiz.setDescription(part1[1]); newQuiz.setMainCourse(currentCourse); newQuiz.setPassingGrade(Convert.ToInt32(txtNumCorrectAns.Text)); newQuiz.setStatus("active"); if (ddlRandomize.SelectedValue.Equals("y")) { newQuiz.setRandomOrder("y"); } else { newQuiz.setRandomOrder("n"); } newQuiz.setTimeLimit(Convert.ToInt32(txtTimeLimit.Text)); if (rdlAttempt.SelectedValue.Equals("unlimited")) { newQuiz.setMultipleAttempts("y"); newQuiz.setNumberOfAttempts(0); } else { newQuiz.setMultipleAttempts("n"); newQuiz.setNumberOfAttempts(Convert.ToInt32(txtNoOfAttempt.Text)); } newQuiz.setDisplayAnswer(ddlDisplayAnswer.SelectedValue); int quizID = quizDAO.createQuiz(newQuiz); //add prerequisites List <int> prereqIDlist = (List <int>)Session["selectedPrereq"]; foreach (int prereqID in prereqIDlist) { quizDAO.insertPrerequisite(quizID, prereqID); } //create question and answer foreach (QuizQuestion question in allQuestions) { question.setQuiz(quizDAO.getQuizByID(quizID)); int questionID = qqDAO.createQuizQuestion(question); QuizQuestion currentQuestion = qqDAO.getQuizQuestionByID(questionID); List <QuizAnswer> allAnswers = question.getAllAnswers(); foreach (QuizAnswer answer in allAnswers) { answer.setQuizQuestion(currentQuestion); int answerID = qaDAO.createQuizAnswer(answer); if (question.getQuizAnswer().getAnswer().Equals(answer.getAnswer())) { qqDAO.updateCorrectAnswerID(questionID, answerID); } } } //set audit User currentUser = (User)Session["currentUser"]; setAudit(currentUser, "quiz", "create", quizID.ToString(), "quiz title: " + newQuiz.getTitle()); Response.Redirect($"quizSummary.aspx?id={quizID}"); } }
protected void Page_Load(object sender, EventArgs e) { if (Session["currentUser"] == null) { Response.Redirect("Login.aspx"); } else { User currentUser = (User)Session["currentUser"]; Course_elearnDAO ceDAO = new Course_elearnDAO(); Course_elearn currentCourse = ceDAO.get_course_by_id(Convert.ToInt32(Request.QueryString["id"])); Boolean superuser = false; Boolean course_creator = false; foreach (string s in currentUser.getRoles()) { if (s.Equals("superuser")) { superuser = true; } else if (s.Equals("course creator")) { course_creator = true; } } if (currentUser.getUserID() != currentCourse.getCourseCreator().getUserID() && !(superuser || course_creator)) { Response.Redirect("errorPage.aspx"); } else { if (!IsPostBack) { moduleType.SelectedValue = currentCourse.getCategoryID().ToString(); ddlCourseType.SelectedValue = currentCourse.getCourseType(); nameOfModuleInput.Text = currentCourse.getCourseName(); lblBreadcrumbCourseName.Text = currentCourse.getCourseName(); descriptionModuleInput.Text = currentCourse.getDescription(); hoursInput.Text = currentCourse.getHoursAwarded().ToString(); if (currentCourse.getTargetAudience() != null) { txtTargetAudience.Text = currentCourse.getTargetAudience().ToString(); } fromDateInput.Text = currentCourse.getStartDate().ToString("dd/MM/yyyy"); toDateInput.Text = currentCourse.getExpiryDate().ToString("dd/MM/yyyy"); //prerequisites ArrayList allPrerequisites = currentCourse.getPrerequisite(); List <int> prereqIDlist = new List <int>(); foreach (Course_elearn prereq in allPrerequisites) { prereqIDlist.Add(prereq.getCourseID()); } Session["selectedPrereq"] = prereqIDlist; var itemIDs = string.Join(",", ((IList <int>)Session["selectedPrereq"]).ToArray()); //postrequisites List <int> postReqIDList = getAllPostRequisiteCourses(currentCourse.getCourseID()); List <int> postReqIDListNoDup = new List <int>(); foreach (int postreqID in postReqIDList) { if (!postReqIDListNoDup.Contains(postreqID) && postReqIDList.Contains(postreqID)) { postReqIDListNoDup.Add(postreqID); } } Session["selectedPostreq"] = postReqIDListNoDup; var itemIDs2 = string.Join(",", ((IList <int>)Session["selectedPostreq"]).ToArray()); //to load course list var sqlQueryCourseList = ""; if (itemIDs.Length > 0 && itemIDs2.Length > 0) { sqlQueryCourseList = String.Format("SELECT * FROM [Elearn_course] ec INNER JOIN [Elearn_courseCategory] ecc ON ec.categoryID = ecc.categoryID WHERE ec.status='active' and ec.start_date<=getDate() and ec.expiry_date>=getDate() and ec.elearn_courseID NOT IN ({0}) and ec.elearn_courseID NOT IN ({1}) and ec.courseType='Online Learning' and ec.elearn_courseID != " + currentCourse.getCourseID(), itemIDs, itemIDs2); } else if (itemIDs.Length > 0 && itemIDs2.Length < 1) { sqlQueryCourseList = String.Format("SELECT * FROM [Elearn_course] ec INNER JOIN [Elearn_courseCategory] ecc ON ec.categoryID = ecc.categoryID WHERE ec.status='active' and ec.start_date<=getDate() and ec.expiry_date>=getDate() and ec.elearn_courseID NOT IN ({0}) and ec.courseType='Online Learning' and ec.elearn_courseID != " + currentCourse.getCourseID(), itemIDs); } else if (itemIDs.Length < 1 && itemIDs2.Length > 0) { sqlQueryCourseList = String.Format("SELECT * FROM [Elearn_course] ec INNER JOIN [Elearn_courseCategory] ecc ON ec.categoryID = ecc.categoryID WHERE ec.status='active' and ec.start_date<=getDate() and ec.expiry_date>=getDate() and ec.elearn_courseID NOT IN ({0}) and ec.courseType='Online Learning' and ec.elearn_courseID != " + currentCourse.getCourseID(), itemIDs2); } else { sqlQueryCourseList = String.Format("SELECT * FROM [Elearn_course] ec INNER JOIN [Elearn_courseCategory] ecc ON ec.categoryID = ecc.categoryID WHERE ec.status='active' and ec.start_date<=getDate() and ec.expiry_date>=getDate() and ec.courseType='Online Learning' and ec.elearn_courseID != " + currentCourse.getCourseID()); } SqlDataSource1.SelectCommand = sqlQueryCourseList; gvPrereq.DataSource = SqlDataSource1; gvPrereq.DataBind(); gvPrereq.UseAccessibleHeader = true; if (gvPrereq.Rows.Count > 0) { gvPrereq.HeaderRow.TableSection = TableRowSection.TableHeader; } //to load prereq cart var sqlQuery = ""; if (itemIDs.Length > 0) { sqlQuery = String.Format("SELECT * FROM [Elearn_course] WHERE [elearn_courseID] IN ({0}) and elearn_courseID != " + currentCourse.getCourseID(), itemIDs); } else { sqlQuery = "SELECT * FROM [Elearn_course] WHERE [elearn_courseID] = -1"; } SqlDataSourcePrereqCart.SelectCommand = sqlQuery; gvPrereqCart.DataSource = SqlDataSourcePrereqCart; gvPrereqCart.DataBind(); Session["currentMod"] = nameOfModuleInput.Text; } } } }
protected void Page_Load(object sender, EventArgs e) { if (Session["currentUser"] == null) { Response.Redirect("Login.aspx"); } else { User currentUser = (User)Session["currentUser"]; QuizDAO quizDAO = new QuizDAO(); String id_str = Request.QueryString["id"]; int id_num = int.Parse(id_str); Quiz currentQuiz = quizDAO.getQuizByID(id_num); Course_elearn currentCourse = currentQuiz.getMainCourse(); lblBreadcrumbCourseName.Text = currentQuiz.getMainCourse().getCourseName(); Boolean superuser = false; Boolean course_creator = false; foreach (string s in currentUser.getRoles()) { if (s.Equals("superuser")) { superuser = true; } else if (s.Equals("course creator")) { course_creator = true; } } if (currentUser.getUserID() != currentCourse.getCourseCreator().getUserID() && !(superuser || course_creator)) { Response.Redirect("errorPage.aspx"); } else { if (!IsPostBack) { txtQuizTitle.Text = currentQuiz.getTitle(); txtQuizDesc.Text = currentQuiz.getDescription(); txtNumCorrectAns.Text = currentQuiz.getPassingGrade().ToString(); txtTimeLimit.Text = currentQuiz.getTimeLimit().ToString(); rdlAttempt.SelectedValue = currentQuiz.getMultipleAttempts(); ddlDisplayAnswer.SelectedValue = currentQuiz.getDisplayAnswer(); if (currentQuiz.getMultipleAttempts().Equals("y")) { txtNoOfAttempt.Text = ""; txtNoOfAttempt.Enabled = false; } else { txtNoOfAttempt.Text = currentQuiz.getNumberOfAttempts().ToString(); txtNoOfAttempt.Enabled = true; } if (currentQuiz.getRandomOrder().Equals("y")) { ddlRandomize.SelectedIndex = 0; } else { ddlRandomize.SelectedIndex = 1; } if (currentQuiz.getStatus().Equals("active")) { btnActivate.Visible = false; btnDeactivate.Visible = true; } else { btnActivate.Visible = true; btnDeactivate.Visible = false; } //prerequisites ArrayList allPrerequisites = quizDAO.getPrereqOfQuiz(currentQuiz.getQuizID()); List <int> prereqIDlist = new List <int>(); foreach (Quiz prereq in allPrerequisites) { prereqIDlist.Add(prereq.getQuizID()); } Session["selectedPrereq"] = prereqIDlist; var itemIDs = string.Join(",", ((IList <int>)Session["selectedPrereq"]).ToArray()); //to load course list var sqlQueryQuizList = ""; if (itemIDs.Length > 0) { sqlQueryQuizList = String.Format("SELECT * FROM [Quiz] WHERE status='active' and elearn_courseID='{0}' and quizID NOT IN ({1}) and quizID != " + id_str, currentCourse.getCourseID(), itemIDs); } else { sqlQueryQuizList = "SELECT * FROM [Quiz] WHERE status='active' and elearn_courseID = '" + currentCourse.getCourseID() + "' and quizID != " + currentQuiz.getQuizID(); } SqlDataSource1.SelectCommand = sqlQueryQuizList; gvPrereq.DataSource = SqlDataSource1; gvPrereq.DataBind(); gvPrereq.UseAccessibleHeader = true; if (gvPrereq.Rows.Count > 0) { gvPrereq.HeaderRow.TableSection = TableRowSection.TableHeader; } //to load prereq cart var sqlQuery = ""; if (itemIDs.Length > 0) { sqlQuery = String.Format("SELECT * FROM [Quiz] WHERE [quizID] IN ({0}) and quizID != " + currentQuiz.getQuizID(), itemIDs); } else { sqlQuery = "SELECT * FROM [Quiz] WHERE [quizID] = -1"; } SqlDataSourcePrereqCart.SelectCommand = sqlQuery; gvPrereqCart.DataSource = SqlDataSourcePrereqCart; gvPrereqCart.DataBind(); } } /* * if (Session["currentQuiz"] == null) * { * Session["currentQuiz"] = txtQuizTitle.Text; * System.Diagnostics.Debug.WriteLine("Setting currentQuiz"); * } */ } }
public List <Course_elearn> viewAvailablePrerequisiteCourses() { SqlConnection conn = new SqlConnection(); List <Course_elearn> toReturn_list = new List <Course_elearn>(); Course_elearn toReturn; try { conn = new SqlConnection(); string connstr = ConfigurationManager.ConnectionStrings["DBConnectionString"].ToString(); conn.ConnectionString = connstr; conn.Open(); SqlCommand comm = new SqlCommand(); comm.Connection = conn; comm.CommandText = "select * " + "from [Elearn_course] where status = 'active' and start_date<=getDate()"; SqlDataReader dr = comm.ExecuteReader(); while (dr.Read()) { toReturn = new Course_elearn(); toReturn.setCourseID((int)dr["elearn_courseID"]); //1 toReturn.setCourseName((string)dr["elearn_courseName"]); //2 if (!dr.IsDBNull(4)) { toReturn.setCourseProvider((string)dr["elearn_courseProvider"]); } ; toReturn.setStartDate((DateTime)dr["start_date"]);//3 if (!dr.IsDBNull(4)) { toReturn.setExpiryDate((DateTime)dr["expiry_date"]); } toReturn.setStatus((string)dr["status"]); //4 //get the prereq toReturn.setDescription((string)dr["description"]); //6 ArrayList list = getPrereqOfCourse((int)dr["elearn_courseID"]); //5 if (list != null) { toReturn.setPrerequisite(list); //retrieve arraylist of all prereq course_elearn objects } toReturn.setCategoryID((int)dr["categoryID"]); //7 toReturn.setHoursAwarded((double)dr["hoursAwarded"]); if (!dr.IsDBNull(11)) { toReturn.setTargetAudience((string)dr["targetAudience"]); } toReturn.setCourseType((string)dr["courseType"]); toReturn_list.Add(toReturn); //add to arraylist to return of all courses related to given category } dr.Close(); } catch (SqlException ex) { throw ex; } finally { conn.Close(); } return(toReturn_list); }
public Quiz getQuizByID(int quizID) { SqlConnection conn = new SqlConnection(); Quiz toReturn = null; try { conn = new SqlConnection(); string connstr = ConfigurationManager.ConnectionStrings["DBConnectionString"].ToString(); conn.ConnectionString = connstr; conn.Open(); SqlCommand comm = new SqlCommand(); comm.Connection = conn; comm.CommandText = "select * from [Quiz] q inner join [Elearn_course] ec on q.elearn_courseID = ec.elearn_courseID where q.quizID=@quizID"; comm.Parameters.AddWithValue("@quizID", quizID); SqlDataReader dr = comm.ExecuteReader(); while (dr.Read()) { toReturn = new Quiz(); toReturn.setQuizID((int)dr["quizID"]); toReturn.setTitle((string)dr["title"]); toReturn.setDescription((string)dr["description"]); toReturn.setPassingGrade((int)dr["passingGrade"]); toReturn.setRandomOrder((string)dr["randomOrder"]); toReturn.setStatus((string)dr["status"]); toReturn.setTimeLimit((int)dr["timeLimit"]); toReturn.setMultipleAttempts((string)dr["multipleAttempts"]); toReturn.setNumberOfAttempts((int)dr["numberOfAttempts"]); toReturn.setDisplayAnswer((string)dr["displayAnswer"]); Course_elearnDAO ceDAO = new Course_elearnDAO(); //toReturn.setMainCourse(ceDAO.get_course_by_id((int)dr["elearn_courseID"])); Course_elearn course = new Course_elearn(); UserDAO userDAO = new UserDAO(); int cid = (int)dr["elearn_courseID"]; //1 course.setCourseID(cid); course.setCourseName((string)dr["elearn_courseName"]); //2 if (!dr.IsDBNull(4)) { course.setCourseProvider((string)dr["elearn_courseProvider"]); } ; course.setStartDate((DateTime)dr["start_date"]);//3 if (!dr.IsDBNull(4)) { course.setExpiryDate((DateTime)dr["expiry_date"]); } course.setStatus((string)dr["status"]); //4 //get the prereq course.setDescription((string)dr["description"]); //6 course.setEntryDate((DateTime)dr["entry_date"]); ArrayList list = ceDAO.getPrereqOfCourse(cid); //5 if (list != null) { course.setPrerequisite(list); //retrieve arraylist of all prereq course_elearn objects } course.setCategoryID((int)dr["categoryID"]); //7 course.setCourseCreator(userDAO.getUserByID((string)dr["courseCreator"])); course.setHoursAwarded((double)dr["hoursAwarded"]); if (!dr.IsDBNull(11)) { course.setTargetAudience((string)dr["targetAudience"]); } toReturn.setMainCourse(course); } dr.Close(); } catch (SqlException ex) { throw ex; } finally { conn.Close(); } return(toReturn); }