Exemplo n.º 1
0
        public ActionResult JoinGroup(int id)
        {
            using (var db = new DatabaseContext())
            {
                ViewModels  viewModel   = new ViewModels();
                Czlonkowie  tempCzlonek = new Czlonkowie();
                Uzytkownik  currentUser = User.GetUserData();
                Uzytkownik  tempUser    = db.Uzytkownik.FirstOrDefault(p => p.Id == currentUser.Id);
                KoloNaukowe tempKolo    = db.KoloNaukowe.FirstOrDefault(p => p.Id == id);

                tempCzlonek.IdKola        = tempKolo.Id;
                tempCzlonek.IdUzytkownika = tempUser.Id;
                tempCzlonek.Uzytkownik    = tempUser;
                tempCzlonek.KoloNaukowe   = tempKolo;
                tempCzlonek.Rola          = 0;
                tempCzlonek.Aktywny       = false;

                if (db.Czlonkowie.Any(p => p.IdUzytkownika == tempUser.Id && p.IdKola == tempKolo.Id))
                {
                    viewModel.Group = tempCzlonek.KoloNaukowe;
                    return(View("JoinGroupError", viewModel));
                }

                db.Czlonkowie.Add(tempCzlonek);
                db.SaveChanges();

                viewModel.Group  = tempCzlonek.KoloNaukowe;
                viewModel.Member = tempCzlonek;
                return(View(viewModel));
            }
        }
Exemplo n.º 2
0
 private void SetCurrentMember(int groupId)
 {
     using (var db = new DatabaseContext())
     {
         Czlonkowie temp = new Czlonkowie();
         temp       = db.Czlonkowie.FirstOrDefault(p => p.IdUzytkownika == userData.Id && p.IdKola == groupId);
         memberData = temp;
     }
 }
Exemplo n.º 3
0
        public ActionResult ShowPosts(int id, int page = 1)
        {
            using (var db = new DatabaseContext())
            {
                ViewModels           viewModel  = new ViewModels();
                PostListViewModel    postList   = new PostListViewModel();
                KoloNaukowe          group      = new KoloNaukowe();
                List <PostViewModel> postModels = new List <PostViewModel>();
                List <string>        authors    = new List <string>();
                postList.Posts = db.Post.Where(p => p.IdKola == id).ToList();
                group          = db.KoloNaukowe.FirstOrDefault(p => p.Id == id);
                if (postList.Posts == null)
                {
                    return(View("Error", new string[] { "Brak postów" }));
                }

                viewModel.PostList = postList;
                int totalItems = db.Post.Where(p => p.IdKola == id).Count();
                viewModel.PostList.Pages       = (int)Math.Ceiling((decimal)totalItems / PageSize);
                viewModel.PostList.CurrentPage = page;

                foreach (Post post in viewModel.PostList.Posts)
                {
                    Czlonkowie member = db.Czlonkowie.Include("Uzytkownik").FirstOrDefault(p => p.Id == post.IdCzlonka);
                    string     author;
                    if (member == null)
                    {
                        author = "";
                    }
                    author = member.Uzytkownik.Imie + " " + member.Uzytkownik.Nazwisko;
                    authors.Add(author);
                }
                viewModel.PostList.AuthorsNames = authors;
                viewModel.PostList.Group        = group;
                viewModel.Group = group;
                foreach (Post post in viewModel.PostList.Posts)
                {
                    PostViewModel postView = new PostViewModel();
                    postView.Post = post;
                    List <Komentarz> comList = new List <Komentarz>();
                    comList           = db.Komentarz.Where(p => p.IdPostu == post.Id).ToList();
                    postView.Comments = comList;
                    Czlonkowie author = db.Czlonkowie.Include("Uzytkownik").FirstOrDefault(p => p.Id == postView.Post.IdCzlonka);
                    postView.AuthorName = author.Uzytkownik.Imie + " " + author.Uzytkownik.Nazwisko;
                    if (postView.Post == null || author == null)
                    {
                        return(View("Error"));
                    }
                    postView = SetCommentsAuthors(postView);
                    postModels.Add(postView);
                }
                viewModel.PostList.PostsModels = postModels;
                return(View(viewModel));
            }
        }
Exemplo n.º 4
0
 public ActionResult AddPost()
 {
     using (var db = new DatabaseContext())
     {
         ViewModels       viewModel = new ViewModels();
         AddPostViewModel addPost   = new AddPostViewModel();
         int        userId          = (User as ProjektIO.Auth.Principal).GetUserData().Id;
         Czlonkowie member          = db.Czlonkowie.FirstOrDefault(p => p.IdUzytkownika == userId);
         addPost.Member    = member;
         viewModel.AddPost = addPost;
         return(View(viewModel));
     }
 }
Exemplo n.º 5
0
 private PostViewModel SetCommentsAuthors(PostViewModel postModel)
 {
     using (var db = new DatabaseContext())
     {
         List <string> authors = new List <string>();
         foreach (Komentarz comment in postModel.Comments)
         {
             string     temp;
             Czlonkowie author = db.Czlonkowie.Include("Uzytkownik").FirstOrDefault(p => p.Id == comment.IdCzlonka);
             temp = author.Uzytkownik.Imie + " " + author.Uzytkownik.Nazwisko;
             authors.Add(temp);
         }
         postModel.CommentsAuthors = authors;
         return(postModel);
     }
 }
Exemplo n.º 6
0
        public ActionResult ContactAdmin(int id)
        {
            using (var db = new DatabaseContext())
            {
                ViewModels viewModel = new ViewModels();
                Czlonkowie member    = new Czlonkowie();
                member = db.Czlonkowie.Include("Uzytkownik").FirstOrDefault(p => p.Rola == 1 && p.IdKola == id);
                if (member == null)
                {
                    return(View("Error", new string[] { "Ta grupa nie ma przewodniczącego" }));
                }

                viewModel.Group  = member.KoloNaukowe;
                viewModel.Member = member;
                return(View(viewModel));
            }
        }
Exemplo n.º 7
0
 private bool CheckCommentAuthor(int commentId)
 {
     using (var db = new DatabaseContext())
     {
         Komentarz comment = new Komentarz();
         comment = db.Komentarz.FirstOrDefault(p => p.Id == commentId);
         Czlonkowie temp = new Czlonkowie();
         temp = db.Czlonkowie.FirstOrDefault(p => p.Id == comment.IdCzlonka);
         if (temp.IdUzytkownika == userData.Id)
         {
             return(true);
         }
         else
         {
             return(false);
         }
     }
 }
Exemplo n.º 8
0
 private bool CheckPostAuthor(int postId)
 {
     using (var db = new DatabaseContext())
     {
         Post post = new Post();
         post = db.Post.FirstOrDefault(p => p.Id == postId);
         Czlonkowie temp = new Czlonkowie();
         temp = db.Czlonkowie.FirstOrDefault(p => p.Id == post.IdCzlonka);
         if (temp.IdUzytkownika == userData.Id)
         {
             return(true);
         }
         else
         {
             return(false);
         }
     }
 }
Exemplo n.º 9
0
 public ActionResult AddComment(ViewModels viewModel)
 {
     using (var db = new DatabaseContext())
     {
         int        id     = (User as ProjektIO.Auth.Principal).GetUserData().Id;
         Czlonkowie member = db.Czlonkowie.FirstOrDefault(p => p.IdUzytkownika == id);
         Post       post   = db.Post.FirstOrDefault(p => p.Id == viewModel.AddComment.PostId);
         if (member == null || post == null)
         {
             return(View("Error"));
         }
         viewModel.AddComment.Comment.IdPostu    = post.Id;
         viewModel.AddComment.Comment.Post       = post;
         viewModel.AddComment.Comment.IdCzlonka  = member.Id;
         viewModel.AddComment.Comment.Czlonkowie = member;
         db.Komentarz.Add(viewModel.AddComment.Comment);
         db.SaveChanges();
         return(View());
     }
 }
Exemplo n.º 10
0
 private GroupListViewModel SetDetails(GroupListViewModel model)
 {
     using (var db = new DatabaseContext())
     {
         foreach (KoloNaukowe group in model.Groups)
         {
             GroupViewModel temp   = new GroupViewModel();
             Czlonkowie     leader = new Czlonkowie();
             leader = db.Czlonkowie.Include("Uzytkownik").FirstOrDefault(p => p.IdKola == group.Id && p.Rola == 1);
             if (leader != null)
             {
                 temp.LeaderName  = leader.Uzytkownik.Imie + " " + leader.Uzytkownik.Nazwisko ?? "Brak";
                 temp.Mail        = leader.Uzytkownik.Email ?? "Brak";
                 temp.Group       = group;
                 temp.PhoneNumber = leader.Uzytkownik.NumerTelefonu ?? "Brak";
             }
             model.viewGroup.Add(temp);
         }
         return(model);
     }
 }
Exemplo n.º 11
0
        public ActionResult ShowPost(int id, int page = 1)
        {
            int PageSize = 5;

            using (var db = new DatabaseContext())
            {
                PostViewModel post      = new PostViewModel();
                ViewModels    viewModel = new ViewModels();
                post.Post     = db.Post.FirstOrDefault(p => p.Id == id);
                post.Comments = db.Komentarz.Where(p => p.IdPostu == id).ToList();
                Czlonkowie author = db.Czlonkowie.Include("Uzytkownik").FirstOrDefault(p => p.Id == post.Post.IdCzlonka);
                post.AuthorName = author.Uzytkownik.Imie + " " + author.Uzytkownik.Nazwisko;
                if (post.Post == null || author == null)
                {
                    return(View("Error"));
                }
                int totalItems = db.Komentarz.Where(p => p.IdPostu == id).ToList().Count();
                post.Pages          = (int)Math.Ceiling((decimal)totalItems / PageSize);
                post.CurrentPage    = page;
                post                = SetCommentsAuthors(post);
                viewModel.PostModel = post;
                return(View(viewModel));
            }
        }