From 476bce6bb2020a12cfed3de41977b9d0fb02f5f8 Mon Sep 17 00:00:00 2001 From: Thomas Hounsell Date: Mon, 9 Feb 2015 15:15:12 +0000 Subject: [PATCH] SEO tweaks, Version Meta support --- Areas/admin/Controllers/metaController.cs | 12 +++++++++++- BingSiteAuth.xml | 4 ++++ BuildFeed.csproj | 2 ++ Models/Build.cs | 5 +++++ Models/MetaItem.cs | 19 +++++++++++++++++++ Views/build/index.cshtml | 3 +++ yandex_702baad42b020be7.html | 4 ++++ 7 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 BingSiteAuth.xml create mode 100644 yandex_702baad42b020be7.html diff --git a/Areas/admin/Controllers/metaController.cs b/Areas/admin/Controllers/metaController.cs index 3566291..fee9062 100644 --- a/Areas/admin/Controllers/metaController.cs +++ b/Areas/admin/Controllers/metaController.cs @@ -24,6 +24,7 @@ namespace BuildFeed.Areas.admin.Controllers { CurrentItems = from i in MetaItem.Select() group i by i.Id.Type into b + orderby b.Key.ToString() select b, NewItems = from i in (from l in MetaItem.SelectUnusedLabs() @@ -34,8 +35,17 @@ namespace BuildFeed.Areas.admin.Controllers Type = MetaType.Lab, Value = l } - }) + }).Concat(from v in MetaItem.SelectUnusedVersions() + select new MetaItem() + { + Id = new MetaItemKey() + { + Type = MetaType.Version, + Value = v + } + }) group i by i.Id.Type into b + orderby b.Key.ToString() select b }); } diff --git a/BingSiteAuth.xml b/BingSiteAuth.xml new file mode 100644 index 0000000..2a677a2 --- /dev/null +++ b/BingSiteAuth.xml @@ -0,0 +1,4 @@ + + + 77FAD24B9B2579631630796D246267C3 + \ No newline at end of file diff --git a/BuildFeed.csproj b/BuildFeed.csproj index 7c95c5b..f12c616 100644 --- a/BuildFeed.csproj +++ b/BuildFeed.csproj @@ -209,6 +209,7 @@ + @@ -223,6 +224,7 @@ + diff --git a/Models/Build.cs b/Models/Build.cs index 39babd2..d487897 100644 --- a/Models/Build.cs +++ b/Models/Build.cs @@ -331,5 +331,10 @@ namespace BuildFeed.Models { public byte Major { get; set; } public byte Minor { get; set; } + + public override string ToString() + { + return string.Format("{0}.{1}", Major, Minor); + } } } \ No newline at end of file diff --git a/Models/MetaItem.cs b/Models/MetaItem.cs index 2596ec6..f9cdd51 100644 --- a/Models/MetaItem.cs +++ b/Models/MetaItem.cs @@ -79,6 +79,25 @@ namespace BuildFeed.Models } } + [DataObjectMethod(DataObjectMethodType.Select, false)] + public static IEnumerable SelectUnusedVersions() + { + + using (RedisClient rClient = new RedisClient(DatabaseConfig.Host, DatabaseConfig.Port, db: DatabaseConfig.Database)) + { + var client = rClient.As(); + var versions = Build.SelectBuildVersions(); + + var usedLabs = from u in client.GetAll() + where u.Id.Type == MetaType.Version + select u; + + return from v in versions + where !usedLabs.Any(ul => ul.Id.Value == v.ToString()) + select v.ToString(); + } + } + [DataObjectMethod(DataObjectMethodType.Insert, true)] public static void Insert(MetaItem item) { diff --git a/Views/build/index.cshtml b/Views/build/index.cshtml index 8b5637d..bd78c3d 100644 --- a/Views/build/index.cshtml +++ b/Views/build/index.cshtml @@ -82,6 +82,8 @@ {

About

@Html.Raw(ViewBag.MetaItem.PageContent) +

Share

+

Listing

}
    @@ -204,4 +206,5 @@

    {{:Group}}

    + } \ No newline at end of file diff --git a/yandex_702baad42b020be7.html b/yandex_702baad42b020be7.html new file mode 100644 index 0000000..5003779 --- /dev/null +++ b/yandex_702baad42b020be7.html @@ -0,0 +1,4 @@ + + +Verification: 702baad42b020be7 +