From aec34f550f4708390d92245c72e9d87815eda088 Mon Sep 17 00:00:00 2001 From: Tommy Parnell Date: Sat, 21 Mar 2015 00:54:03 -0400 Subject: [PATCH] use container, and jsonp --- src/UntappedWidgetGenerator.Web/Bootstrapper.cs | 15 +++++++++++---- src/UntappedWidgetGenerator.Web/IndexModule.cs | 12 +++++------- .../Scripts/jquery.UntappedWidget.js | 5 +---- .../Interface/IUntappedRepository.cs | 9 +++++++++ src/UntappedWidgetGenerator/UntappedRepository.cs | 6 ++---- .../UntappedWidgetGenerator.csproj | 1 + 6 files changed, 29 insertions(+), 19 deletions(-) create mode 100644 src/UntappedWidgetGenerator/Interface/IUntappedRepository.cs diff --git a/src/UntappedWidgetGenerator.Web/Bootstrapper.cs b/src/UntappedWidgetGenerator.Web/Bootstrapper.cs index 507843a..fdb361a 100644 --- a/src/UntappedWidgetGenerator.Web/Bootstrapper.cs +++ b/src/UntappedWidgetGenerator.Web/Bootstrapper.cs @@ -1,11 +1,18 @@ -namespace UntappedWidgetGenerator.Web +using Nancy.Bootstrapper; +using Nancy.Routing; +using Nancy.TinyIoc; +using UntappedWidgetGenerator.Interface; + +namespace UntappedWidgetGenerator.Web { using Nancy; public class Bootstrapper : DefaultNancyBootstrapper { - // The bootstrapper enables you to reconfigure the composition of the framework, - // by overriding the various methods and properties. - // For more information https://github.com/NancyFx/Nancy/wiki/Bootstrapper + protected override void ConfigureApplicationContainer(TinyIoCContainer container) + { + base.ConfigureApplicationContainer(container); + container.Register(); + } } } \ No newline at end of file diff --git a/src/UntappedWidgetGenerator.Web/IndexModule.cs b/src/UntappedWidgetGenerator.Web/IndexModule.cs index 11c0fbd..9daca7e 100644 --- a/src/UntappedWidgetGenerator.Web/IndexModule.cs +++ b/src/UntappedWidgetGenerator.Web/IndexModule.cs @@ -1,22 +1,20 @@ -using System.Collections.Generic; -using UntappedWidgetGenerator.Model; +using Nancy; +using UntappedWidgetGenerator.Interface; namespace UntappedWidgetGenerator.Web { - using Nancy; - public class IndexModule : NancyModule { - public IndexModule() + public IndexModule(IUntappedRepository repository ) { Get["/"] = x => View["Views/Index/Index.cshtml", "tparnell"]; Get["/{username}/browse"] = x => View["Views/Index/Index.cshtml", (string)x.username]; Get["/{username}/html"] = parameters => { - var info = new UntappedRepository().Get(parameters.username); + var info = repository.Get(parameters.username); return View["Profile", info]; }; - Get["/{username}"] = parameters => Response.AsJson(new UntappedRepository().Get((string)parameters.username)); + Get["/{username}"] = parameters => Response.AsJson(repository.Get((string)parameters.username)); } } } diff --git a/src/UntappedWidgetGenerator.Web/Scripts/jquery.UntappedWidget.js b/src/UntappedWidgetGenerator.Web/Scripts/jquery.UntappedWidget.js index 4ac3f60..fcead54 100644 --- a/src/UntappedWidgetGenerator.Web/Scripts/jquery.UntappedWidget.js +++ b/src/UntappedWidgetGenerator.Web/Scripts/jquery.UntappedWidget.js @@ -32,10 +32,7 @@ $.fn.untappd = function (username) { this.each(function () { var that = this; - $.get("http://untappdwidget.azurewebsites.net/" + username) - .success(function (data) { - $(that).html(buildProfileTemplate(data,buildBadges(data))); - }); + $.get("http://untappdwidget.azurewebsites.net/" + username, function(data) { $(that).html(buildProfileTemplate(data, buildBadges(data))); }, "jsonp"); }); }; diff --git a/src/UntappedWidgetGenerator/Interface/IUntappedRepository.cs b/src/UntappedWidgetGenerator/Interface/IUntappedRepository.cs new file mode 100644 index 0000000..b63f7c8 --- /dev/null +++ b/src/UntappedWidgetGenerator/Interface/IUntappedRepository.cs @@ -0,0 +1,9 @@ +using UntappedWidgetGenerator.Model; + +namespace UntappedWidgetGenerator.Interface +{ + public interface IUntappedRepository + { + WidgetViewModel Get(string username); + } +} diff --git a/src/UntappedWidgetGenerator/UntappedRepository.cs b/src/UntappedWidgetGenerator/UntappedRepository.cs index 2c89d59..86fd2c2 100644 --- a/src/UntappedWidgetGenerator/UntappedRepository.cs +++ b/src/UntappedWidgetGenerator/UntappedRepository.cs @@ -1,14 +1,12 @@ using System; using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; using CsQuery; +using UntappedWidgetGenerator.Interface; using UntappedWidgetGenerator.Model; namespace UntappedWidgetGenerator { - public class UntappedRepository + public class UntappedRepository : IUntappedRepository { public WidgetViewModel Get(string username) { diff --git a/src/UntappedWidgetGenerator/UntappedWidgetGenerator.csproj b/src/UntappedWidgetGenerator/UntappedWidgetGenerator.csproj index de71576..99e4768 100644 --- a/src/UntappedWidgetGenerator/UntappedWidgetGenerator.csproj +++ b/src/UntappedWidgetGenerator/UntappedWidgetGenerator.csproj @@ -42,6 +42,7 @@ +