Beispiel #1
0
        public void SetUp()
        {
            _album = new Album(new LocalizedString("Synthesis", ContentLanguageSelection.English));

            _producer = new Artist(TranslatedString.Create("Tripshots"))
            {
                Id = 1, ArtistType = ArtistType.Producer
            };
            _vocalist = new Artist(TranslatedString.Create("Hatsune Miku"))
            {
                Id = 39, ArtistType = ArtistType.Vocaloid
            };
            _producerContract = new ArtistContract(_producer, ContentLanguagePreference.Default);
            _vocalistContract = new ArtistContract(_vocalist, ContentLanguagePreference.Default);

            _song1 = new Song(new LocalizedString("Nebula", ContentLanguageSelection.English))
            {
                Id = 2
            };
            _song1.AddArtist(_producer);

            _album.AddArtist(_producer);
            _album.AddArtist(_vocalist);

            var songInAlbum = new SongInAlbum(_song1, _album, 1, 1);

            _songInAlbumContract         = new SongInAlbumEditContract(songInAlbum, ContentLanguagePreference.Default);
            _songInAlbumContract.Artists = new[] { _producerContract };
        }
Beispiel #2
0
 public ArtistLinkViewModel(ArtistContract artist, bool typeLabel = false, string name = null, bool releaseYear = false)
 {
     Artist      = artist;
     TypeLabel   = typeLabel;
     Name        = name;
     ReleaseYear = releaseYear;
 }
Beispiel #3
0
        public ActionResult RequestVerification([FromJson] ArtistContract selectedArtist, string message, string linkToProof, bool privateMessage)
        {
            if (selectedArtist == null)
            {
                TempData.SetErrorMessage("Artist must be selected");
                return(View("RequestVerification", null, message));
            }

            if (string.IsNullOrEmpty(linkToProof) && !privateMessage)
            {
                TempData.SetErrorMessage("You must provide a link to proof");
                return(View());
            }

            if (string.IsNullOrEmpty(linkToProof) && privateMessage)
            {
                linkToProof = "in a private message";
            }

            var fullMessage = "Proof: " + linkToProof + ", Message: " + message;

            artistQueries.CreateReport(selectedArtist.Id, ArtistReportType.OwnershipClaim, Hostname, string.Format("Account verification request: {0}", fullMessage), null);

            TempData.SetSuccessMessage("Request sent");
            return(View());
        }
        public SongInAlbumEditContract(SongInAlbum songInAlbum, ContentLanguagePreference languagePreference)
        {
            ParamIs.NotNull(() => songInAlbum);

            DiscNumber    = songInAlbum.DiscNumber;
            SongInAlbumId = songInAlbum.Id;
            TrackNumber   = songInAlbum.TrackNumber;

            ArtistString        = string.Empty;
            SongAdditionalNames = string.Empty;
            SongId = 0;

            var song = songInAlbum.Song;

            if (song != null)
            {
                Artists             = song.ArtistList.Select(a => new ArtistContract(a, languagePreference)).ToArray();
                ArtistString        = song.ArtistString[languagePreference];
                SongName            = song.TranslatedName[languagePreference];
                SongAdditionalNames = string.Join(", ", song.AllNames.Where(n => n != SongName));
                SongId = song.Id;
            }
            else
            {
                Artists  = new ArtistContract[0];
                SongName = songInAlbum.Name;
            }

            IsCustomTrack = song == null;
        }
Beispiel #5
0
        public ArtistForUserContract(OwnedArtistForUser ownedArtistForUser, ContentLanguagePreference languagePreference)
        {
            ParamIs.NotNull(() => ownedArtistForUser);

            Artist = new ArtistContract(ownedArtistForUser.Artist, languagePreference);
            Id     = ownedArtistForUser.Id;
            User   = new UserContract(ownedArtistForUser.User);
        }
        public ArtistEditViewModel(ArtistContract artist, IUserPermissionContext permissionContext,
                                   ArtistForEditContract editedArtist = null)
            : this()
        {
            ParamIs.NotNull(() => artist);

            Artist = artist;
            AllowedEntryStatuses = EntryPermissionManager.AllowedEntryStatuses(permissionContext);
            EditedArtist         = editedArtist;
        }
Beispiel #7
0
        public ActionResult RequestVerification([FromJson] ArtistContract selectedArtist, string message)
        {
            if (selectedArtist == null)
            {
                TempData.SetErrorMessage("Artist must be selected");
                return(View("RequestVerification", null, message));
            }

            if (string.IsNullOrEmpty(message))
            {
                TempData.SetErrorMessage("You must enter some message");
                return(View());
            }

            artistQueries.CreateReport(selectedArtist.Id, ArtistReportType.OwnershipClaim, Hostname, string.Format("Account verification request: {0}", message), null);

            TempData.SetSuccessMessage("Request sent");
            return(View());
        }
Beispiel #8
0
        private void InsertArtist(ArtistContract artistForSongContract)
        {
            logger.Info("Found new artist:" + artistForSongContract.Name);
            if (insertArtist == null)
            {
                insertArtist             = connection.CreateCommand();
                insertArtist.CommandText = "INSERT INTO dump_vocadb.artist " +
                                           "(id,additionalnames,artisttype,deleted,name,picturemime,status,version) " +
                                           "VALUES " +
                                           "(@id,@an,@at,@deleted,@name,@pmime,@status,@version)";
                insertArtist.Parameters.Add("@id", NpgsqlDbType.Integer);
                insertArtist.Parameters.Add("@an", NpgsqlDbType.Text);
                insertArtist.Parameters.Add("@at", NpgsqlDbType.Varchar);
                insertArtist.Parameters.Add("@deleted", NpgsqlDbType.Boolean);
                insertArtist.Parameters.Add("@name", NpgsqlDbType.Varchar);
                insertArtist.Parameters.Add("@pmime", NpgsqlDbType.Varchar);
                insertArtist.Parameters.Add("@status", NpgsqlDbType.Varchar);
                insertArtist.Parameters.Add("@version", NpgsqlDbType.Integer);
            }

            insertArtist.Parameters["@id"].Value      = artistForSongContract.Id;
            insertArtist.Parameters["@an"].Value      = artistForSongContract.AdditionalNames;
            insertArtist.Parameters["@at"].Value      = artistForSongContract.ArtistType;
            insertArtist.Parameters["@deleted"].Value = artistForSongContract.Deleted.Value;
            insertArtist.Parameters["@name"].Value    = artistForSongContract.Name;
            if (artistForSongContract.PictureMime != null)
            {
                insertArtist.Parameters["@pmime"].Value = artistForSongContract.PictureMime;
            }
            else
            {
                insertArtist.Parameters["@pmime"].Value = DBNull.Value;
            }
            insertArtist.Parameters["@status"].Value  = artistForSongContract.Status;
            insertArtist.Parameters["@version"].Value = artistForSongContract.Version.Value;
            insertArtist.ExecuteNonQuery();
        }
        public ArtistForSongContract(ArtistContract artistContract)
        {
            ParamIs.NotNull(() => artistContract);

            Artist = artistContract;
        }
Beispiel #10
0
 public ArtistSelectionForTrackContract(Artist artist, bool selected, ContentLanguagePreference languagePreference)
 {
     Artist   = new ArtistContract(artist, languagePreference);
     Selected = selected;
 }
Beispiel #11
0
 public ArtistForUserContract(ArtistContract artist)
 {
     Artist = artist;
 }
Beispiel #12
0
 public ArtistIconLinkViewModel(ArtistContract artist)
 {
     Artist = artist;
 }
Beispiel #13
0
 public string GenerateDescription(ArtistContract artist, Func <ArtistType, string> artistTypeNames)
 {
     return(string.Format("{0}.", artistTypeNames(artist.ArtistType)));
 }