public ActionResult Giris(string KullaniciAdi, string Sifre)
        {
            CMSDBEntities db = new CMSDBEntities();

            if (Request.Cookies["KullaniciAdiCk"] != null)
            {
                KullaniciAdi = Crypto.SifreyiCozAES(Request.Cookies["KullaniciAdiCk"].Value, Crypto.paylasilanAnahtar);
            }
            var kullanici = db.tbl_Kullanici.SingleOrDefault(d => d.KullaniciAdi == KullaniciAdi && d.Sifre == Sifre);

            if (kullanici != null)
            {
                KullaniciSessionModel kulSesMod = new KullaniciSessionModel();
                kulSesMod.Id           = kullanici.Id;
                kulSesMod.AdiSoyadi    = kullanici.AdiSoyadi;
                kulSesMod.KullaniciAdi = kullanici.KullaniciAdi;
                foreach (var item in kullanici.tbl_KullaniciGrubu.tbl_Izinler)
                {
                    kulSesMod.Yetkiler.Add(item.KontrollerAdi, item.Yetkiler);
                }
                Session["Kullanici"]   = kulSesMod;
                Session["BitisTarihi"] = DateTime.Now.AddHours(1);
                Session.Timeout        = 10;

                HttpCookie ck = new HttpCookie("KullaniciAdiCk", Crypto.SifreleAES(kullanici.KullaniciAdi, Crypto.paylasilanAnahtar));
                ck.Expires = DateTime.Now.AddHours(1);
                Response.Cookies.Add(ck);
                return(Redirect("/Yonetim"));
            }
            if (Request.Cookies["KullaniciAdiCk"] == null)
            {
                return(View());
            }
            return(View("OturumGiris"));
        }
Beispiel #2
0
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);

            var         typeArray     = Assembly.GetExecutingAssembly().GetTypes().Where(TheType => TheType.IsClass && !TheType.IsAbstract && TheType.Namespace == "AIOCMS.Areas.Yonetim.Controllers" && TheType.Name.Contains("Controller")).ToList();
            var         KontrollerAdi = typeArray.Select(d => d.Name).ToList();
            var         dllPath       = Assembly.GetExecutingAssembly().CodeBase.Replace("file:///", "");
            string      docuPath      = dllPath.Substring(0, dllPath.LastIndexOf(".")) + ".XML";
            XmlDocument _docuDoc      = new XmlDocument();

            if (File.Exists(docuPath))
            {
                _docuDoc = new XmlDocument();
                _docuDoc.Load(docuPath);
            }
            List <KontrollerTipi> kontTipleri = new List <KontrollerTipi>();

            foreach (var item in KontrollerAdi)
            {
                string  path            = "T:AIOCMS.Areas.Yonetim.Controllers." + item;
                XmlNode xmlDocuOfMethod = _docuDoc.SelectSingleNode(
                    "//member[starts-with(@name, '" + path + "')]");
                KontrollerTipi kont = new KontrollerTipi
                                          ();
                kont.KontrollerAdi = item.ToUpper();
                if (xmlDocuOfMethod != null)
                {
                    kont.Summary = xmlDocuOfMethod.ChildNodes[0].InnerText;
                }
                kontTipleri.Add(kont);
            }
            IzinVM.KontrollerAdlari = kontTipleri;

            CMSDBEntities db    = new CMSDBEntities();
            var           grups = db.tbl_KullaniciGrubu.ToList();

            foreach (var item in grups)
            {
                foreach (var izin in item.tbl_Izinler.ToList())
                {
                    if (!kontTipleri.Any(d => d.KontrollerAdi == izin.KontrollerAdi))
                    {
                        db.tbl_Izinler.Remove(izin);
                    }
                }
                foreach (var sistemIzin in kontTipleri)
                {
                    if (!item.tbl_Izinler.Any(d => d.KontrollerAdi == sistemIzin.KontrollerAdi))
                    {
                        db.tbl_Izinler.Add(new tbl_Izinler
                        {
                            AktifDurumu      = true,
                            OlusturmaTarihi  = DateTime.Now,
                            KontrollerAdi    = sistemIzin.KontrollerAdi,
                            Yetkiler         = 0,
                            KullaniciGrubuId = item.Id
                        });
                    }
                }
            }
            db.SaveChanges();
        }