public UsersView(IEnumerable <User> users) : base("Users", H1(Text("User List")) , Ul(users.Select(user => Li(A(ResolveUri.For(user), user.Identity.Name))).ToArray()) , H2(Text("Create a New User")) , Form("post", "/users", Label("username", "Username"), InputText("username") , Label("password", "Password"), InputText("password", true) , Label("submit", "Submit"), InputSubmit("Submit") ) ) { }
public AddTrackView(string href, ViewPlaylist[] playlists) : base("Add Track", H1(Text("Add Track")), Label("select", "Playlists"), Form("POST", ResolveUri.ForAddTrackTo(href), InputBox("playlist", playlists.Select(p => Option(p.Id + "", p.Name)).ToArray() ), InputSubmit("Choose") ) ) { }
public EpisodeView(string show, Season season, Episode episode) : base("Episode", A(ResolveUri.ForHome(), "Home") , H1(Text("TV Shows")) , H2(Text(show)) , Ul( Li(Text("Season: "), Text(season.Name)) , Li(Text("Title: "), Text(episode.Title)) , Li(Text("Duration: "), Text("" + episode.Duration)) , Li(Text("Synopsis: "), Text(episode.Synopsis)) , Li(Text("Score: "), Text("" + episode.Score))) ) { }
public SearchView(List <ViewArtist> artists, SearchInfo info) : base("Search Results", H1(Text("Results")), H2(Text("Artists")), artists.Count > 0 ? Ul(artists.Select(art => Li(Text(art.Name), A(ResolveUri.For(art), "View"))).ToArray()) : Text("No results found"), //SearchFrame(info), Ul( Li(A(ResolveUri.ForHome(), "Home")), Li(A(ResolveUri.ForPlaylist(), "Playlists")) ) ) { }
public HttpResponse Post(IEnumerable <KeyValuePair <string, string> > content) { var desc = content.Where(p => p.Key == "desc").Select(p => p.Value).FirstOrDefault(); if (desc == null) { return(new HttpResponse(HttpStatusCode.BadRequest)); } var td = new ToDo { Description = desc }; _repo.Add(td); return(new HttpResponse(HttpStatusCode.SeeOther).WithHeader("Location", ResolveUri.For(td))); }
private static IWritable[] InitContent(params IWritable[] c) { List <IWritable> content = new List <IWritable> { Div("nav", "sidebar", Ul(Li(A(ResolveUri.ForUsers(), "Home")) , Li(A(ResolveUri.ForShows(), "TV Shows")) , Li(A(ResolveUri.ForProposals(), "Proposals List")) ) ) }; content.AddRange(c); return(content.ToArray()); }
public ArtistView(ViewArtist artist) : base(artist.Name, H1(Text(string.Format("Artist : {0}", artist.Name))), P(Label("name", "Name"), Text(artist.Name)), H2(Text("Albuns")), Ul( artist.Albuns.Select(alb => Li(A(ResolveUri.ForAlbum(alb.Key), alb.Value))).ToArray() ), Ul( Li(A(ResolveUri.ForPlaylist(), "Playlists")), Li(A(ResolveUri.ForSearch(), "Search")) ) ) { }
public SearchView(List <ViewTrack> tracks, SearchInfo info) : base("Search Results", H1(Text("Results")), H2(Text("Tracks")), tracks.Count > 0 ? Ul( tracks.Select(trc => Li(Text(trc.Name), A(ResolveUri.For(trc), trc.Name))).ToArray() ) : Text("No results found"), //SearchFrame(info), Ul( Li(A(ResolveUri.ForHome(), "Home")), Li(A(ResolveUri.ForPlaylist(), "Playlists")) ) ) { }
public HttpResponseMessage Post(NameValueCollection content) { var desc = content["desc"]; if (desc == null) { return(new HttpResponseMessage(HttpStatusCode.BadRequest)); } var td = new ToDo { Description = desc }; _repo.Add(td); var resp = new HttpResponseMessage(HttpStatusCode.SeeOther); resp.Headers.Location = new Uri(ResolveUri.For(td)); return(resp); }
public ProposalForm() : base("New Proposal", H1(Text("New Show")) , Form(HttpMethod.Post, ResolveUri.ForNewProposal() , Label("show_name", "Show Name:"), InputText("show_name") , Label("show_description", "Show Description:"), InputText("show_description") /*, Label( "season_name", "Season Name:" ) , InputText( "season_name" ) * , Label( "season_start_date", "Season Start Date(dd-mm-yyyy):" ), InputText( "season_start_date" ) * , Label( "season_end_date", "Season End Date(dd-mm-yyyy):" ) , InputText( "season_end_date" ) * , Label( "episode_title", "Episode Title:" ) , InputText( "episode_title" ) * , Label( "episode_duration", "Episode Duration:" ) , InputText( "episode_duration" ) * , Label( "episode_sinopsis", "Episode Sinopsis:" ) , InputText( "episode_sinopse" ) * , Label( "episode_rating", "Episode Rating:" ) , InputText( "episode_rating" ) * */ , InputSubmit("submit") ) ) { }
public PlaylistDetailView(ViewPlaylist p) : base("Playlist Detail", H1(Text("Playlist Detail - " + p.Name)), H3(Text("Name: " + p.Name)), H3(Text("Description: " + p.Description)), H3(Text("Track List")), Ul( p.Tracks.Select(track => Li( A(ResolveUri.ForTrack(track.Key), track.Value), Form("POST", ResolveUri.ForRemoveTrack(p, track.Key), P(InputSubmit("Remove"))) )).ToArray() ), Form("POST", ResolveUri.ForPlaylistRemove(p), P(InputSubmit("Delete"))), Form("GET", ResolveUri.ForPlaylistEdit(p), P(InputSubmit("Edit"))), P(A(ResolveUri.ForHome(), "Home")), P(A(ResolveUri.ForSearch(), "Search")) ) { }
public SeasonView(string show, Season season) : base("Season", A(ResolveUri.ForHome(), "Home") , H1(Text("TV Shows")) , H2(Text(show)) , H3(Text(string.Format("Starts: {0}", season.Debut.ToString("d")))) , H3(Text(string.Format("Ends: {0}", season.Finale.ToString("d")))) , Ul(season.Episodes.Select(episode => Li(A( ResolveUri.ForEpisode(ShowService.GetShowByName(show) , ShowService.GetSeason(show, season.Number) , ShowService.GetEpisodeByNumberShowAndSeason(show, season.Number, episode.Number) ) , episode.Title) ) ).ToArray() ) ) { }
public SearchView() : base("Search Form", H1(Text("Search")), Form("POST", "/search", InputText("search", "Search Query"), InputBox("type", Option("artists", "Artists"), Option("albuns", "Albuns"), Option("tracks", "Tracks") ), InputSubmit("Search") ), Ul( Li(A(ResolveUri.ForHome(), "Home")), Li(A(ResolveUri.ForPlaylist(), "Playlists")) ) ) { }
public TrackView(ViewTrack track) : base(track.Name, H1(Text(string.Format("Track : {0}", track.Name))), P(Label("name", "Name"), Text(track.Name)), P(Label("duration", "Duration"), Text(track.Duration)), P(Label("album", "Album"), Text(track.Album.Value), A(ResolveUri.ForAlbum(track.Album.Key), "View")), H2(Text("Artists")), Ul( track.Artists.Select(art => Li(A(ResolveUri.ForArtist(art.Key), art.Value))).ToArray() ), TrackPlayer(track.Href), Ul( Li(A(ResolveUri.ForAddTrack(track.Href), "Adicionar")), Li(A(ResolveUri.ForPlaylist(), "Playlists")), Li(A(ResolveUri.ForSearch(), "Search")) ) ) { }
public AlbumView(ViewAlbum album) : base(album.Name, H1(Text(string.Format("Album : {0}", album.Name))), P(Label("name", "Name"), Text(album.Name)), P(Label("year", "Release"), Text(album.Year)), H2(Text("Artists")), Ul( album.Artist.Select(a => Li(A(ResolveUri.ForArtist(a.Key), a.Value))).ToArray() ), H2(Text("Tracks")), Ul( album.Tracks.Select(trc => Li(A(ResolveUri.ForTrack(trc.Key), trc.Value))).ToArray() ), PlaylistPlayer(album.Name, album.Tracks.Select(track => track.Key).ToArray()), Ul( Li(A(ResolveUri.ForPlaylist(), "Playlists")), Li(A(ResolveUri.ForSearch(), "Search")) ) ) { }
public HttpResponseMessage Post(NameValueCollection content) { CreatePlaylist cp = new CreatePlaylist(content["name"], content["desc"]); var playlist = Rules.Create.Playlist(cp); //retornar resposta var response = new HttpResponseMessage(HttpStatusCode.SeeOther); response.Headers.Location = new Uri(string.Format("http://localhost:8080{0}", ResolveUri.For(playlist))); return(response); }
public HttpResponseMessage Remove(string href, int id) { //verificar var playlist = Rules.Find.Playlist(id); var track = Rules.Find.Track(href); if (playlist == null || !Rules.Edit.RemoveTrack(playlist, track)) { return(new HttpResponseMessage(HttpStatusCode.BadRequest)); } //retornar resposta var response = new HttpResponseMessage(HttpStatusCode.SeeOther); response.Headers.Location = new Uri(string.Format("http://localhost:8080{0}", ResolveUri.For(playlist))); return(response); }
public HttpResponseMessage Delete(int id) { var p = Rules.Remove.Playlist(id); if (p == null) { return(new HttpResponseMessage(HttpStatusCode.BadRequest)); } var response = new HttpResponseMessage(HttpStatusCode.SeeOther); response.Headers.Location = new Uri(string.Format("http://localhost:8080{0}", ResolveUri.ForPlaylist())); return(response); }
[HttpMethod("POST", "/playlist/{href}/add")]//TODO: would look better if playlist was a parameter too public HttpResponseMessage AddTrack(string href, NameValueCollection content) { string playlistId = content["playlist"]; int id = int.Parse(playlistId); var playlist = Rules.Find.Playlist(id); var track = Rules.Find.Track(href); if (playlist == null || !Rules.Edit.AddTrack(playlist, track)) { return(new HttpResponseMessage(HttpStatusCode.BadRequest)); } var response = new HttpResponseMessage(HttpStatusCode.SeeOther); response.Headers.Location = new Uri(string.Format("http://localhost:8080{0}", ResolveUri.For(playlist))); return(response); }
public HttpResponseMessage Edit(int id, NameValueCollection content) { //verificar var pl = new EditPlaylist(id, content["name"], content["desc"]); var p = Rules.Edit.PlaylistTo(pl); //retornar resposta var response = new HttpResponseMessage(HttpStatusCode.SeeOther); response.Headers.Location = new Uri(string.Format("http://localhost:8080{0}", ResolveUri.For(p))); return(response); }