public UnitOfWork(ApplicationDbContext context)
        {
            _context = context;

            Attempts       = new AttemptRepository(_context);
            Exams          = new ExamRepository(_context);
            Images         = new ImageRepository(_context);
            NoteParameters = new NoteParameterRepository(_context);
            Notifications  = new NotificationRepository(_context);
            Notes          = new NoteRepository(_context);
            Opinions       = new OpinionRepository(_context);
            Options        = new OptionRepository(_context);
            Passages       = new PassageRepository(_context);
            Questions      = new QuestionRepository(_context);
            Requirements   = new RequirementRepository(_context);
            Roles          = new RoleRepository(_context);
            RoleClaims     = new RoleClaimRepository(_context);
            Standards      = new StandardRepository(_context);
            Sittings       = new SittingRepository(_context);
            Topics         = new TopicRepository(_context);
            Users          = new UserRepository(_context);
            UserClaims     = new UserClaimRepository(_context);
            UserLogins     = new UserLoginRepository(_context);
            UserRoles      = new UserRoleRepository(_context);
            UserTokens     = new UserTokenRepository(_context);
        }
Exemple #2
0
        public ActionResult Eliminar(int id)
        {
            UsuarioRepository usuarioRepository = new UsuarioRepository(context);
            OpinionRepository opinionRepository = new OpinionRepository(context);

            var usuarioIdentirty = User.Identity.GetUserId();
            var usuarioId        = usuarioRepository.Query(u => u.IdentityId == usuarioIdentirty).Select(u => u.Id).SingleOrDefault();

            var opinion = opinionRepository.Query(o => o.Id == id && o.UsuarioId == usuarioId).SingleOrDefault();

            if (opinion != null)
            {
                opinionRepository.Delete(opinion);
                context.SaveChanges();

                return(Json(new
                {
                    Success = true,
                    Mensaje = "Se elimino su reseña"
                }, JsonRequestBehavior.AllowGet));
            }
            else
            {
                return(Json(new
                {
                    Success = false,
                    Mensaje = "No puede eliminar una reseña que no es suya"
                }, JsonRequestBehavior.AllowGet));
            }
        }
Exemple #3
0
        public ActionResult getResenias(int MediaId, string UserId)
        {
            OpinionRepository opiRepo  = new OpinionRepository(context);
            UsuarioRepository userRepo = new UsuarioRepository(context);

            int numResTotales = opiRepo.Query(x => x.MediaId == MediaId).Count();
            var usuario       = userRepo.GetAll().FirstOrDefault(u => u.IdentityId == UserId);

            var opinionesMedia = from o in opiRepo.GetAll()
                                 where o.MediaId == MediaId &&
                                 o.UsuarioId != usuario.Id
                                 select o;

            foreach (var opinion in opinionesMedia)
            {
                opinion.Usuario = userRepo.GetAll().FirstOrDefault(u => u.Id == opinion.UsuarioId);
            }

            return(Json(new
            {
                Success = true,
                TotalResenias = numResTotales,
                Opiniones = JsonConvert.SerializeObject(opinionesMedia)
            }, JsonRequestBehavior.AllowGet));
        }
Exemple #4
0
 public UnitOfWork()
 {
     Carts      = new CartRepository(_context);
     Users      = new UserRepository(_context);
     Products   = new ProductRepository(_context);
     Opinions   = new OpinionRepository(_context);
     MainPhotos = new PhotoRepository(_context);
     Categories = new CategoryRepository(_context);
 }
Exemple #5
0
 // Konstruktor kontrolera firm.
 public CompanyController()
 {
     _companyRepo  = new CompanyRepository();
     _categoryRepo = new CategoryRepository();
     _providerRepo = new ServiceProviderRepository();
     _customerRepo = new CustomerRepository();
     _commentRepo  = new CommentRepository();
     _opinionRepo  = new OpinionRepository();
 }
 public OpinionServices()
 {
     _opinionRepository         = new OpinionRepository();
     _argumentRepository        = new ArgumentRepository();
     _categoryOpinionRepository = new CategoryOpinionRepository();
     _categoryRepository        = new CategoryRepository();
     _voteOpinionRepository     = new OpinionVoteRepository();
     _userRepository            = new UserRepository();
 }
Exemple #7
0
 public RamblesController(ApplicationDbContext context,
                          OpinionRepository opinionRepository,
                          RambleRepository rambleRepository,
                          StepRepository stepRepository,
                          UserManager <User> userManager)
 {
     _context           = context;
     _opinionRepository = opinionRepository;
     _rambleRepository  = rambleRepository;
     _stepRepository    = stepRepository;
     _userManager       = userManager;
 }
Exemple #8
0
        public ActionResult Consultar(int id)
        {
            OpinionRepository opinionRepository = new OpinionRepository(context);
            var relaciones = new Expression <Func <Opinion, object> >[] { o => o.Usuario };
            var Opiniones  = opinionRepository.QueryIncluding(o => o.MediaId == id, relaciones, "").OrderByDescending(o => o.FechaRegistro);

            return(Json(new
            {
                Success = true,
                Opiniones = JsonConvert.SerializeObject(Opiniones)
            }, JsonRequestBehavior.AllowGet));
        }
Exemple #9
0
        /// <summary>
        /// Here we do all the business
        /// </summary>
        /// <param name="obj"></param>
        public void DeleteCfProfileAndRelatedData(Profile u)
        {
            //-- Delete any personality media
            var pMediaRepo       = new UserPersonalityMediaRepository();
            var mediaRepo        = new MediaRepository();
            var mediaOpinionRepo = new MediaOpinionRepository();
            var opinionRepo      = new OpinionRepository();
            var ciRepo           = new CheckInRepository();
            var pcRepo           = new PartnerCallRepository();
            var postRepo         = new PostRepository();
            var clmRepo          = new ClimbRepository();

            mediaOpinionRepo.Delete(mediaOpinionRepo.GetAll().Where(mo => mo.UserID == u.ID).Select(mo => mo.ID));
            opinionRepo.Delete(opinionRepo.GetAll().Where(o => o.UserID == u.ID).Select(o => o.ID));

            postRepo.Delete(postRepo.GetAll().Where(p => p.UserID == u.ID).Select(p => p.ID));
            //-- Delete personality media
            mediaRepo.Delete(pMediaRepo.GetAll().Where(pm => pm.UserID == u.ID).Select(pm => pm.MediaID));

            //-- Get other media, e.g. stuff uploaded for places & climbs
            //-- Remove all the personal tags
            mediaRepo.RemoveAllMediaTagForObject(u.ID);
            var otherMedia = mediaRepo.GetAll().Where(pm => pm.AddedByUserID == u.ID);

            foreach (var m in otherMedia)
            {
                m.AddedByUserID = Stgs.SystemID;
            }
            mediaRepo.Update(otherMedia);

            ciRepo.Delete(ciRepo.GetAll().Where(ci => ci.UserID == u.ID).Select(ci => ci.ID));
            pcRepo.Delete(pcRepo.GetAll().Where(pc => pc.UserID == u.ID).Select(pc => pc.ID));

            //-- geo problems , e.g. a user ads a area, location or climb or is listed as a setter

            var usersSetClimbs = clmRepo.GetAll().Where(c => c.SetterID == u.ID);

            foreach (var c in usersSetClimbs)
            {
                c.SetterID = null;
            }
            clmRepo.Update(usersSetClimbs);

            //-- If everything else has been removed this should work....
            profileRepo.Delete(u.ID);
        }
Exemple #10
0
        public ActionResult Registrar(OpinionViewModel model)
        {
            UsuarioRepository usuarioRepository = new UsuarioRepository(context);
            var usuarioIdentirty = User.Identity.GetUserId();
            var usuarioId        = usuarioRepository.Query(u => u.IdentityId == usuarioIdentirty).Select(u => u.Id).SingleOrDefault();

            model.UsuarioId     = usuarioId;
            model.FechaRegistro = DateTime.Now;

            if (ModelState.IsValid)
            {
                OpinionRepository opinionRepository = new OpinionRepository(context);

                var existeOpinion = opinionRepository.Query(o => o.UsuarioId == model.UsuarioId && o.MediaId == model.MediaId).Count() > 0;

                if (!existeOpinion)
                {
                    var opinion = MapHelper.Map <Opinion>(model);
                    opinionRepository.Insert(opinion);
                    context.SaveChanges();
                    return(Json(new
                    {
                        Success = true,
                        Mensaje = "Se registro su reseña"
                    }, JsonRequestBehavior.AllowGet));
                }
                else
                {
                    return(Json(new
                    {
                        Success = false,
                        Mensaje = "No puede registrar mas de una reseña por serie"
                    }, JsonRequestBehavior.AllowGet));
                }
            }
            else
            {
                return(Json(new
                {
                    Success = false
                }, JsonRequestBehavior.AllowGet));
            }
        }
Exemple #11
0
        public ActionResult getMiResenia(int MediaId, string UserId)
        {
            OpinionRepository opinionRepo = new OpinionRepository(context);
            UsuarioRepository userRepo    = new UsuarioRepository(context);

            int numResTotales = opinionRepo.Query(x => x.MediaId == MediaId).Count();
            var usuario       = userRepo.GetAll().FirstOrDefault(u => u.IdentityId == UserId);

            if (usuario == null)
            {
                return(Json(new
                {
                    Success = false,
                    TotalResenias = numResTotales
                }, JsonRequestBehavior.AllowGet));
            }

            //Obtener resenia de un usuario
            var miResenia = opinionRepo.GetAll().FirstOrDefault(o => o.MediaId == MediaId && o.UsuarioId == usuario.Id);


            if (miResenia == null)
            {
                return(Json(new
                {
                    Success = false,
                    TotalResenias = numResTotales
                }, JsonRequestBehavior.AllowGet));
            }
            miResenia.Usuario = usuario;
            return(Json(new
            {
                Success = true,
                TotalResenias = numResTotales,
                Opinion = JsonConvert.SerializeObject(miResenia)
            }, JsonRequestBehavior.AllowGet));
        }
Exemple #12
0
        public ActionResult EliminarOpinion(int MediaId, string UserId)
        {
            OpinionRepository opiRepo  = new OpinionRepository(context);
            UsuarioRepository userRepo = new UsuarioRepository(context);

            var usuario = userRepo.Query(u => u.IdentityId == UserId).FirstOrDefault();

            if (usuario == null)
            {
                return(Json(new
                {
                    Success = false
                }, JsonRequestBehavior.AllowGet));
            }

            var opinion = opiRepo.Query(o => o.MediaId == MediaId && o.UsuarioId == usuario.Id).FirstOrDefault();

            opiRepo.Delete(opinion);
            context.SaveChanges();
            return(Json(new
            {
                Success = true
            }, JsonRequestBehavior.AllowGet));
        }
Exemple #13
0
        public ActionResult Details(int id)
        {
            MovieRepository   repository        = new MovieRepository(context);
            OpinionRepository reseniaRepository = new OpinionRepository(context);
            UsuarioRepository userRepo          = new UsuarioRepository(context);

            var movie     = repository.Query(t => t.id == id).First();
            var opiniones = reseniaRepository.GetAll();
            var resenias  = from o in opiniones
                            where o.Media.id == movie.id
                            select o;

            var model = MapHelper.Map <MovieViewModel>(movie);
            int count = 0;

            foreach (var item in resenias)
            {
                item.Usuario = userRepo.GetAll().FirstOrDefault(u => u.Id == item.UsuarioId);
                count++;
            }

            ViewBag.CountResenias = count;
            return(View(model));
        }
Exemple #14
0
        public ActionResult AddResenia(OpinionViewModel model)
        {
            UsuarioRepository userRepo    = new UsuarioRepository(context);
            MediaRepository   mediaRepo   = new MediaRepository(context);
            OpinionRepository opinionRepo = new OpinionRepository(context);

            model.FechaRegistro = DateTime.Now;
            model.Usuario       = (from u in userRepo.GetAll()
                                   where u.IdentityId == model.IdentityId
                                   select u).FirstOrDefault();
            model.Media = (from m in mediaRepo.GetAll()
                           where m.id == model.MediaId
                           select m).FirstOrDefault();
            model.UsuarioId = (from u in userRepo.GetAll()
                               where u.IdentityId == model.IdentityId
                               select u.Id).FirstOrDefault();

            #region Validaciones
            //Una Reseña por Usuario
            var userExist = opinionRepo.GetAll().FirstOrDefault(u => u.UsuarioId == model.UsuarioId && u.MediaId == model.MediaId);

            if (userExist != null)
            {
                return(Json(new
                {
                    Success = false,
                    TypeError = 1
                }, JsonRequestBehavior.AllowGet));
            }

            //Descripcion requerida
            if (model.Descripcion == null)
            {
                return(Json(new
                {
                    Success = false,
                    TypeError = 2
                }, JsonRequestBehavior.AllowGet));
            }

            // Descripción mayor de 200
            if (model.Descripcion.Length > 200)
            {
                return(Json(new
                {
                    Success = false,
                    TypeError = 3
                }, JsonRequestBehavior.AllowGet));
            }

            //Puntuacion Requerida - Si no califica se vuelve 0
            if (model.Puntuacion == null)
            {
                model.Puntuacion = 0;
            }
            #endregion

            var opinion = MapHelper.Map <Opinion>(model);
            opinionRepo.Insert(opinion);

            context.SaveChanges();

            return(Json(new
            {
                Success = true
            }, JsonRequestBehavior.AllowGet));
        }
 // Konstruktor kontrolera firm.
 public VisualizationController()
 {
     _opinionRepo = new OpinionRepository();
 }