|
|
@ -9,38 +9,21 @@ namespace RequestPlex.UI.Modules
|
|
|
|
{
|
|
|
|
{
|
|
|
|
public class SearchModule : NancyModule
|
|
|
|
public class SearchModule : NancyModule
|
|
|
|
{
|
|
|
|
{
|
|
|
|
public SearchModule()
|
|
|
|
public SearchModule() : base("search")
|
|
|
|
{
|
|
|
|
{
|
|
|
|
Get["search/"] = parameters => RequestLoad();
|
|
|
|
Api = new TheMovieDbApi();
|
|
|
|
|
|
|
|
Get["/"] = parameters => RequestLoad();
|
|
|
|
|
|
|
|
|
|
|
|
Get["search/movie/{searchTerm}"] = parameters =>
|
|
|
|
Get["movie/{searchTerm}"] = parameters => SearchMovie((string)parameters.searchTerm);
|
|
|
|
{
|
|
|
|
Get["tv/{searchTerm}"] = parameters => SearchTvShow((string)parameters.searchTerm);
|
|
|
|
var search = (string)parameters.searchTerm;
|
|
|
|
|
|
|
|
return SearchMovie(search);
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Get["search/tv/{searchTerm}"] = parameters =>
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
var search = (string)parameters.searchTerm;
|
|
|
|
|
|
|
|
return SearchTvShow(search);
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Get["search/movie/upcoming"] = parameters => UpcomingMovies();
|
|
|
|
Get["movie/upcoming"] = parameters => UpcomingMovies();
|
|
|
|
Get["search/movie/playing"] = parameters => CurrentlyPlayingMovies();
|
|
|
|
Get["movie/playing"] = parameters => CurrentlyPlayingMovies();
|
|
|
|
|
|
|
|
|
|
|
|
Post["search/request/movie"] = parameters =>
|
|
|
|
Post["request/movie"] = parameters => RequestMovie((int)Request.Form.movieId);
|
|
|
|
{
|
|
|
|
Post["request/tv"] = parameters => RequestTvShow((int)Request.Form.tvId, (bool)Request.Form.latest);
|
|
|
|
var movieId = (int)Request.Form.movieId;
|
|
|
|
|
|
|
|
return RequestMovie(movieId);
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Post["search/request/tv"] = parameters =>
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
var tvShowId = (int)Request.Form.tvId;
|
|
|
|
|
|
|
|
var latest = (bool)Request.Form.latest;
|
|
|
|
|
|
|
|
return RequestTvShow(tvShowId, latest);
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
private TheMovieDbApi Api { get; }
|
|
|
|
|
|
|
|
|
|
|
|
private Negotiator RequestLoad()
|
|
|
|
private Negotiator RequestLoad()
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -49,32 +32,28 @@ namespace RequestPlex.UI.Modules
|
|
|
|
|
|
|
|
|
|
|
|
private Response SearchMovie(string searchTerm)
|
|
|
|
private Response SearchMovie(string searchTerm)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
var api = new TheMovieDbApi();
|
|
|
|
var movies = Api.SearchMovie(searchTerm);
|
|
|
|
var movies = api.SearchMovie(searchTerm);
|
|
|
|
|
|
|
|
var result = movies.Result;
|
|
|
|
var result = movies.Result;
|
|
|
|
return Response.AsJson(result);
|
|
|
|
return Response.AsJson(result);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private Response SearchTvShow(string searchTerm)
|
|
|
|
private Response SearchTvShow(string searchTerm)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
var api = new TheMovieDbApi();
|
|
|
|
var tvShow = Api.SearchTv(searchTerm);
|
|
|
|
var tvShow = api.SearchTv(searchTerm);
|
|
|
|
|
|
|
|
var result = tvShow.Result;
|
|
|
|
var result = tvShow.Result;
|
|
|
|
return Response.AsJson(result);
|
|
|
|
return Response.AsJson(result);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private Response UpcomingMovies()
|
|
|
|
private Response UpcomingMovies()
|
|
|
|
{
|
|
|
|
{
|
|
|
|
var api = new TheMovieDbApi();
|
|
|
|
var movies = Api.GetUpcomingMovies();
|
|
|
|
var movies = api.GetUpcomingMovies();
|
|
|
|
|
|
|
|
var result = movies.Result;
|
|
|
|
var result = movies.Result;
|
|
|
|
return Response.AsJson(result);
|
|
|
|
return Response.AsJson(result);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private Response CurrentlyPlayingMovies()
|
|
|
|
private Response CurrentlyPlayingMovies()
|
|
|
|
{
|
|
|
|
{
|
|
|
|
var api = new TheMovieDbApi();
|
|
|
|
var movies = Api.GetCurrentPlayingMovies();
|
|
|
|
var movies = api.GetCurrentPlayingMovies();
|
|
|
|
|
|
|
|
var result = movies.Result;
|
|
|
|
var result = movies.Result;
|
|
|
|
return Response.AsJson(result);
|
|
|
|
return Response.AsJson(result);
|
|
|
|
}
|
|
|
|
}
|
|
|
|