protected void btnDeleteGrouping_Click(object sender, EventArgs e) { if (cboGrouping.Items.Count == 0) { return; } DCVimaruDataContext dc = new DCVimaruDataContext(); XmlDocument doc = new XmlDocument(); List <int> list = new List <int>(); int id = Convert.ToInt32(cboGrouping.SelectedValue); list.Add(id); doc.LoadXml(MoodleGroup.DeleteGroupings(list, (string)Session["token"])); doc.Save("D:\\Grouping_Delete_" + cboGrouping.SelectedItem.Text + ".xml"); if (doc.DocumentElement.Name == "RESPONSE") { To to = dc.Tos.Single(t => t.ID_To == id); dc.Tos.DeleteOnSubmit(to); dc.ExecuteCommand("UPDATE Nhom SET ID_To = null WHERE ID_To = {0}", id); dc.SubmitChanges(); cboGrouping.DataBind(); } }
protected void btnUpdate_Click(object sender, EventArgs e) { if (txtId.Text == "" || Convert.ToInt32(txtId.Text) < 1) { lblUpdateMessage.Text = "Vui lòng nhập một ID bộ môn > 0"; txtId.Focus(); return; } DCVimaruDataContext dc = new DCVimaruDataContext(); Khoa khoa = dc.Khoas.Single(t => t.MaKhoa == cboFilter.SelectedValue); int parent = Convert.ToInt32(khoa.Id); MoodleCategory category; XmlDocument doc = new XmlDocument(); category = new MoodleCategory { Id = Convert.ToInt32(txtId.Text), Name = HttpUtility.HtmlDecode(txtName.Text), Parent = parent, IdNumber = HttpUtility.HtmlDecode(txtIdnumber.Text), Description = HttpUtility.HtmlDecode(txtName.Text), DescriptionFormat = 1, Theme = null }; List <MoodleCategory> lst = new List <MoodleCategory>(); lst.Add(category); doc.LoadXml(MoodleCategory.UpdateCategories(lst, (string)Session["token"])); doc.Save("D:\\department_" + txtId.Text + ".xml"); }
protected void btnGetEnrolledUsers_Click(object sender, EventArgs e) { DCVimaruDataContext dc = new DCVimaruDataContext(); //get courseId ThoiKhoaBieu tkb = dc.ThoiKhoaBieus.Single(t => t.STT == Convert.ToInt32(cboFilterCourse.SelectedValue)); int courseId = Convert.ToInt32(tkb.Id); //create options to get 4 fields of user is id, username, fullname, email List <KeyValuePair <string, string> > list = new List <KeyValuePair <string, string> >(); list.Add(new KeyValuePair <string, string>("userfields", "id")); list.Add(new KeyValuePair <string, string>("userfields", "username")); list.Add(new KeyValuePair <string, string>("userfields", "fullname")); list.Add(new KeyValuePair <string, string>("userfields", "email")); XmlDocument doc = new XmlDocument(); doc.LoadXml(MoodleEnrol.GetEnrolledUsers(courseId, list, (string)Session["token"])); doc.Save("D:\\enrolled_users_" + courseId + ".xml"); XmlNode xmlnode = doc.ChildNodes[1]; treeDetail.Nodes.Clear(); treeDetail.Nodes.Add(new TreeNode(doc.DocumentElement.Name)); TreeNode tNode; tNode = treeDetail.Nodes[0]; MoodleUtilites.AddNode(xmlnode, tNode); treeDetail.ExpandAll(); }
protected void btnDelete_Click(object sender, EventArgs e) { SaveCheckedValues(); grvCourse.AllowPaging = false; grvCourse.DataBind(); XmlDocument doc = new XmlDocument(); ArrayList arrIDs = ConvertToArrayList(txtListId.Text); string idnum = "0"; DCVimaruDataContext dc = new DCVimaruDataContext(); foreach (GridViewRow row in grvCourse.Rows) { idnum = grvCourse.DataKeys[row.RowIndex]["STT"].ToString(); if (arrIDs.Contains(idnum)) { int id = Convert.ToInt32(row.Cells[2].Text); List <int> list = new List <int>(); if (id != 0) { list.Add(id); } else { continue; } doc.LoadXml(MoodleCourse.DeleteCourses(list, (string)Session["token"])); doc.Save("D:\\course_delete_" + row.Cells[3].Text + ".xml"); if (doc.DocumentElement.Name == "RESPONSE") { int maTKB = Convert.ToInt32(row.Cells[3].Text); // Reset Moodle Id of Thoi khoa bieu to 0 ThoiKhoaBieu tkb = dc.ThoiKhoaBieus.Single(t => t.STT == maTKB); tkb.Id = 0; // Reset GhiDanh of Dang ky to false and ID_Nhom to null dc.ExecuteCommand("UPDATE [dbo].[DangKy] SET GhiDanh = 0 , ID_Nhom = null WHERE MaTKB = {0}", maTKB); // Delete group dc.ExecuteCommand("DELETE FROM [dbo].[Nhom] WHERE MaTKB = {0}", maTKB); // Delete grouping dc.ExecuteCommand("DELETE FROM [dbo].[To] WHERE MaTKB = {0}", maTKB); dc.SubmitChanges(); } } } grvCourse.AllowPaging = true; }
private void EnrolUsers(int suspend) { SaveCheckedValues(); grvUser.AllowPaging = false; grvUser.DataBind(); DCVimaruDataContext dc = new DCVimaruDataContext(); //get courseId ThoiKhoaBieu tkb = dc.ThoiKhoaBieus.Single(t => t.STT == Convert.ToInt32(cboFilterCourse.SelectedValue)); int courseId = Convert.ToInt32(tkb.Id); //role: Học viên int roleId = 5; MoodleEnrol enrol; XmlDocument doc = new XmlDocument(); ArrayList arrIDs = ConvertToArrayList(txtMaSV.Text); string MaSV = "0"; foreach (GridViewRow row in grvUser.Rows) { MaSV = grvUser.DataKeys[row.RowIndex]["MaSV"].ToString(); if (arrIDs.Contains(MaSV)) { CheckBox chk = row.Cells[4].Controls[0] as CheckBox; if (row.Cells[3].Text == "0" || (suspend == 0 && chk.Checked) || (suspend == 1 && !chk.Checked)) { continue; } enrol = new MoodleEnrol { RoleId = roleId, UserId = Convert.ToInt32(row.Cells[3].Text), CourseId = courseId, TimeStart = 0, TimeEnd = 0, Suspend = suspend }; List <MoodleEnrol> list = new List <MoodleEnrol>(); list.Add(enrol); doc.LoadXml(MoodleEnrol.EnrolUsers(list, (string)Session["token"])); doc.Save("D:\\enrol_" + enrol.UserId + ".xml"); if (doc.DocumentElement.Name == "RESPONSE") { DangKy dk = dc.DangKies.Single(t => t.STT == Convert.ToInt64(row.Cells[2].Text)); dk.GhiDanh = !chk.Checked; dc.SubmitChanges(); } } } grvUser.AllowPaging = true; }
protected void btnCreate_Click(object sender, EventArgs e) { SaveCheckedValues(); grvCourse.AllowPaging = false; grvCourse.DataBind(); MoodleCourse course; XmlDocument doc = new XmlDocument(); ArrayList arrIDs = ConvertToArrayList(txtListId.Text); string idnum = "0"; DCVimaruDataContext dc = new DCVimaruDataContext(); HocPhan hocphan = dc.HocPhans.Single(t => t.MaHP == cboFilterSubject.SelectedValue); int parent = Convert.ToInt32(hocphan.Id); foreach (GridViewRow row in grvCourse.Rows) { idnum = grvCourse.DataKeys[row.RowIndex]["STT"].ToString(); if (arrIDs.Contains(idnum)) { if (row.Cells[2].Text != "0") { continue; } string fullname = HttpUtility.HtmlDecode(row.Cells[4].Text + " " + row.Cells[5].Text + "-" + row.Cells[6].Text); course = new MoodleCourse( fullname, fullname, parent, MoodleUtilites.GetIdNumber(fullname), fullname, MoodleUtilites.ConvertToTimestamp(row.Cells[6].Text) ); List <MoodleCourse> list = new List <MoodleCourse>(); list.Add(course); doc.LoadXml(MoodleCourse.CreateCourses(list, (string)Session["token"])); doc.Save("D:\\course_create_" + row.Cells[3].Text + ".xml"); if (doc.DocumentElement.Name == "RESPONSE") { long id = (long)Convert.ToUInt32(doc.DocumentElement.ChildNodes[0].ChildNodes[0].ChildNodes[0].ChildNodes[0].InnerText); ThoiKhoaBieu tkb = dc.ThoiKhoaBieus.Single(t => t.STT == Convert.ToInt32(row.Cells[3].Text)); tkb.Id = id; dc.SubmitChanges(); } } } grvCourse.AllowPaging = true; }
protected void btnCreate_Click(object sender, EventArgs e) { SaveCheckedValues(); grvUser.AllowPaging = false; grvUser.DataBind(); MoodleUser user; XmlDocument doc = new XmlDocument(); ArrayList arrIDs = ConvertToArrayList(txtMaSV.Text); string MaSV = "0"; foreach (GridViewRow row in grvUser.Rows) { MaSV = grvUser.DataKeys[row.RowIndex]["MaSV"].ToString(); if (arrIDs.Contains(MaSV)) { if (row.Cells[2].Text != "0") { continue; } user = new MoodleUser { Username = row.Cells[3].Text, Password = row.Cells[3].Text, Firstname = HttpUtility.HtmlDecode(row.Cells[5].Text), Lastname = HttpUtility.HtmlDecode(row.Cells[4].Text), Email = row.Cells[6].Text, Timezone = "7.0", City = "Hai Phong", Country = "VN" }; List <MoodleUser> list = new List <MoodleUser>(); list.Add(user); doc.LoadXml(MoodleUser.CreateUsers(list, (string)Session["token"])); doc.Save("D:\\user_create_" + user.Username + ".xml"); if (doc.DocumentElement.Name == "RESPONSE") { long userId = (long)Convert.ToUInt64(doc.DocumentElement.ChildNodes[0].ChildNodes[0].ChildNodes[0].ChildNodes[0].InnerText); DCVimaruDataContext dc = new DCVimaruDataContext(); SinhVien sv = dc.SinhViens.Single(t => t.MaSV == user.Username); sv.Id = userId; dc.SubmitChanges(); } } } grvUser.AllowPaging = true; }
protected void btnCreate_Click(object sender, EventArgs e) { SaveCheckedValues(); grvDepartment.AllowPaging = false; grvDepartment.DataBind(); MoodleCategory category; XmlDocument doc = new XmlDocument(); ArrayList arrIDs = ConvertToArrayList(txtListId.Text); string idnum = "0"; DCVimaruDataContext dc = new DCVimaruDataContext(); Khoa khoa = dc.Khoas.Single(t => t.MaKhoa == cboFilter.SelectedValue); int parent = Convert.ToInt32(khoa.Id); foreach (GridViewRow row in grvDepartment.Rows) { if (row.Cells[2].Text != "0") { continue; } idnum = grvDepartment.DataKeys[row.RowIndex]["MaBoMon"].ToString(); if (arrIDs.Contains(idnum)) { category = new MoodleCategory { Name = HttpUtility.HtmlDecode(row.Cells[4].Text), Parent = parent, IdNumber = HttpUtility.HtmlDecode(row.Cells[3].Text), Description = HttpUtility.HtmlDecode(row.Cells[4].Text), DescriptionFormat = 1, Theme = null }; List <MoodleCategory> lst = new List <MoodleCategory>(); lst.Add(category); doc.LoadXml(MoodleCategory.CreateCategories(lst, (string)Session["token"])); doc.Save("D:\\department_" + category.IdNumber + ".xml"); if (doc.DocumentElement.Name == "RESPONSE") { long id = (long)Convert.ToUInt32(doc.DocumentElement.ChildNodes[0].ChildNodes[0].ChildNodes[0].ChildNodes[0].InnerText); BoMon bomon = dc.BoMons.Single(t => t.MaBoMon == Convert.ToInt32(category.IdNumber)); bomon.Id = id; dc.SubmitChanges(); } } } grvDepartment.AllowPaging = true; }
protected void LinqDataSourceCourse_Selecting(object sender, LinqDataSourceSelectEventArgs e) { DCVimaruDataContext dc = new DCVimaruDataContext(); var rs = from tkb in dc.ThoiKhoaBieus where tkb.MaHP == cboFilterSubject.SelectedValue && tkb.Id != 0 select new HocPhanResult { Id = tkb.Id, STT = tkb.STT, MaHP = tkb.MaHP, TenHP = "N" + tkb.MaNH + " (" + tkb.NgayBD.Day + "-" + tkb.NgayBD.Month + "-" + tkb.NgayBD.Year + ")" }; e.Result = rs.OrderBy(t => t.Id); }
protected void LinqDataSourceGroup_Selecting(object sender, LinqDataSourceSelectEventArgs e) { DCVimaruDataContext dc = new DCVimaruDataContext(); var rs = from nhom in dc.Nhoms where nhom.MaTKB.ToString() == cboFilterCourse.SelectedValue select new NhomResult { ID_Nhom = nhom.ID_Nhom, ID_To = nhom.ID_To, TenNhom = nhom.TenNhom, TenTo = nhom.To.TenTo, MoTa = nhom.MoTa }; e.Result = rs; }
protected void btnCreateGroup_Click(object sender, EventArgs e) { if (cboFilterCourse.Items.Count == 0) { return; } DCVimaruDataContext dc = new DCVimaruDataContext(); //get courseId ThoiKhoaBieu tkb = dc.ThoiKhoaBieus.Single(t => t.STT == Convert.ToInt32(cboFilterCourse.SelectedValue)); int courseId = Convert.ToInt32(tkb.Id); XmlDocument doc = new XmlDocument(); List <MoodleGroup> list = new List <MoodleGroup>(); MoodleGroup group = new MoodleGroup { CourseId = courseId, Name = txtGroupName.Text, Description = txtDescription.Text, DescriptionFormat = 1, EnrolmentKey = null }; list.Add(group); doc.LoadXml(MoodleGroup.CreateGroups(list, (string)Session["token"])); doc.Save("D:\\Group_Create_" + txtGroupName.Text + ".xml"); if (doc.DocumentElement.Name == "RESPONSE") { long idnhom = (long)Convert.ToUInt64(doc.DocumentElement.ChildNodes[0].ChildNodes[0].ChildNodes[0].ChildNodes[0].InnerText); Nhom nhom = new Nhom(); nhom.ID_Nhom = idnhom; nhom.TenNhom = txtGroupName.Text; nhom.MoTa = txtDescription.Text; nhom.MaTKB = (long)Convert.ToUInt64(cboFilterCourse.SelectedValue); dc.Nhoms.InsertOnSubmit(nhom); dc.SubmitChanges(); cboGroup.DataBind(); } }
protected void LinqDataSourceCourse_Selecting(object sender, LinqDataSourceSelectEventArgs e) { DCVimaruDataContext dc = new DCVimaruDataContext(); var rs = from tkb in dc.ThoiKhoaBieus where tkb.MaHP == cboFilterSubject.SelectedValue select new HocPhanResult { Id = tkb.Id, STT = tkb.STT, MaHP = tkb.MaHP, TenHP = tkb.HocPhan.TenHP, MaNH = "N" + tkb.MaNH, NgayBD = tkb.NgayBD }; e.Result = rs.OrderByDescending(t => t.Id); cboPageSize_SelectedIndexChanged(sender, e); }
protected void btnAddGroupMember_Click(object sender, EventArgs e) { SaveCheckedValues(); grvUser.AllowPaging = false; grvUser.DataBind(); DCVimaruDataContext dc = new DCVimaruDataContext(); //get group Id int groupId = Convert.ToInt32(cboGroup.SelectedValue); //get user list XmlDocument doc = new XmlDocument(); ArrayList arrIDs = ConvertToArrayList(txtMaSV.Text); string MaSV = "0"; foreach (GridViewRow row in grvUser.Rows) { MaSV = grvUser.DataKeys[row.RowIndex]["MaSV"].ToString(); if (arrIDs.Contains(MaSV)) { CheckBox chk = row.Cells[4].Controls[0] as CheckBox; if (row.Cells[3].Text == "0" || !chk.Checked || row.Cells[10].Text != " ") { continue; } List <KeyValuePair <int, int> > list = new List <KeyValuePair <int, int> >(); list.Add(new KeyValuePair <int, int>(groupId, Convert.ToInt32(row.Cells[3].Text))); doc.LoadXml(MoodleGroup.AddGroupMembers(list, (string)Session["token"])); doc.Save("D:\\Group_Add_Member_" + cboGroup.Text + ".xml"); if (doc.DocumentElement.Name == "RESPONSE") { DangKy dk = dc.DangKies.Single(t => t.STT == Convert.ToInt64(row.Cells[2].Text)); dk.ID_Nhom = (long?)groupId; dc.SubmitChanges(); } } } grvUser.AllowPaging = true; }
protected void LinqDataSourceUser_Selecting(object sender, LinqDataSourceSelectEventArgs e) { DCVimaruDataContext dc = new DCVimaruDataContext(); var rs = from user in dc.SinhViens where user.MaLop.ToString() == cboClass.SelectedValue select new UserResult { Id = user.Id, MaSV = user.MaSV, Ho = user.Ho, Ten = user.Ten, Email = user.MaSV, MaLop = user.MaLop }; switch (cboFilter.SelectedIndex) { case 1: rs = rs.Where(c => c.Id != 0); break; case 2: rs = rs.Where(c => c.Id == 0); break; } switch (cboField.SelectedIndex) { case 0: rs = rs.Where(c => c.Ten.Contains(txtKeyword.Text)); break; case 1: rs = rs.Where(c => c.Ho.Contains(txtKeyword.Text)); break; case 2: rs = rs.Where(c => c.MaSV.Contains(txtKeyword.Text)); break; } e.Result = rs.OrderBy(u => u.Ten); cboPageSize_SelectedIndexChanged(sender, e); }
protected void btnDelete_Click(object sender, EventArgs e) { SaveCheckedValues(); grvUser.AllowPaging = false; grvUser.DataBind(); XmlDocument doc = new XmlDocument(); ArrayList arrIDs = ConvertToArrayList(txtMaSV.Text); string MaSV = "0"; foreach (GridViewRow row in grvUser.Rows) { MaSV = grvUser.DataKeys[row.RowIndex]["MaSV"].ToString(); if (arrIDs.Contains(MaSV)) { int userId = Convert.ToInt32(row.Cells[3].Text); if (userId == 0) { continue; } List <int> list = new List <int>(); list.Add(userId); doc.LoadXml(MoodleUser.DeleteUsers(list, (string)Session["token"])); doc.Save("D:\\user_delete_" + row.Cells[5].Text + ".xml"); if (doc.DocumentElement.Name == "RESPONSE") { DCVimaruDataContext dc = new DCVimaruDataContext(); SinhVien sv = dc.SinhViens.Single(t => t.MaSV == MaSV); sv.Id = 0; dc.ExecuteCommand("UPDATE DangKy SET GhiDanh = 0, ID_Nhom = null WHERE MaSV = {0}", MaSV); dc.SubmitChanges(); } } } grvUser.AllowPaging = true; }
protected void btnUnsignGrouping_Click(object sender, EventArgs e) { SaveCheckedValues(); grvGroup.AllowPaging = false; grvGroup.DataBind(); DCVimaruDataContext dc = new DCVimaruDataContext(); //get grouping Id int groupingId = Convert.ToInt32(cboGrouping.SelectedValue); //get group list XmlDocument doc = new XmlDocument(); ArrayList arrIDs = ConvertToArrayList(txtListId.Text); string idnhom = "0"; foreach (GridViewRow row in grvGroup.Rows) { idnhom = grvGroup.DataKeys[row.RowIndex]["ID_Nhom"].ToString(); if (arrIDs.Contains(idnhom)) { if (HttpUtility.HtmlDecode(row.Cells[5].Text) != cboGrouping.SelectedItem.Text) { continue; } List <KeyValuePair <int, int> > list = new List <KeyValuePair <int, int> >(); list.Add(new KeyValuePair <int, int>(groupingId, Convert.ToInt32(row.Cells[2].Text))); doc.LoadXml(MoodleGroup.UnassignGrouping(list, (string)Session["token"])); doc.Save("D:\\Grouping_Unassign_Group_" + cboGrouping.Text + ".xml"); if (doc.DocumentElement.Name == "RESPONSE") { Nhom nhom = dc.Nhoms.Single(t => t.ID_Nhom == Convert.ToInt64(row.Cells[2].Text)); nhom.ID_To = null; dc.SubmitChanges(); } } } grvGroup.AllowPaging = true; }
protected void btnUpdateGrouping_Click(object sender, EventArgs e) { if (cboFilterCourse.Items.Count == 0) { return; } DCVimaruDataContext dc = new DCVimaruDataContext(); //get courseId ThoiKhoaBieu tkb = dc.ThoiKhoaBieus.Single(t => t.STT == Convert.ToInt32(cboFilterCourse.SelectedValue)); int courseId = Convert.ToInt32(tkb.Id); XmlDocument doc = new XmlDocument(); List <MoodleGroup> list = new List <MoodleGroup>(); int id = Convert.ToInt32(cboGrouping.SelectedValue); MoodleGroup grouping = new MoodleGroup { Id = id, Name = txtGroupingName.Text, Description = txtDescription.Text, DescriptionFormat = 1, }; list.Add(grouping); doc.LoadXml(MoodleGroup.UpdateGroupings(list, (string)Session["token"])); doc.Save("D:\\Grouping_Update_" + txtGroupingName.Text + ".xml"); if (doc.DocumentElement.Name == "RESPONSE") { To t = dc.Tos.Single(i => i.ID_To == id); t.TenTo = txtGroupingName.Text; t.MoTa = txtDescription.Text; dc.SubmitChanges(); cboGrouping.DataBind(); } }
protected void LinqDataSourceUser_Selecting(object sender, LinqDataSourceSelectEventArgs e) { DCVimaruDataContext dc = new DCVimaruDataContext(); var rs = from dk in dc.DangKies where dk.MaTKB.ToString() == cboFilterCourse.SelectedValue select new UserResult { STT = dk.STT, Id = dk.SinhVien.Id, GhiDanh = dk.GhiDanh, MaSV = dk.MaSV, Ho = dk.SinhVien.Ho, Ten = dk.SinhVien.Ten, Email = dk.SinhVien.MaSV, TenLop = dk.SinhVien.Lop.TenLop, IdNhom = dk.ID_Nhom, TenNhom = dk.Nhom.TenNhom }; switch (cboFilter.SelectedIndex) { case 1: rs = rs.Where(c => c.Id != 0); break; case 2: rs = rs.Where(c => c.Id == 0); break; case 3: rs = rs.Where(c => c.GhiDanh); break; case 4: rs = rs.Where(c => !c.GhiDanh); break; case 5: rs = rs.Where(c => c.IdNhom != null); break; case 6: rs = rs.Where(c => c.IdNhom == null); break; default: break; } switch (cboField.SelectedIndex) { case 0: rs = rs.Where(c => c.Ten.Contains(txtKeyword.Text)); break; case 1: rs = rs.Where(c => c.Ho.Contains(txtKeyword.Text)); break; case 2: rs = rs.Where(c => c.TenLop.Contains(txtKeyword.Text)); break; case 3: if (txtKeyword.Text != "") { rs = rs.Where(c => c.TenNhom.Contains(txtKeyword.Text)); } break; } e.Result = rs.OrderBy(u => u.Ten); cboPageSize_SelectedIndexChanged(sender, e); }