private bool isAuthorized()
        {
            bool                isIt          = false;
            List <User>         myUsers       = new List <User>();
            List <Applications> myApplication = new List <Applications>();
            UserDAL             myUserDAL     = new UserDAL();

            InitializeModule.EnumCampus CMPS;
            try
            {
                string sPassword  = "";
                int    iUserNo    = 0;
                int    iSystem    = (int)InitializeModule.EnumSystems.ECTLocal;
                int    iRole      = 0;
                int    iLecturer  = 0;
                int    iYear      = 2019;
                int    iSem       = 2;
                int    iCampus    = 0;
                string sName      = "";
                string sNo        = "";
                int    iMarkYear  = 0;
                int    iMarkSem   = 0;
                int    iUserIndex = -1;

                EncryptionCls theEncryption = new EncryptionCls();
                //string sCondition = " Where UserName='******'";
                string sCondition = " Where 1=1";

                myUsers    = myUserDAL.GetUser(InitializeModule.EnumCampus.ECTNew, sCondition, false);
                iUserIndex = myUsers.FindIndex(delegate(User U) { return(U.UserName.ToLower() == txtUser.Text.ToLower()); });
                if (iUserIndex >= 0)
                {
                    myUser                = myUsers[iUserIndex];
                    iUserNo               = myUser.UserNo;
                    sPassword             = myUser.Password;
                    iLecturer             = myUser.LecturerID;
                    iYear                 = myUser.AcademicYear;
                    iSem                  = myUser.Semester;
                    iCampus               = myUser.Campus;
                    iMarkYear             = myUser.MarksYear;
                    iMarkSem              = myUser.MarksSemester;
                    Session["EmployeeID"] = myUser.EmployeeID;
                }
                else
                {
                    //showmsg("Wrong user name ...");
                    lblMsg.Text = "Wrong user name ...";
                    txtUser.Focus();
                    return(isIt);
                }

                if (theEncryption.verifyMd5Hash(txtPassword.Text, sPassword) || sPassword == txtPassword.Text)
                {
                    iRole = myUserDAL.GetUserRole(iUserNo, iSystem);
                    if (iRole > 0)
                    {
                        if (iRole == 105 || iRole == 111)
                        {
                            Session["CurrentUserName"] = myUser.UserName;//txtUser.Text;
                            Session["CurrentUserNo"]   = iUserNo;
                            CMPS = (InitializeModule.EnumCampus)iCampus;
                            Session["CurrentYear"]     = iYear;
                            Session["CurrentSemester"] = iSem;
                            Session["CurrentCampus"]   = CMPS;
                            Session["CurrentRole"]     = iRole;
                            Session["CurrentSystem"]   = iSystem;
                            Session["CurrentLecturer"] = iLecturer;
                            Session["MarkYear"]        = iMarkYear;
                            Session["MarkSemester"]    = iMarkSem;

                            //server name
                            Session["CurrentPCName"]      = LibraryMOD.GetComputerName(Request.UserHostAddress);
                            Session["CurrentNetUserName"] = LibraryMOD.GetCurrentNtUserName();


                            if (iRole == 105 || iRole == 111)
                            {
                                Student_SearchDAL mySearch = new Student_SearchDAL();

                                sNo = LibraryMOD.GetSIDFromUser((InitializeModule.EnumCampus)iCampus, iUserNo);
                                //bool isEnable = Enable_Disable(sNo, (InitializeModule.EnumCampus)iCampus);
                                //if (!isEnable)
                                //{
                                //    return false;
                                //}

                                sName = mySearch.Sync_Students_No((InitializeModule.EnumCampus)iCampus, sNo);
                                CMPS  = (InitializeModule.EnumCampus)iCampus;
                                Session["CurrentCampus"]      = CMPS;
                                Session["CurrentStudent"]     = sNo;
                                Session["CurrentStudentName"] = sName;

                                int iRSem  = 0;
                                int iRYear = LibraryMOD.SeperateTerm(LibraryMOD.GetRegTerm(), out iRSem);

                                Session["RegYear"]     = iRYear;
                                Session["RegSemester"] = iRSem;

                                Session["CurrentYear"]     = Session["RegYear"];
                                Session["CurrentSemester"] = Session["RegSemester"];
                                int iCurrentMajorCampus = LibraryMOD.GetCurrentStCampus(sNo, (InitializeModule.EnumCampus)iCampus);
                                Session["CurrentMajorCampus"] = iCurrentMajorCampus;
                            }
                            get_sCSemester();
                            isIt = true;
                            //showmsg("Welcome ...  " + Session["CurrentStudentName"].ToString());
                        }
                        else
                        {
                            isIt        = false;
                            lblMsg.Text = "Access Denied";
                        }
                    }
                    else
                    {
                        //showmsg("User not in system role");
                        lblMsg.Text = "User not in system role";
                    }
                }
                else
                {
                    //showmsg("Wrong user password ...");
                    lblMsg.Text = "Wrong user password ...";
                    txtPassword.Focus();
                }
            }
            catch (Exception exp)
            {
                Console.WriteLine("{0} Exception caught.", exp);
                //divMsgText.InnerText = exp.Message;
            }
            finally
            {
                myUsers.Clear();
                myApplication.Clear();
            }
            return(isIt);
        }