コード例 #1
0
ファイル: Login.aspx.cs プロジェクト: shehryar37/etaleem
        protected void btnSubjectsSelected_Click(object sender, EventArgs e)
        {
            int hashCode = sender.GetHashCode();

            for (int i = 0; i < rRegisterSubjectsSelected.Items.Count; i++)
            {
                Button button = (Button)rRegisterSubjectsSelected.Items[i].FindControl("btnSubjectsSelected");

                if (button.GetHashCode() == hashCode)
                {
                    int id = Convert.ToInt32(button.Text.Substring(button.Text.Length - 4));

                    using (DatabaseDataContext db = new DatabaseDataContext())
                    {
                        tblStudentSubject studentSubject = db.tblStudentSubjects.Where(x => x.subjectCode == id && x.tblStudent.tblUser.userEmail == txtRegisterEmail.Text).FirstOrDefault();
                        studentSubject.isVisible = false;

                        db.SubmitChanges();

                        ControlManager.populateControl(getSubjectsSelectedQuery(db), rRegisterSubjectsSelected);
                        ControlManager.populateControl(getSubjectsQuery(db), rRegisterSubjects);
                    }
                }
            }

            if (rRegisterSubjectsSelected.Items.Count <= 3)
            {
                mvRegisterStudentButton.ActiveViewIndex = 0;
            }
        }
コード例 #2
0
ファイル: StudentRepository.cs プロジェクト: ozaswei/dotnet1
        public bool UpdateStudentSubjects(List <SubjectSelectViewModel> subjectSelectViewModels, int studentId)
        {
            List <int> selectedValues   = subjectSelectViewModels.Where(x => x.IsSelected == true).Select(x => x.Id).ToList();
            List <int> deselectedValues = subjectSelectViewModels.Where(x => x.IsSelected == false).Select(x => x.Id).ToList();

            foreach (var id in selectedValues)
            {
                var subject = (from substud in _db.tblStudentSubjects
                               where substud.StudentId == studentId && substud.SubjectId == id
                               select substud).FirstOrDefault();
                if (subject == null)
                {
                    tblStudentSubject studentSubject = new tblStudentSubject()
                    {
                        StudentId = studentId,
                        SubjectId = id
                    };
                    _db.tblStudentSubjects.Add(studentSubject);
                }
            }
            foreach (var subjectId in deselectedValues)
            {
                var subject = (from substud in _db.tblStudentSubjects
                               where substud.StudentId == studentId && substud.SubjectId == subjectId
                               select substud).FirstOrDefault();
                if (subject != null)
                {
                    _db.tblStudentSubjects.Remove(subject);
                    _db.SaveChanges();
                }
            }
            return(true);
        }
コード例 #3
0
        protected void btnLeaveConfirmLeave_Click(object sender, EventArgs e)
        {
            int hash = sender.GetHashCode();

            for (int i = 0; i < subjectsCatalogRepeater.Items.Count; i++)
            {
                Button button = (Button)subjectsCatalogRepeater.Items[i].FindControl("btnLeaveConfirmLeave");

                if (button.GetHashCode() == hash)
                {
                    Label label = (Label)subjectsCatalogRepeater.Items[i].FindControl("lblSubjectCode");

                    using (DatabaseDataContext db = new DatabaseDataContext())
                    {
                        tblStudentSubject studentSubject = db.tblStudentSubjects.Where(x => x.subjectCode == Convert.ToInt32(label.Text) && x.isVisible && x.studentID == SessionManager.StudentID).FirstOrDefault();

                        studentSubject.isVisible = false;
                        db.SubmitChanges();
                    }

                    MultiView mv = (MultiView)subjectsCatalogRepeater.Items[i].FindControl("mvPanelBody");
                    mv.ActiveViewIndex = 0;

                    mv = (MultiView)subjectsCatalogRepeater.Items[i].FindControl("mvPanelFooter");
                    mv.ActiveViewIndex = 1;
                }
            }
        }
コード例 #4
0
ファイル: Login.aspx.cs プロジェクト: shehryar37/etaleem
        protected void btnSubjects_Click(object sender, EventArgs e)
        {
            int hashCode = sender.GetHashCode();

            for (int i = 0; i < rRegisterSubjects.Items.Count; i++)
            {
                Button button = (Button)rRegisterSubjects.Items[i].FindControl("btnSubjects");

                if (button.GetHashCode() == hashCode)
                {
                    using (DatabaseDataContext db = new DatabaseDataContext())
                    {
                        tblStudentSubject studentSubject = new tblStudentSubject
                        {
                            studentID = db.tblUsers.Join(
                                db.tblStudents,
                                x => x.userID,
                                y => y.userID,
                                ((x, y) => new { tblUser = x, tblStudent = y })).Where(x => x.tblUser.userEmail == txtRegisterEmail.Text).FirstOrDefault().tblStudent.studentID,
                            subjectCode = Convert.ToInt32(button.Text.Substring(button.Text.Length - 4)),
                            isVisible   = true
                        };

                        db.tblStudentSubjects.InsertOnSubmit(studentSubject);
                        db.SubmitChanges();


                        ControlManager.populateControl(getSubjectsSelectedQuery(db), rRegisterSubjectsSelected);
                        ControlManager.populateControl(getSubjectsQuery(db), rRegisterSubjects);
                    }
                }
            }
        }
コード例 #5
0
        protected void btnChangeConfirmTeacher_Click(object sender, EventArgs e)
        {
            int hash = sender.GetHashCode();

            for (int i = 0; i < subjectsCatalogRepeater.Items.Count; i++)
            {
                Button button = (Button)subjectsCatalogRepeater.Items[i].FindControl("btnChangeConfirmTeacher");

                if (button.GetHashCode() == hash)
                {
                    Label        label = (Label)subjectsCatalogRepeater.Items[i].FindControl("lblSubjectCode");
                    DropDownList ddl   = (DropDownList)subjectsCatalogRepeater.Items[i].FindControl("ddlChangeTeacher");

                    using (DatabaseDataContext db = new DatabaseDataContext())
                    {
                        tblStudentSubject studentSubject = db.tblStudentSubjects.Where(x => x.subjectCode == Convert.ToInt32(label.Text) && x.isVisible && x.studentID == SessionManager.StudentID).FirstOrDefault();

                        studentSubject.teacherID   = Convert.ToInt32(ddl.SelectedValue);
                        studentSubject.joiningDate = DateTime.Now.ToLongDateString();
                        db.SubmitChanges();

                        NotificationManager.enrollSubjectNotification(Convert.ToInt32(ddl.SelectedValue));

                        TextBox textBox = (TextBox)subjectsCatalogRepeater.Items[i].FindControl("txtCurrentTeacher");

                        string currentTeacher = textBox.Text;

                        int teacherID = db.tblTeachers.Where(x => x.subjectCode == Convert.ToInt32(label.Text) && x.teacherFullName.Equals(textBox.Text)).FirstOrDefault().teacherID;

                        NotificationManager.leaveSubjectNotification(teacherID);
                    }
                }
            }
        }
コード例 #6
0
        protected void btnStudentRemove_Click(object sender, EventArgs e)
        {
            int hash = sender.GetHashCode();

            for (int i = 0; i < studentListRepeater.Items.Count; i++)
            {
                LinkButton button = (LinkButton)studentListRepeater.Items[i].FindControl("btnStudentRemove");
                if (button.GetHashCode() == hash)
                {
                    TableCell tc        = (TableCell)studentListRepeater.Items[i].FindControl("tcUserEmail");
                    string    userEmail = tc.Text;

                    using (DatabaseDataContext db = new DatabaseDataContext())
                    {
                        int userID = db.tblUsers.Where(x => x.userEmail.Equals(userEmail)).FirstOrDefault().userID;

                        int studentID = db.tblUsers.Join(
                            db.tblStudents,
                            x => x.userID,
                            y => y.userID,
                            (x, y) => new { tblUser = x, tblStudent = y }).Where(
                            x => x.tblUser.userID == userID).FirstOrDefault().tblStudent.studentID;

                        tblStudentSubject studentSubject = db.tblStudentSubjects.Where(x => x.studentID == studentID && x.teacherID == SessionManager.TeacherID).FirstOrDefault();

                        studentSubject.teacherID = null;
                        studentSubject.isVisible = false;
                        db.SubmitChanges();

                        var list = db.tblUsers.Join(
                            db.tblStudents,
                            x => x.userID,
                            y => y.userID,
                            (x, y) => new { tblUser = x, tblStudent = y }).Join(
                            db.tblStudentSubjects,
                            y => y.tblStudent.studentID,
                            z => z.studentID,
                            (y, z) => new { tblStudent = y, tblStudentSubject = z }).Where(
                            x => x.tblStudentSubject.teacherID == SessionManager.TeacherID &&
                            x.tblStudentSubject.isVisible && x.tblStudentSubject.teacherID != null).Select(s => new
                        {
                            s.tblStudent.tblStudent.studentFullName,
                            s.tblStudent.tblUser.userEmail,
                            s.tblStudentSubject.joiningDate
                        }).SortBy("joiningDate");

                        list.Reverse();

                        ControlManager.populateControl(list, studentListRepeater);

                        NotificationManager.removeStudentNotification(userID);
                    }

                    break;
                }
            }
        }
コード例 #7
0
        protected void btnEnrollConfirmEnroll_Click(object sender, EventArgs e)
        {
            int hash = sender.GetHashCode();

            for (int i = 0; i < subjectsCatalogRepeater.Items.Count; i++)
            {
                Button button = (Button)subjectsCatalogRepeater.Items[i].FindControl("btnEnrollConfirmEnroll");

                if (button.GetHashCode() == hash)
                {
                    Label        label = (Label)subjectsCatalogRepeater.Items[i].FindControl("lblSubjectCode");
                    DropDownList ddl   = (DropDownList)subjectsCatalogRepeater.Items[i].FindControl("ddlChangeTeacher");

                    //ddl.DataValueField = "teacherID";
                    //ddl.DataTextField = "teacherFullName";
                    //ddl.DataBind();

                    using (DatabaseDataContext db = new DatabaseDataContext())
                    {
                        tblStudentSubject tbl = db.tblStudentSubjects.Where(x => x.studentID == SessionManager.StudentID && x.subjectCode == Convert.ToInt32(label.Text)).FirstOrDefault();

                        if (tbl != null)
                        {
                            db.tblStudentSubjects.DeleteOnSubmit(tbl);
                            db.SubmitChanges();
                        }
                    }
                    using (DatabaseDataContext db = new DatabaseDataContext())
                    {
                        tblStudentSubject studentSubject = new tblStudentSubject();


                        studentSubject.studentID   = SessionManager.StudentID;
                        studentSubject.subjectCode = Convert.ToInt32(label.Text);
                        studentSubject.teacherID   = Convert.ToInt32(ddl.SelectedValue);
                        studentSubject.isVisible   = true;
                        studentSubject.joiningDate = DateTime.Now.Date.ToLongDateString();


                        db.tblStudentSubjects.InsertOnSubmit(studentSubject);
                        db.SubmitChanges();

                        int userID = db.tblTeachers.Where(x => x.teacherID == Convert.ToInt32(ddl.SelectedValue)).FirstOrDefault().userID;

                        NotificationManager.enrollSubjectNotification(userID);
                    }

                    MultiView mv = (MultiView)subjectsCatalogRepeater.Items[i].FindControl("mvPanelBody");
                    mv.ActiveViewIndex = 0;

                    mv = (MultiView)subjectsCatalogRepeater.Items[i].FindControl("mvPanelFooter");
                    mv.ActiveViewIndex = 0;

                    break;
                }
            }
        }
コード例 #8
0
        protected void btnEnrollConfirmEnroll_Click(object sender, EventArgs e)
        {
            int hash = sender.GetHashCode();

            for (int i = 0; i < subjectsCatalogRepeater.Items.Count; i++)
            {
                Button button = (Button)subjectsCatalogRepeater.Items[i].FindControl("btnEnrollConfirmEnroll");

                if (button.GetHashCode() == hash)
                {
                    Label        label = (Label)subjectsCatalogRepeater.Items[i].FindControl("lblSubjectCode");
                    DropDownList ddl   = (DropDownList)subjectsCatalogRepeater.Items[i].FindControl("ddlChangeTeacher");


                    using (DatabaseDataContext db = new DatabaseDataContext())
                    {
                        tblStudentSubject tbl = db.tblStudentSubjects.Where(x => x.studentID == SessionManager.UserID && x.subjectCode == Convert.ToInt32(label.Text) && x.teacherID == Convert.ToInt32(Session["ddl"])).FirstOrDefault();

                        if (tbl != null)
                        {
                            db.tblStudentSubjects.DeleteOnSubmit(tbl);
                            db.SubmitChanges();
                        }
                    }
                    using (DatabaseDataContext db = new DatabaseDataContext())
                    {
                        tblStudentSubject studentSubject = new tblStudentSubject
                        {
                            studentID   = SessionManager.StudentID,
                            subjectCode = Convert.ToInt32(label.Text),
                            teacherID   = Convert.ToInt32(Session["ddl"]),
                            isVisible   = true
                        };


                        db.tblStudentSubjects.InsertOnSubmit(studentSubject);
                        db.SubmitChanges();
                    }

                    MultiView mv = (MultiView)subjectsCatalogRepeater.Items[i].FindControl("mvPanelBody");
                    mv.ActiveViewIndex = 0;

                    mv = (MultiView)subjectsCatalogRepeater.Items[i].FindControl("mvPanelFooter");
                    mv.ActiveViewIndex = 0;
                }
            }
        }
コード例 #9
0
        protected void subjectsCatalogRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            Label        label   = (Label)e.Item.FindControl("lblSubjectCode");
            DropDownList ddl     = (DropDownList)e.Item.FindControl("ddlChangeTeacher");
            TextBox      textBox = (TextBox)e.Item.FindControl("txtCurrentTeacher");

            using (DatabaseDataContext db = new DatabaseDataContext())
            {
                tblStudentSubject teacher = db.tblStudentSubjects.Where(x => x.studentID == SessionManager.StudentID && x.subjectCode == Convert.ToInt32(label.Text) && x.isVisible).FirstOrDefault();

                tblTeacher currentTeacher;
                int?       teacherID;

                object teachers;

                if (teacher == null)
                {
                    teacherID    = null;
                    textBox.Text = "No current teacher";

                    teachers = db.tblTeachers.Where(x => x.subjectCode == Convert.ToInt32(label.Text)).ToList();
                }
                else
                {
                    currentTeacher = db.tblTeachers.Where(x => x.teacherID == teacher.teacherID).FirstOrDefault();
                    textBox.Text   = currentTeacher.teacherFullName;
                    teacherID      = teacher.teacherID;

                    teachers = db.tblTeachers.Where(x => x.subjectCode == Convert.ToInt32(label.Text) && x.teacherID != teacherID).ToList();
                }

                ddl.DataTextField  = "teacherFullName";
                ddl.DataValueField = "teacherID";

                ControlManager.populateControl(teachers, ddl);

                if (ddl.Items.Count == 0)
                {
                    ddl.Enabled = false;
                    Button confirmButton = (Button)e.Item.FindControl("btnChangeConfirmTeacher");
                    confirmButton.Enabled = false;

                    confirmButton         = (Button)e.Item.FindControl("btnEnrollConfirmEnroll");
                    confirmButton.Enabled = false;
                }
            }
        }
コード例 #10
0
        public bool InsertStudentSubjects(List <int> subjectIds, int studentId)
        {
            bool status = false;

            foreach (var subjectId in subjectIds)
            {
                tblStudentSubject studentSubject = new tblStudentSubject()
                {
                    StudentId = studentId,
                    SubjectId = subjectId,
                };
                _db.tblStudentSubjects.Add(studentSubject);
                _db.SaveChanges();
                status = true;
            }
            return(status);
        }
コード例 #11
0
        protected void btnChangeConfirmTeacher_Click(object sender, EventArgs e)
        {
            int hash = sender.GetHashCode();

            for (int i = 0; i < subjectsCatalogRepeater.Items.Count; i++)
            {
                Button button = (Button)subjectsCatalogRepeater.Items[i].FindControl("btnEnroll");

                if (button.GetHashCode() == hash)
                {
                    Label        label = (Label)subjectsCatalogRepeater.Items[i].FindControl("lblSubjectCode");
                    DropDownList ddl   = (DropDownList)subjectsCatalogRepeater.Items[i].FindControl("ddlChangeTeacher");

                    using (DatabaseDataContext db = new DatabaseDataContext())
                    {
                        tblStudentSubject studentSubject = db.tblStudentSubjects.Where(x => x.subjectCode == Convert.ToInt32(label.Text) && x.isVisible && x.studentID == SessionManager.StudentID).FirstOrDefault();

                        studentSubject.teacherID = Convert.ToInt32(ddl.SelectedValue.ToString());
                    }
                }
            }
        }