public PagedResult<QueuedTrack> Default(string filter,int start=0,int take=20) { using (var client = new MusicServiceClient()) { string user = null; //currently can only filter to users own tracks if(filter!=null) { switch (filter.ToLower()) { case "mine": var identityHelper = new IdentityHelper(); user = identityHelper.GetCurrentIdentityName(); break; case "requested": //we find any track queued by a network user user = client.GetDomain(); break; } } var history = client.GetTrackHistory(start, take, user); return history; } }
public void VetoCurrentTrack() { using (var client = new MusicServiceClient()) { var identityHelper = new IdentityHelper(); client.VetoTrack(Guid.Empty, identityHelper.GetCurrentIdentityName()); } }
public SearchResults Default(string searchTerm, string provider) { using (var client = new MusicServiceClient()) { var identityHelper = new IdentityHelper(); return client.SearchAll(searchTerm, provider, identityHelper.GetCurrentIdentityName()); } }
public bool IsUserSuperAdmin() { using (var client = new MusicServiceClient()) { var identityHelper = new IdentityHelper(); return client.IsUserSuperAdmin(identityHelper.GetCurrentIdentityName()); } }
public Album Album(string id, string provider) { using (var client = new MusicServiceClient()) { var identityHelper = new IdentityHelper(); return client.BrowseAlbum(id, provider, identityHelper.GetCurrentIdentityName()); } }
public void VetoTrack(string id) { using (var client = new MusicServiceClient()) { var idGuid = Guid.Empty; if (!Guid.TryParse(id, out idGuid)) return; var identityHelper = new IdentityHelper(); client.VetoTrack(idGuid, identityHelper.GetCurrentIdentityName()); } }
public PagedResult<Track> MyLikes(int start=0,int take=20) { using (var client = new MusicServiceClient()) { var identityHelper = new IdentityHelper(); var user = identityHelper.GetCurrentIdentityName(); return client.GetLikes(start, take, user); } }
public User AddAdminUser(User user) { using (var client = new MusicServiceClient()) { if (!IsUserSuperAdmin()) throw new HttpResponseException(new System.Net.Http.HttpResponseMessage(System.Net.HttpStatusCode.Unauthorized)); // fix format of Username var username = user.Username.Split('\\'); user.Username = username[0] + "\\" + username[1].ToLower(); var identityHelper = new IdentityHelper(); return client.AddAdminUser(user, identityHelper.GetCurrentIdentityName()); } }
public void SkipTrack(string id) { using (var client = new MusicServiceClient()) { if (!IsUserSuperAdmin()) throw new HttpResponseException(new System.Net.Http.HttpResponseMessage(System.Net.HttpStatusCode.Unauthorized)); Guid idGuid; if (Guid.TryParse(id, out idGuid)) { var identityHelper = new IdentityHelper(); client.SkipTrack(idGuid, identityHelper.GetCurrentIdentityName()); } } }
public void LikeTrack(string id) { try { using (var client = new MusicServiceClient()) { var idGuid = Guid.Empty; if (!Guid.TryParse(id, out idGuid)) return; var identityHelper = new IdentityHelper(); client.LikeTrack(idGuid, identityHelper.GetCurrentIdentityName()); } } catch (Exception) { throw; } }
public bool RemoveAdminUser(User user) { using (var client = new MusicServiceClient()) { if (!IsUserSuperAdmin()) { throw new HttpResponseException(new System.Net.Http.HttpResponseMessage(System.Net.HttpStatusCode.Unauthorized)); } var identityHelper = new IdentityHelper(); if (identityHelper.GetCurrentIdentityName().ToLower() != user.Username.ToLower()) { client.RemoveAdminUser(user.Username, identityHelper.GetCurrentIdentityName()); return true; } return false; } }
public string Enqueue(JObject json) { dynamic trackToQueue = json; string id = trackToQueue.id; string provider = trackToQueue.provider; string reason = trackToQueue.reason; var identityHelper = new IdentityHelper(); var user = identityHelper.GetCurrentIdentityName(); using (var client = new MusicServiceClient()) { var track = client.GetTrack(id, provider, user); var queuedTrack = new QueuedTrack { Track = track, User = user, Reason = reason }; var errors = client.QueueTrack(queuedTrack); return errors; } }
public void DecreaseVolume() { using (var client = new MusicServiceClient()) { var identityHelper = new IdentityHelper(); client.DecreaseVolume(identityHelper.GetCurrentIdentityName()); Clients.All.updateCurrentVolume(client.GetCurrentVolume()); } }
public void ResumeTrack() { using (var client = new MusicServiceClient()) { var identityHelper = new IdentityHelper(); client.ResumeTrack(identityHelper.GetCurrentIdentityName()); Clients.All.updateCurrentTrack(client.GetPlayingTrack()); } }
public string GetCurrentIdentityName() { var identityHelper = new IdentityHelper(); return identityHelper.GetCurrentIdentityName(); }