예제 #1
0
        public void addProfileToUser(String user_id, String profilePath)
        {
            var newProfile = new Profile
            {
                age       = this.age,
                firstname = this.firstname,
                lastname  = this.lastname,
                Id        = user_id,
                gender    = this.gender.ToString(),
                privacy   = this.privacy ? 1 : 0
            };
            var databaseEntities = new FacebookDatabaseEntities();

            databaseEntities.Profiles.Add(newProfile);
            var album = databaseEntities.Albums.Add(new Album {
                user_id = user_id, name = "ProfileAlbum", date = DateTime.Now
            });
            var picture = databaseEntities.Pictures.Add(new Picture {
                album_id = album.album_id, path = profilePath, date = DateTime.Now, description = "ProfilePicture"
            });
            var post = databaseEntities.Posts.Add(new Post {
                picture_id = picture.picture_id, sender_id = user_id, date = DateTime.Now, content = "I changed my profile picture"
            });

            databaseEntities.SaveChanges();
        }
예제 #2
0
        public void saveToDatabase(string administrator, HttpServerUtilityBase server, FacebookDatabaseEntities toDataBase)
        {
            Album newAlbum = new Album();

            newAlbum.date    = DateTime.Now;
            newAlbum.name    = name;
            newAlbum.user_id = administrator;
            toDataBase.Albums.Add(newAlbum);
            toDataBase.SaveChanges();
        }
예제 #3
0
        public void addCommentFrom(AspNetUser user, FacebookDatabaseEntities toDataBase, string actualUserID)
        {
            var actualPost = toDataBase.Posts.Where(x => x.post_id == post_id).FirstOrDefault();
            var status     = CommentStatus.pending;

            if (actualPost.sender_id == actualUserID)
            {
                status = CommentStatus.accepted;
            }
            user.Comments.Add(new Comment {
                post_id = post_id, user_id = user.Id, date = DateTime.Now, content = inputComment, Status = (int)status
            });
            toDataBase.SaveChanges();
        }
예제 #4
0
        public int saveToDatabase(string administrator, HttpServerUtilityBase server)
        {
            var databaseEntities = new FacebookDatabaseEntities();
            var relativePath     = FilesHandler.saveImage(picture, server);

            var group = databaseEntities.Groups.Add(new Group {
                name = name, administrator = administrator, picture_path = relativePath
            });
            var user = databaseEntities.AspNetUsers.Find(administrator);

            group.AspNetUsers.Add(user);

            databaseEntities.SaveChanges();
            return(group.group_id);
        }
예제 #5
0
        static public void addPostFrom(string user_id, FacebookDatabaseEntities toDataBase, String picturePath, string content, int albumID, Nullable <int> group_id = null, bool isProfilePicture = false)
        {
            Album album = null;

            if (isProfilePicture)
            {
                album = toDataBase.Albums.Where(x => x.name.Equals("ProfileAlbum") && x.user_id == user_id).FirstOrDefault();
            }
            else
            {
                if (albumID != -1) //if we have an album to add the post to
                {
                    album = toDataBase.Albums.Where(x => x.album_id == albumID).FirstOrDefault();
                }
                if (album == null) //if we have not specified the id put it to posted pictures
                {
                    album = toDataBase.Albums.Where(x => x.name.Equals("PostedPicturesAlbum") && x.user_id == user_id).FirstOrDefault();
                }
                if (album == null) //if we have not specified the album and we also do not have the posted picture album created
                {
                    album = toDataBase.Albums.Add(new Album {
                        user_id = user_id, name = "PostedPicturesAlbum", date = DateTime.Now
                    });
                }
            }
            var     aspNetUser     = toDataBase.AspNetUsers.Find(user_id);
            Picture profilePicture = new Picture();

            profilePicture.album_id    = album.album_id;
            profilePicture.path        = picturePath;
            profilePicture.date        = DateTime.Now;
            profilePicture.description = "ProfilePicture";

            toDataBase.Pictures.Add(profilePicture);

            Post newPost = new Post();

            newPost.group_id   = group_id;
            newPost.content    = content;
            newPost.AspNetUser = aspNetUser;
            newPost.Picture    = profilePicture;
            newPost.date       = DateTime.Now;
            toDataBase.Posts.Add(newPost);
            toDataBase.SaveChanges();
        }