add ratings to web output

This commit is contained in:
2015-04-15 23:43:42 +02:00
parent 3ff08be9a9
commit 420dc8c1ad
5 changed files with 43 additions and 0 deletions
@@ -1,6 +1,7 @@
using Nancy;
using OnePeek.Api;
using OnePeek.Entities;
using System.Collections.Generic;
using System.IO;
namespace OnePeek.WebConsole.Modules
@@ -26,6 +27,13 @@ namespace OnePeek.WebConsole.Modules
};
Get["/ratings/{id}", true] = async (ctx, token) =>
{
IEnumerable<AppRating> ratings = await metaEndpoint.GetRatingsForAllCultures(ctx.id, StoreType.WindowsPhone8, new System.Threading.CancellationTokenSource().Token, null);
return Response.AsJson(ratings);
};
Get["/image/{id}.jpg", true] = async (ctx, token) =>
{
Stream imageStream = await metaEndpoint.GetImageAsStream(ctx.id, StoreImageType.None);
@@ -1,6 +1,7 @@
using Nancy;
using OnePeek.Api;
using OnePeek.Entities;
using System.Collections.Generic;
using System.IO;
namespace OnePeek.WebConsole.Modules
@@ -30,6 +31,12 @@ namespace OnePeek.WebConsole.Modules
AppReviews reviews = await ratingEndpoint.GetReviews(Request.Query["id"], StoreType.WindowsPhone8, StoreCultureType.EN_US, StoreReviewSorting.Latest, Request.Query["prev"], Request.Query["next"]);
return View["Reviews", reviews];
};
Get["/ratings", true] = async (ctx, token) =>
{
IEnumerable<AppRating> ratings = await metaEndpoint.GetRatingsForAllCultures(Request.Query["id"], StoreType.WindowsPhone8, new System.Threading.CancellationTokenSource().Token, null);
return View["Ratings", new { Ratings = ratings }];
};
}
}
}
@@ -79,6 +79,7 @@
<Content Include="Views\Index.cshtml" />
<Content Include="Views\Meta.cshtml" />
<Content Include="Views\Reviews.cshtml" />
<Content Include="Views\Ratings.cshtml" />
<None Include="Web.Debug.config">
<DependentUpon>Web.config</DependentUpon>
</None>
@@ -16,3 +16,11 @@
<input type="text" name="id" value="2532ff45-aa3f-4aba-a266-ed7ec71d47bd" />
<input type="submit" value="submit" class="button" />
</form>
<br /><br />
<form action="/ratings" method="get">
<h3>RATINGS</h3>
<input type="text" name="id" value="2532ff45-aa3f-4aba-a266-ed7ec71d47bd" />
<input type="submit" value="submit" class="button" />
</form>
@@ -0,0 +1,19 @@
@inherits Nancy.ViewEngines.Razor.NancyRazorViewBase<dynamic>
@{
Layout = "_Layout.cshtml";
}
@foreach (var rating in Model.Ratings)
{
<div class="rating">
<h3>@rating.Culture</h3>
<p><b>@rating.AverageRating</b> (@rating.RatingCount)</p>
</div>
<hr />
}
<style>
.rating {
}
</style>