Example #1
0
        public ActionResult Autenticarse(string returnUrl)
        {
            var licencia = _db.Set <LicenciaInfo>().SingleOrDefault();

            if (licencia != null)
            {
                var cl  = new ComprobadorDeLicencia();
                var lic = new Licencia();
                lic.Suscriptor         = licencia.Suscriptor;
                lic.Aplicacion         = licencia.Aplicacion;
                lic.FechaDeVencimiento = licencia.FechaDeVencimiento;
                lic.LicenceHash        = licencia.Hash;
                if (!cl.Verificar(lic, DateTime.Now))
                {
                    _db.Set <LicenciaInfo>().RemoveRange(_db.Set <LicenciaInfo>().ToList());
                    _db.SaveChanges();
                    return(RedirectToAction("Index", "Licencia"));
                }
            }
            else
            {
                return(RedirectToAction("Index", "Licencia"));
            }
            ViewBag.ReturnUrl = returnUrl;
            return(View());
        }
        public ActionResult Nueva(HttpPostedFileBase licencia)
        {
            var path = HostingEnvironment.ApplicationPhysicalPath;

            licencia.SaveAs(path + "\\licencia.lic");

            var lic = CargarLicencia.CargarDeFichero(path + "\\licencia.lic");

            var cl = new ComprobadorDeLicencia();

            if (cl.Verificar(lic, DateTime.Now))
            {
                var licenciaInfo = new LicenciaInfo()
                {
                    Suscriptor         = lic.Suscriptor,
                    Aplicacion         = lic.Aplicacion,
                    FechaDeVencimiento = lic.FechaDeVencimiento,
                    Hash = lic.LicenceHash
                };

                _db.Licencias.RemoveRange(_db.Licencias.ToList());
                _db.Licencias.Add(licenciaInfo);
                _db.SaveChanges();
                TempData["exito"] = "Licencia agregada correctamente";
            }
            else
            {
                TempData["error"] = "Licencia no valida";
            }
            return(RedirectToAction("Index"));
        }
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            if (filterContext.Controller is LicenciaController)
            {
            }
            else
            {
                var licencia = _db.Licencias.FirstOrDefault();
                if (licencia == null)
                {
                    var routeValues = new RouteValueDictionary();
                    routeValues.Add("controller", "Licencia");
                    routeValues.Add("action", "Index");

                    filterContext.Result = new RedirectToRouteResult(routeValues);
                }
                else
                {
                    var cl  = new ComprobadorDeLicencia();
                    var lic = new Licencia();
                    lic.Suscriptor         = licencia.Suscriptor;
                    lic.Aplicacion         = licencia.Aplicacion;
                    lic.FechaDeVencimiento = licencia.FechaDeVencimiento;
                    lic.LicenceHash        = licencia.Hash;
                    if (cl.Verificar(lic, DateTime.Now))
                    {
                        var routeValues = new RouteValueDictionary();
                        routeValues.Add("controller", "Inicio");
                        routeValues.Add("action", "Index");

                        filterContext.Result = new RedirectToRouteResult(routeValues);
                    }
                    else
                    {
                        var routeValues = new RouteValueDictionary();
                        routeValues.Add("controller", "Licencia");
                        routeValues.Add("action", "Index");

                        filterContext.Result = new RedirectToRouteResult(routeValues);
                    }
                }
            }
            base.OnActionExecuting(filterContext);
        }