Пример #1
0
        public IActionResult OnPostSubmit()
        {
            if (ModelState.IsValid)
            {
                Session = HttpContext.Session;
                Session.SetString("IsEditMode", "FALSE");
                string commentString = Request.Form["commentText"];

                int commentid = 0;
                try {
                    commentid = Convert.ToInt32(Request.Form["comment-id-texta"]);
                } catch (InvalidCastException e)
                {
                    Console.WriteLine("Incorrect type of id" + e.Message);
                    return(Page());
                }

                QuerySongsAndComments();

                if (IsValidCommentID(commentid))
                {
                    MusicDataBase.ChangeComment(commentString, commentid);
                    return(Redirect($"./ViewPlaylist?userId={Session.GetInt32("PlaylistUserID")}&playlist={Session.GetString("PlaylistName")}"));
                }

                return(Page());
            }
            return(RedirectToPage("./Error"));
        }
Пример #2
0
        public IActionResult OnPostLogin()
        {
            if (ModelState.IsValid)
            {
                Session = HttpContext.Session;

                if (MusicDataBase.UserExists(Email))
                {
                    if (!MusicDataBase.PasswordsMatch(Email, Password))
                    {
                        return(Page());
                    }
                }

                Session.SetInt32("UserID", MusicDataBase.GetUserIDForEmail(Email));
                if (MusicDataBase.UserIsArtist(Session.GetInt32("UserID")))
                {
                    Session.SetString("IsArtist", "TRUE");
                }
                Session.SetString("SessionUser", MusicDataBase.GetUsernameForEmail(Email));
                Session.SetString("IsLoggedIn", "TRUE");
                return(RedirectToPage("./Index"));
            }

            return(RedirectToPage("./Error"));
        }
Пример #3
0
        public void OnGet(int userId, string playlist, int playlistid)
        {
            Session = HttpContext.Session;

            UserID = userId;
            Session.SetInt32("PlaylistUserID", UserID);
            PlaylistName = playlist;
            Session.SetString("PlaylistName", PlaylistName);
            PageUserID = userId;
            Session.SetInt32("PlaylistID", playlistid);

            ArtistName = Session.GetString("PageUserName");
            if (ArtistName == null)
            {
                ArtistName = Session.GetString("ArtistName");
            }

            QuerySongsAndComments();

            string[] playlists = MusicDataBase.GetPlaylistNamesForUserID(UserID);
            if (playlists != null && !playlists.Contains(playlist))
            {
                Response.Redirect("./Error");
            }
        }
Пример #4
0
 private void GetData()
 {
     Session         = HttpContext.Session;
     Albums          = MusicDataBase.GetSearchResultsAlbum(Session.GetString("SearchString"));
     Users           = MusicDataBase.GetSearchResultsUsers(Session.GetString("SearchString"));
     Songs           = MusicDataBase.GetSearchResultsSong(Session.GetString("SearchString"));
     searchPlaylists = MusicDataBase.GetSearchResultsPlaylists(Session.GetString("SearchString"));
 }
Пример #5
0
 private void QuerySongs()
 {
     Session = HttpContext.Session;
     Songs   = MusicDataBase.GetSongsFromAlbum((int)Session.GetInt32("AlbumID"));
     if (Session.GetString("IsLoggedIn") == "TRUE")
     {
         UserPlaylists = MusicDataBase.GetPlaylistsForUser((int)Session.GetInt32("UserID"));
     }
 }
Пример #6
0
 private void GetArtistData()
 {
     ArtistNames = new List <string>();
     for (int i = 0; i < Songs.Length; i++)
     {
         int    artistId   = MusicDataBase.FindArtistID(Songs[i].SongID);
         string artistName = MusicDataBase.GetUserNameForID(artistId);
         ArtistNames.Add(artistName);
     }
 }
Пример #7
0
 public static void PlayMusic(MusicDataBase currentSong)
 {
     switch (currentSong)
     {
     case MusicDataBase.pongTheme:
         instance.GetComponent <AudioSource> ().clip = instance.musicPongTheme;
         break;
     }
     instance.GetComponent <AudioSource> ().Play();
 }
Пример #8
0
        public IActionResult OnPostAddSong()
        {
            if (ModelState.IsValid)
            {
                Session = HttpContext.Session;
                MusicDataBase.AddSong(Title, Album, Session.GetInt32("UserID"), Date.ToString("MM/dd/yyyy"));
                return(RedirectToPage("./Add"));
            }

            return(RedirectToPage("./Error"));
        }
Пример #9
0
        public void OnGet()
        {
            Session = HttpContext.Session;

            Console.WriteLine($"SESSION: {Session.GetString("IsArtist")}");
            if (Session.GetString("IsArtist") == null)
            {
                Response.Redirect("./Index");
            }

            Albums = MusicDataBase.GetAlbumsForArtist(Session.GetInt32("UserID"));
        }
Пример #10
0
 public IActionResult OnPostEditBio()
 {
     if (ModelState.IsValid)
     {
         Session = HttpContext.Session;
         Session.SetString("IsEditMode", "TRUE");
         Username   = Session.GetString("SessionUser");
         PageUserID = (int)Session.GetInt32("UserID");
         Playlists  = MusicDataBase.GetPlaylistsForUser((int)Session.GetInt32("UserID"));
         Bio        = MusicDataBase.GetBioForUserID((int)Session.GetInt32("UserID"));
         return(Page());
     }
     return(RedirectToPage("./Error"));
 }
Пример #11
0
        public IActionResult OnPostDeletePlaylist()
        {
            if (ModelState.IsValid)
            {
                Session = HttpContext.Session;

                QuerySongsAndComments();

                MusicDataBase.DeleteEntirePlaylist((int)Session.GetInt32("PlaylistID"));

                return(RedirectToPage("./UserProfile"));
            }

            return(RedirectToPage("./Error"));
        }
Пример #12
0
        private bool IsPlaylist(string playlistName)
        {
            Session               = HttpContext.Session;
            PageUserID            = (int)Session.GetInt32("UserID");
            CurrentUsersPlaylists = MusicDataBase.GetPlaylistNamesForUserID(PageUserID);

            foreach (var playlist in CurrentUsersPlaylists)
            {
                if (string.Equals(playlistName, playlist))
                {
                    return(true);
                }
            }

            return(false);
        }
Пример #13
0
        public void OnGet(string userId)
        {
            Session = HttpContext.Session;
            Session.SetString("IsEditMode", "FALSE");
            if (userId != null)
            {
                PageUserID = Convert.ToInt32((string)userId);
                string usrName = MusicDataBase.GetUserNameForID(PageUserID);
                Session.SetInt32("PlaylistUserID", PageUserID);
                Session.SetInt32("AlbumUserID", PageUserID);

                if (usrName != null)
                {
                    Username = usrName;
                    Session.SetString("PageUserName", Username);
                    Playlists = MusicDataBase.GetPlaylistsForUser(PageUserID);
                    Bio       = MusicDataBase.GetBioForUserID(PageUserID);
                }

                if (Session.GetString("IsArtist") == "TRUE")
                {
                    Albums = MusicDataBase.GetAlbumsFromArtistID(PageUserID);
                }
            }
            else
            {
                if (Session.GetString("IsLoggedIn") != null)
                {
                    PageUserID = (int)Session.GetInt32("UserID");
                    Session.SetInt32("PlaylistUserID", PageUserID);
                    Session.SetInt32("AlbumUserID", PageUserID);
                    Username = Session.GetString("SessionUser");
                    Session.SetString("PageUserName", Username);
                    Playlists = MusicDataBase.GetPlaylistsForUser((int)Session.GetInt32("UserID"));
                    Bio       = MusicDataBase.GetBioForUserID((int)Session.GetInt32("UserID"));

                    if (Session.GetString("IsArtist") == "TRUE")
                    {
                        Albums = MusicDataBase.GetAlbumsFromArtistID(PageUserID);
                    }
                }
                else
                {
                    Response.Redirect("./Index");
                }
            }
        }
Пример #14
0
        public void OnPostSearch()
        {
            SearchString = Request.Form["search-bar"];
            Session      = HttpContext.Session;
            Session.SetString("SearchString", SearchString);
            GetData();
            if (Songs != null)
            {
                GetArtistData();
            }

            if (Session.GetString("IsLoggedIn") == "TRUE")
            {
                PageUserID            = (int)Session.GetInt32("UserID");
                CurrentUsersPlaylists = MusicDataBase.GetPlaylistNamesForUserID(PageUserID);
            }
        }
Пример #15
0
        public IActionResult OnPostCreateAlbum(string addAlbumButton)
        {
            if (ModelState.IsValid)
            {
                Session = HttpContext.Session;

                Album[] albums = MusicDataBase.GetAlbumsFromArtistID((int)Session.GetInt32("UserID"));

                if (!IsDuplicate(albums))
                {
                    MusicDataBase.AddAlbum(AlbumName, Session.GetInt32("UserID"), ReleaseDate.ToString("MM/dd/yyyy"));
                    return(RedirectToPage("./Add"));
                }

                return(Page());
            }

            return(RedirectToPage("./Error"));
        }
Пример #16
0
        public IActionResult OnPostRegister()
        {
            if (ModelState.IsValid)
            {
                Session = HttpContext.Session;

                if (!MusicDataBase.GetUsernameForEmail(Email).Equals(Session.GetString("SessionUser")))
                {
                    return(Page());
                }
                else
                {
                    MusicDataBase.AddArtist(Session.GetInt32("UserID"));
                    Session.SetString("IsArtist", "TRUE");
                    return(RedirectToPage("./Index"));
                }
            }

            return(RedirectToPage("./Error"));
        }
Пример #17
0
        public IActionResult OnPostCreatePlaylist()
        {
            if (ModelState.IsValid)
            {
                Session = HttpContext.Session;

                string[] playlists = MusicDataBase.GetPlaylistNamesForUserID((int)Session.GetInt32("UserID"));


                if (!IsDuplicate(playlists))
                {
                    MusicDataBase.CreatePlaylist((int)Session.GetInt32("UserID"), PlaylistTitle);
                    return(RedirectToPage("./UserProfile"));
                }

                return(Page());
            }

            return(RedirectToPage("./Error"));
        }
Пример #18
0
        public IActionResult OnPostDeleteSong()
        {
            if (ModelState.IsValid)
            {
                Session = HttpContext.Session;

                int songID = Convert.ToInt32(Request.Form["song-id"]);

                QuerySongsAndComments();

                if (IsValidSong(songID))
                {
                    MusicDataBase.DeleteSongFromPlaylist((int)Session.GetInt32("PlaylistID"), songID);
                    return(Redirect($"./ViewPlaylist?userId={Session.GetInt32("PlaylistUserID")}&playlist={Session.GetString("PlaylistName")}"));
                }

                return(Redirect($"./ViewPlaylist?userId={Session.GetInt32("PlaylistUserID")}&playlist={Session.GetString("PlaylistName")}"));
            }

            return(RedirectToPage("./Error"));
        }
Пример #19
0
        public void OnGet(string album, int albumId)
        {
            Session = HttpContext.Session;

            AlbumName = album;
            Session.SetString("AlbumName", AlbumName);
            AlbumID = albumId;
            Session.SetInt32("AlbumID", AlbumID);

            if (Session.GetString("IsLoggedIn") == "TRUE")
            {
                UserPlaylists = MusicDataBase.GetPlaylistsForUser((int)Session.GetInt32("UserID"));
            }

            ArtistName = Session.GetString("PageUserName");
            if (ArtistName == null)
            {
                ArtistName = Session.GetString("ArtistName");
            }

            QuerySongs();
        }
Пример #20
0
        public IActionResult OnPostViewPlaylist(string viewPlaylist)
        {
            if (ModelState.IsValid)
            {
                if (viewPlaylist == null || viewPlaylist == String.Empty)
                {
                    return(Page());
                }
                Session = HttpContext.Session;
                Session.SetString("IsEditMode", "FALSE");

                Playlists = MusicDataBase.GetPlaylistsForUser((int)Session.GetInt32("PlaylistUserID"));

                if (IsValidPlaylist(viewPlaylist))
                {
                    return(Redirect($"./ViewPlaylist?userId={Session.GetInt32("PlaylistUserID")}&playlist={viewPlaylist}&playlistid={PlaylistChosenID}"));
                }

                return(RedirectToPage("./UserProfile"));
            }
            return(RedirectToPage("./Error"));
        }
Пример #21
0
        public IActionResult OnPostRegister()
        {
            if (ModelState.IsValid)
            {
                Session = HttpContext.Session;
                if (!MusicDataBase.UserExists(Email))
                {
                    MusicDataBase.AddUser(Email, Username, Password);
                }
                else
                {
                    Session.SetString("IsRegistered", "TRUE");
                    Session.SetString("SessionUser", Username);
                    Session.SetString("IsArtist", "FALSE");

                    return(RedirectToPage("./Login"));
                }
                return(RedirectToPage("./Index"));
            }

            return(RedirectToPage("./Error"));
        }
Пример #22
0
        public IActionResult OnPostViewAlbum(string viewAlbum)
        {
            if (ModelState.IsValid)
            {
                if (viewAlbum == null || viewAlbum == string.Empty)
                {
                    return(Page());
                }
                Session = HttpContext.Session;
                Session.SetString("IsEditMode", "FALSE");

                Albums = MusicDataBase.GetAlbumsFromArtistID((int)Session.GetInt32("AlbumUserID"));

                if (IsValidAlbum(viewAlbum))
                {
                    return(Redirect($"./ViewAlbum?album={viewAlbum}&albumId={AlbumChosenID}"));
                }

                return(RedirectToPage("./UserProfile"));
            }

            return(RedirectToPage("./Error"));
        }
Пример #23
0
        public IActionResult OnPostChooseAlbum(string albumButton)
        {
            if (ModelState.IsValid)
            {
                if (albumButton == null || albumButton == String.Empty)
                {
                    return(RedirectToPage("./Add"));
                }

                Session = HttpContext.Session;
                Albums  = MusicDataBase.GetAlbumsForArtist(Session.GetInt32("UserID"));

                if (IsAlbumValid(albumButton))
                {
                    HasSelectedAlbum = true;
                    Album            = albumButton;
                    return(Page());
                }

                return(Page());
            }
            return(RedirectToPage("./Error"));
        }
Пример #24
0
        public IActionResult OnPostAddSongsToPlaylist()
        {
            if (ModelState.IsValid)
            {
                int playlistID = Convert.ToInt32(Request.Form["playlist-id"]);

                QuerySongs();

                if (IsValidPlaylist(playlistID))
                {
                    foreach (var v in Songs)
                    {
                        MusicDataBase.AddSongToPlaylist(v.SongID, playlistID);
                    }

                    return(RedirectToPage("./UserProfile"));
                }

                return(Page());
            }

            return(RedirectToPage("./Error"));
        }
Пример #25
0
        public IActionResult OnPostAdd()
        {
            if (ModelState.IsValid)
            {
                Session      = HttpContext.Session;
                SearchString = Session.GetString("SearchString");
                int songId = -1;
                GetData();
                string playlistName = Request.Form["add-song-button"];

                if (IsPlaylist(playlistName) == false)
                {
                    return(Redirect("./SearchSong"));
                }

                try
                {
                    songId = Convert.ToInt32(Request.Form["song-id"]);
                    if (IsSongID(songId) == false || songId < 0)
                    {
                        return(Redirect("./SearchSong"));
                    }
                } catch (InvalidCastException e)
                {
                    Console.WriteLine("Incorrect type of id" + e.Message);
                    return(Redirect("./SearchSong"));
                }

                Session    = HttpContext.Session;
                PageUserID = (int)Session.GetInt32("UserID");

                int playlistId = MusicDataBase.GetPlaylistIDForPlaylistNameAndUserID(playlistName, PageUserID);
                MusicDataBase.AddSongToPlaylist(songId, playlistId);
                return(Redirect("./SearchSong"));
            }
            return(RedirectToPage("./Error"));
        }
Пример #26
0
        public IActionResult OnPostSubmitEditedBio()
        {
            if (ModelState.IsValid)
            {
                Session = HttpContext.Session;
                Bio     = Request.Form["user-bio-text"];
                if (Bio == null)
                {
                    Bio = String.Empty;
                }

                if (Bio.Length <= 100)
                {
                    MusicDataBase.ChangeBio(Bio, Session.GetInt32("UserID"));
                    Session.SetString("IsEditMode", "FALSE");
                }
                Username   = Session.GetString("SessionUser");
                PageUserID = (int)Session.GetInt32("UserID");
                Playlists  = MusicDataBase.GetPlaylistsForUser((int)Session.GetInt32("UserID"));
                Bio        = MusicDataBase.GetBioForUserID((int)Session.GetInt32("UserID"));
                return(RedirectToPage("./UserProfile"));
            }
            return(RedirectToPage("./Error"));
        }
Пример #27
0
 private void QuerySongsAndComments()
 {
     Songs    = MusicDataBase.GetSongsFromPlaylist((int)Session.GetInt32("PlaylistUserID"), Session.GetString("PlaylistName"));
     Comments = MusicDataBase.GetCommentsForPlaylist((int)Session.GetInt32("PlaylistUserID"), Session.GetString("PlaylistName"));
 }