public IActionResult Index(bool?r)
        {
            InfoVM model = new InfoVM();

            if (r == null)
            {
                r = true;
            }

            int Id = Autentification.GetLoggedUser(HttpContext).Id;

            model.ActiveTickets      = ticketRepository.GetTickets(Id).Where(x => x.Active).Count();
            model.DayActiveTickets   = ticketRepository.GetTickets(Id).Where(x => x.Active && x.Date.Day == DateTime.Now.Day).Count();
            model.AverageRating      = reviewRepository.AverageRating(Id);
            model.LatestReviews      = reviewRepository.GetReviews(Id).Take(4);
            model.LatestTickets      = ticketRepository.GetTickets(Id).Take(10);
            model.MonthAverageRating = reviewRepository.MonthAverageRating(Id);
            model.MonthTicketsSold   = ticketRepository.GetMonthSum(Id);
            model.MonthTotal         = ticketRepository.GetMonthTotal(Id);
            model.result             = Convert.ToBoolean(r);
            model.TicketsSold        = ticketRepository.GetSum(Id);
            model.Total = ticketRepository.GetTotal(Id);

            return(View("Index", model));
        }
예제 #2
0
        public IActionResult Buy(int id)
        {
            UserAccounts u = Autentification.GetLoggedUser(HttpContext);

            if (u == null)
            {
                return(RedirectToAction("Index", "Autentification"));
            }

            else
            {
                Tickets ticket = new Tickets();
                ticket.TicketTypeId = id;

                TicketTypes type = tickettypeRepository.GetType(id);

                ticket.Date     = DateTime.Now;
                ticket.Quantity = 1;
                ticket.Seen     = false;
                ticket.Active   = false;
                ticket.Code     = "";
                ticket.ClientId = clientRepository.GetClientByUserId(u.Id).Id;
                ticket.Quantity = 1;
                ticket.Total    = type.Price;

                ViewData["type"]  = type.Type;
                ViewData["total"] = ticket.Total * 100;


                return(View("Buy", ticket));
            }
        }
        public IActionResult UserInfo()
        {
            UserAccounts   model = Autentification.GetLoggedUser(HttpContext);
            Administrators a     = adminRepository.GetAdministrator(model.Id);

            return(PartialView("UserInfo", a));
        }
예제 #4
0
 public AdaFruitIO(Autentification auth)
 {
     Client = new HttpClient();
     Auth   = auth;
     Client.DefaultRequestHeaders.Add("X-AIO-Key", Auth.ADAFRUIT_IO_KEY);
     Client.BaseAddress = new Uri(" https://io.adafruit.com");
 }
        public IActionResult GetInfo()
        {
            UserAccounts model = Autentification.GetLoggedUser(HttpContext);
            Museums      m     = museumRepository.GetMuseumByAccId(model.Id);

            return(PartialView("GetInfo", m));
        }
예제 #6
0
        public IActionResult Index()
        {
            int            Id    = Autentification.GetLoggedUser(HttpContext).Id;
            List <Reviews> model = reviewRepository.GetReviews(Id);

            return(View("Index", model));
        }
        public IActionResult GetMuseum(int?id)
        {
            int     userId = Autentification.GetLoggedUser(HttpContext).Id;
            Museums m      = museumRepository.GetMuseumByAccId(userId);

            id = m.Id;
            MuseumVM model = new MuseumVM()
            {
                Id               = m.Id,
                Name             = m.Name,
                UserId           = m.UserId,
                Username         = m.User.Username,
                PasswordHash     = m.User.PasswordHash,
                PasswordSalt     = m.User.PasswordSalt,
                RegistrationDate = m.User.RegistrationDate.ToString("dd/MM/yyyy"),
                MuseumType       = m.MuseumType.Name,
                MuseumTypeId     = m.MuseumTypeId,
                Year             = m.OpeningYear,
                QrScanning       = m.QrScanning,
                TicketSelling    = m.OnlineTickets,
                Description      = m.Description,
                Email            = m.Email,
                Phone            = m.Phone,
                Address          = m.Address,
                Latitude         = m.Latitude,
                Longitude        = m.Longitude,
                Images           = imageRepository.GetMuseumImages(m.Id),
                WorkingHour      = workingHoursRepository.GetWorkingHours(m.Id)
            };

            model.MuseumTypes = new SelectList(museumTypeRepository.GetMuseumTypes(), "Id", "Name");

            return(View("Edit", model));
        }
        public IActionResult Index()
        {
            int     id = Autentification.GetLoggedUser(HttpContext).Id;
            Museums m  = museumRepository.GetMuseumByAccId(id);

            List <Artworks> model = artworkRepository.GetArtworksByMuseum(m.Id);

            List <ArtworkInfoVM> list = new List <ArtworkInfoVM>();

            foreach (Artworks x in model)
            {
                ArtworkInfoVM vm = new ArtworkInfoVM();
                vm.Id       = x.Id;
                vm.Artist   = x.Artist.Name;
                vm.ArtistId = x.ArtistId;
                vm.Likes    = likesRepository.GetLikes(x.Id);
                vm.Name     = x.Name;
                vm.Image    = imageRepository.GetArtworkImage(x.Id);

                if (vm.Image != null)
                {
                    vm.ImageId = vm.Image.Id;
                }

                list.Add(vm);
            }

            ViewData["collections"] = collectionRepository.GetCollections(m.Id);

            return(View("Index", list));
        }
예제 #9
0
        public IActionResult Filter(string startDate, string endDate)
        {
            int            Id    = Autentification.GetLoggedUser(HttpContext).Id;
            List <Tickets> model = ticketRepository.Filter(Id, Convert.ToDateTime(startDate), Convert.ToDateTime(endDate));

            return(View("Index", model));
        }
        public IActionResult NewMessages()
        {
            int id = Autentification.GetLoggedUser(HttpContext).Id;

            int newMessages = messageRepository.GetNewMessages(id);

            return(PartialView("NewMessages", newMessages.ToString()));
        }
        public PartialViewResult PartialIndex()
        {
            int userId = Autentification.GetLoggedUser(HttpContext).Id;
            IEnumerable <Messages> model = messageRepository.GetMessagesByUser(userId);

            ViewData["User"] = userId;

            return(PartialView("PartialIndex", model));
        }
        public IActionResult Profile()
        {
            UserAccounts   model = Autentification.GetLoggedUser(HttpContext);
            Administrators a     = adminRepository.GetAdministrator(model.Id);

            ViewData["Email"] = a.Email;

            return(View("Index", a));
        }
예제 #13
0
        public IActionResult Add()
        {
            TicketTypes model = new TicketTypes();

            int id = Autentification.GetLoggedUser(HttpContext).Id;

            model.MuseumId = museumRepository.GetMuseumByAccId(id).Id;

            return(View("Add", model));
        }
예제 #14
0
        public IActionResult Index()
        {
            int            Id    = Autentification.GetLoggedUser(HttpContext).Id;
            List <Tickets> model = ticketRepository.GetTickets(Id);

            ViewData["StartDate"] = DateTime.Now;
            ViewData["EndDate"]   = DateTime.Now;

            return(View("Index", model));
        }
        public PartialViewResult Add()
        {
            int userId = Autentification.GetLoggedUser(HttpContext).Id;

            IEnumerable <UserAccounts> users = userRepository.GetUsers(userId);

            ViewBag.ReceiverId = new SelectList(users, "Id", "Username");

            return(PartialView("Add"));
        }
        public IActionResult Details(int id)
        {
            Artists a = artistRepository.GetArtistById(id);

            ArtistVM model = new ArtistVM();

            model.Artworks = new List <ArtworkVM>();
            model.Styles   = new List <string>();
            List <Artworks> artworks = artworkRepository.GetArtworksByArtist(a.Id);

            foreach (Artworks art in artworks)
            {
                ArtworkVM vm = new ArtworkVM();
                vm.Id     = art.Id;
                vm.Name   = art.Name;
                vm.Artist = a.Name;
                vm.Image  = imageRepository.GetArtworkImage(art.Id);
                vm.Museum = art.Museum.Name;
                if (vm.Image != null)
                {
                    vm.ImageId = vm.Image.Id;
                }
                vm.Likes = likesRepository.GetLikes(a.Id);
                if (Autentification.GetLoggedUser(HttpContext) != null)
                {
                    Clients c = clientRepository.GetClientByUserId(Autentification.GetLoggedUser(HttpContext).Id);
                    vm.Liked = likesRepository.IsLiked(c.Id, a.Id);
                }
                else
                {
                    vm.Liked = false;
                }
                model.Artworks.Add(vm);
            }
            model.Biography = a.Biography;
            model.Born      = a.Born;
            model.Country   = a.Country.Name;
            model.Died      = a.Died;
            model.Id        = a.Id;
            model.Image     = imageRepository.GetArtistImage(a.Id);
            if (model.Image != null)
            {
                model.ImageId = model.Image.Id;
            }
            model.Images = imageRepository.GetArtistImages(a.Id);
            model.Name   = a.Name;
            IEnumerable <ArtistMovements> movements = stylesRepository.GetArtistMovementsByArtist(a.Id);

            foreach (ArtistMovements am in movements)
            {
                string style = am.Style.Name;
                model.Styles.Add(style);
            }
            return(View("Details", model));
        }
예제 #17
0
        public IActionResult Add()
        {
            int     id = Autentification.GetLoggedUser(HttpContext).Id;
            Museums m  = museumRepository.GetMuseumByAccId(id);

            News model = new News();

            model.MuseumId = m.Id;

            return(View("Add", model));
        }
예제 #18
0
        public IActionResult Index()
        {
            int     Id = Autentification.GetLoggedUser(HttpContext).Id;
            Museums m  = museumRepository.GetMuseumByAccId(Id);

            IEnumerable <TicketTypes> model = tickettypeRepository.GetTicketTypes(m.Id);

            ViewData["Allow"] = m.OnlineTickets;


            return(View("Index", model));
        }
        public IActionResult Add(int id)
        {
            int     userId = Autentification.GetLoggedUser(HttpContext).Id;
            Museums m      = museumRepository.GetMuseumByAccId(userId);

            Collections model = new Collections();

            model.MuseumId = m.Id;
            model.ImageId  = id;

            return(View("Add", model));
        }
예제 #20
0
 public ArduinoCom(Autentification auth)
 {
     Ada        = new AdaFruitIO(auth);
     SerialPort = new SerialPort("COM1", 9600);
     //SerialPort.BaudRate = 9600;
     //SerialPort.PortName = "COM1";
     SerialPort.DtrEnable = true;
     SerialPort.RtsEnable = true;
     //SerialPort.DataReceived += new SerialDataReceivedEventHandler(SerialPort_DataReceived);
     SerialPort.Open();
     Console.WriteLine("Arduino Com Init");
     DataSet = new Dictionary <string, FeedData>();
 }
        public IActionResult Add()
        {
            int     id = Autentification.GetLoggedUser(HttpContext).Id;
            Museums m  = museumRepository.GetMuseumByAccId(id);

            Events model = new Events();

            model.MuseumId = m.Id;

            model.StartDate = DateTime.Now;
            model.EndTime   = DateTime.Now;

            return(View("Add", model));
        }
        public IActionResult Unlike(int id)
        {
            if (Autentification.GetLoggedUser(HttpContext) != null)
            {
                Clients c = clientRepository.GetClientByUserId(Autentification.GetLoggedUser(HttpContext).Id);
                likesRepository.DeleteLike(c.Id, id);
                likesRepository.Save();

                return(RedirectToAction("Index", "Artwork"));
            }

            else
            {
                return(RedirectToAction("Index", "Autentification"));
            }
        }
        public IActionResult Add()
        {
            int     id = Autentification.GetLoggedUser(HttpContext).Id;
            Museums m  = museumRepository.GetMuseumByAccId(id);

            ArtworkVM model = new ArtworkVM();

            model.Artist      = new SelectList(artistRepository.GetArtists(), "Id", "Name");
            model.ArtworkType = new SelectList(artworkTypeRepository.GetArtworkTypes(), "Id", "Name");
            model.Country     = new SelectList(countryRepository.GetCountries(), "Id", "Name");
            model.Material    = new SelectList(materialRepository.GetMaterials(), "Id", "Name");
            model.Style       = new SelectList(styleRepository.GetStyles(), "Id", "Name");

            model.MuseumId = m.Id;

            return(View("Add", model));
        }
        public IActionResult Save(Messages m)
        {
            if (ModelState.IsValid)
            {
                Messages message = new Messages();
                message.Date       = DateTime.Now;
                message.SenderId   = Autentification.GetLoggedUser(HttpContext).Id;
                message.Seen       = false;
                message.ReceiverId = m.ReceiverId;
                message.Text       = m.Text;

                messageRepository.InsertMessage(message);
                messageRepository.Save();
            }

            return(RedirectToAction("Index", "Home"));
        }
        public IActionResult Index()
        {
            int     id = Autentification.GetLoggedUser(HttpContext).Id;
            Museums m  = museumRepository.GetMuseumByAccId(id);

            List <Collections> model = collectionRepository.GetCollections(m.Id);

            foreach (Collections x in model)
            {
                if (x.Description.Length > 200)
                {
                    x.Description = x.Description.Substring(0, 200);
                }
            }

            return(View("Index", model));
        }
        public IActionResult Like(int id)
        {
            if (Autentification.GetLoggedUser(HttpContext) != null)
            {
                Clients c    = clientRepository.GetClientByUserId(Autentification.GetLoggedUser(HttpContext).Id);
                Likes   like = new Likes();
                like.ArtworkId = id;
                like.ClientId  = c.Id;

                likesRepository.InsertLike(like);
                likesRepository.Save();
                return(RedirectToAction("Index", "Artwork"));
            }
            else
            {
                return(RedirectToAction("Index", "Autentification"));
            }
        }
        public PartialViewResult Details(int id)
        {
            int userId = Autentification.GetLoggedUser(HttpContext).Id;
            IEnumerable <Messages> message = messageRepository.GetMessagesById(id, userId);

            MessageVM model = new MessageVM();

            model.Messages = new List <Messages>();
            foreach (Messages m in message)
            {
                if (m.ReceiverId == userId)
                {
                    m.Seen = true;
                    messageRepository.UpdateMessage(m);
                }

                model.Messages.Add(m);
            }

            messageRepository.Save();

            model.Reply = new Messages();
            Messages mess       = message.Take(1).SingleOrDefault();
            int      senderId   = Convert.ToInt32(mess.SenderId);
            int      receiverId = Convert.ToInt32(mess.ReceiverId);

            if (receiverId == userId)
            {
                model.ReceiverId = userId;
                model.SenderId   = id;
            }
            else
            {
                model.ReceiverId = id;
                model.SenderId   = userId;
            }

            ViewData["userId"] = userId;
            return(PartialView("Details", model));
        }
        public JsonResult GetEvents(DateTime start, DateTime end)
        {
            int     id = Autentification.GetLoggedUser(HttpContext).Id;
            Museums m  = museumRepository.GetMuseumByAccId(id);

            List <Events> list = eventRepository.GetEvents(m.Id);

            list = list.Where(x => x.StartDate >= start && x.EndTime <= end).ToList();
            var eventList = from e in list
                            select new
            {
                id      = e.Id,
                title   = e.Title,
                start   = e.StartDate,
                end     = e.EndTime,
                color   = "Teal",
                someKey = e.Id + 1,
                allDay  = false
            };
            var rows = eventList.ToArray();

            return(Json(rows));
        }
예제 #29
0
        public IActionResult Index()
        {
            int     id = Autentification.GetLoggedUser(HttpContext).Id;
            Museums m  = museumRepository.GetMuseumByAccId(id);

            List <News>   news  = newsRepository.GetNews(m.Id);
            List <NewsVM> model = new List <NewsVM>();

            foreach (News x in news)
            {
                NewsVM vm = new NewsVM();

                vm.Id       = x.Id;
                vm.Date     = x.Date;
                vm.MuseumId = x.MuseumId;
                vm.Subtitle = x.SubTitle;

                if (x.Text.Length > 200)
                {
                    vm.Text = x.Text.Substring(0, 200);
                }
                else
                {
                    vm.Text = x.Text;
                }
                vm.Title  = x.Title;
                vm.Images = imageRepository.GetNewsImage(x.Id);
                if (vm.Images != null)
                {
                    vm.ImageId = vm.Images.Id;
                }
                vm.Img = null;

                model.Add(vm);
            }
            return(View("Index", model));
        }
예제 #30
0
        public IActionResult Review(Reviews review)
        {
            if (Autentification.GetLoggedUser(HttpContext) != null)
            {
                Reviews r = new Reviews();
                r.MuseumId = review.MuseumId;
                //r.Rating = Int32.Parse(rate);
                r.Rating = review.Rating;
                r.Note   = review.Note;
                //r.Note = komentar;
                r.Date = DateTime.Now;
                UserAccounts u = Autentification.GetLoggedUser(HttpContext);
                r.ClientId = clientRepository.GetClientByUserId(u.Id).Id;

                reviewRepository.AddReview(r);
                reviewRepository.Save();
                return(RedirectToAction("Details", r.MuseumId));
            }

            else
            {
                return(RedirectToAction("Index", "Autentification"));
            }
        }