mirror of
https://gitlab.com/buildfeed/BuildFeed.git
synced 2024-03-22 21:10:34 +08:00
Move all URLs to lower-case, some refactoring
This commit is contained in:
parent
83f32e37ee
commit
133163292d
|
@ -19,61 +19,61 @@ public static void RegisterRoutes(RouteCollection routes)
|
|||
routes.MapRoute(
|
||||
name: "Site Root",
|
||||
url: "",
|
||||
defaults: new { controller = "Build", action = "Index", page = 1 }
|
||||
defaults: new { controller = "Build", action = "index", page = 1 }
|
||||
);
|
||||
|
||||
routes.MapRoute(
|
||||
name: "Pagination",
|
||||
url: "page/{page}/",
|
||||
defaults: new { controller = "Build", action = "Index", page = 1 }
|
||||
defaults: new { controller = "Build", action = "index", page = 1 }
|
||||
);
|
||||
|
||||
routes.MapRoute(
|
||||
name: "Lab Root",
|
||||
url: "lab/{lab}/",
|
||||
defaults: new { controller = "Build", action = "Lab", page = 1 }
|
||||
defaults: new { controller = "Build", action = "lab", page = 1 }
|
||||
);
|
||||
|
||||
routes.MapRoute(
|
||||
name: "Lab",
|
||||
url: "lab/{lab}/page/{page}/",
|
||||
defaults: new { controller = "Build", action = "Lab", page = 1 }
|
||||
defaults: new { controller = "Build", action = "lab", page = 1 }
|
||||
);
|
||||
|
||||
routes.MapRoute(
|
||||
name: "Version Root",
|
||||
url: "version/{major}.{minor}/",
|
||||
defaults: new { controller = "Build", action = "Version", page = 1 }
|
||||
defaults: new { controller = "Build", action = "version", page = 1 }
|
||||
);
|
||||
|
||||
routes.MapRoute(
|
||||
name: "Version",
|
||||
url: "version/{major}.{minor}/page/{page}/",
|
||||
defaults: new { controller = "Build", action = "Version", page = 1 }
|
||||
defaults: new { controller = "Build", action = "version", page = 1 }
|
||||
);
|
||||
|
||||
routes.MapRoute(
|
||||
name: "Year Root",
|
||||
url: "year/{year}/",
|
||||
defaults: new { controller = "Build", action = "Year", page = 1 }
|
||||
defaults: new { controller = "Build", action = "year", page = 1 }
|
||||
);
|
||||
|
||||
routes.MapRoute(
|
||||
name: "Year",
|
||||
url: "year/{year}/{page}/",
|
||||
defaults: new { controller = "Build", action = "Year", page = 1 }
|
||||
defaults: new { controller = "Build", action = "year", page = 1 }
|
||||
);
|
||||
|
||||
routes.MapRoute(
|
||||
name: "Source Root",
|
||||
url: "source/{source}/",
|
||||
defaults: new { controller = "Build", action = "Source", page = 1 }
|
||||
defaults: new { controller = "Build", action = "source", page = 1 }
|
||||
);
|
||||
|
||||
routes.MapRoute(
|
||||
name: "Source",
|
||||
url: "source/{source}/{page}/",
|
||||
defaults: new { controller = "Build", action = "Source", page = 1 }
|
||||
defaults: new { controller = "Build", action = "source", page = 1 }
|
||||
);
|
||||
|
||||
routes.MapRoute(
|
||||
|
@ -91,7 +91,7 @@ public static void RegisterRoutes(RouteCollection routes)
|
|||
routes.MapRoute(
|
||||
name: "Support",
|
||||
url: "support/{action}/",
|
||||
defaults: new { controller = "Support", action = "Index" }
|
||||
defaults: new { controller = "Support", action = "index" }
|
||||
);
|
||||
|
||||
routes.MapHttpRoute(
|
||||
|
@ -103,7 +103,7 @@ public static void RegisterRoutes(RouteCollection routes)
|
|||
routes.MapRoute(
|
||||
name: "Actions",
|
||||
url: "actions/{action}/{id}",
|
||||
defaults: new { controller = "Build", action = "Index", id = UrlParameter.Optional }
|
||||
defaults: new { controller = "Build", action = "index", id = UrlParameter.Optional }
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -54,7 +54,7 @@
|
|||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\Newtonsoft.Json.6.0.5\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<HintPath>..\packages\Newtonsoft.Json.6.0.6\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="NServiceKit.Common, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
|
@ -145,7 +145,8 @@
|
|||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="App_Code\BuildDateTimeModelBinder.cs" />
|
||||
<Compile Include="Code\BuildDateTimeModelBinder.cs" />
|
||||
<Compile Include="Code\DisplayHelpers.cs" />
|
||||
<Compile Include="App_Start\BundleConfig.cs" />
|
||||
<Compile Include="App_Start\DatabaseConfig.cs" />
|
||||
<Compile Include="App_Start\FilterConfig.cs" />
|
||||
|
|
|
@ -1,8 +1,5 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Web.Mvc;
|
||||
|
||||
namespace BuildFeed
|
26
Code/DisplayHelpers.cs
Normal file
26
Code/DisplayHelpers.cs
Normal file
|
@ -0,0 +1,26 @@
|
|||
using System;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Linq;
|
||||
|
||||
namespace BuildFeed
|
||||
{
|
||||
public static class DisplayHelpers
|
||||
{
|
||||
public static string GetDisplayTextForEnum(object o)
|
||||
{
|
||||
var result = null as string;
|
||||
var display = o.GetType()
|
||||
.GetMember(o.ToString()).First()
|
||||
.GetCustomAttributes(false)
|
||||
.OfType<DisplayAttribute>()
|
||||
.LastOrDefault();
|
||||
|
||||
if (display != null)
|
||||
{
|
||||
result = display.GetName();
|
||||
}
|
||||
|
||||
return result ?? o.ToString();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -10,11 +10,11 @@ namespace BuildFeed.Controllers
|
|||
{
|
||||
public class buildController : Controller
|
||||
{
|
||||
public int pageSize { get { return 12; } }
|
||||
public int pageSize { get { return 15; } }
|
||||
//
|
||||
// GET: /build/
|
||||
|
||||
public ActionResult Index(int page = 1)
|
||||
public ActionResult index(int page = 1)
|
||||
{
|
||||
var builds = Build.SelectInBuildOrder();
|
||||
var pageBuilds = builds.Skip((page - 1) * pageSize).Take(pageSize);
|
||||
|
@ -25,7 +25,7 @@ public ActionResult Index(int page = 1)
|
|||
return View(pageBuilds);
|
||||
}
|
||||
|
||||
public ActionResult Year(int year, int page = 1)
|
||||
public ActionResult year(int year, int page = 1)
|
||||
{
|
||||
var builds = Build.SelectInBuildOrder().Where(b => b.BuildTime.HasValue && b.BuildTime.Value.Year == year);
|
||||
var pageBuilds = builds.Skip((page - 1) * pageSize).Take(pageSize);
|
||||
|
@ -33,10 +33,10 @@ public ActionResult Year(int year, int page = 1)
|
|||
ViewBag.PageNumber = page;
|
||||
ViewBag.PageCount = Math.Ceiling(Convert.ToDouble(builds.Count()) / Convert.ToDouble(pageSize));
|
||||
|
||||
return View("Index", pageBuilds);
|
||||
return View("index", pageBuilds);
|
||||
}
|
||||
|
||||
public ActionResult Lab(string lab, int page = 1)
|
||||
public ActionResult lab(string lab, int page = 1)
|
||||
{
|
||||
var builds = Build.SelectInBuildOrder().Where(b => b.Lab != null && (b.Lab.ToLower() == lab.ToLower()));
|
||||
var pageBuilds = builds.Skip((page - 1) * pageSize).Take(pageSize);
|
||||
|
@ -44,10 +44,10 @@ public ActionResult Lab(string lab, int page = 1)
|
|||
ViewBag.PageNumber = page;
|
||||
ViewBag.PageCount = Math.Ceiling(Convert.ToDouble(builds.Count()) / Convert.ToDouble(pageSize));
|
||||
|
||||
return View("Index", pageBuilds);
|
||||
return View("index", pageBuilds);
|
||||
}
|
||||
|
||||
public ActionResult Version(int major, int minor, int page = 1)
|
||||
public ActionResult version(int major, int minor, int page = 1)
|
||||
{
|
||||
var builds = Build.SelectInBuildOrder().Where(b => b.MajorVersion == major && b.MinorVersion == minor);
|
||||
var pageBuilds = builds.Skip((page - 1) * pageSize).Take(pageSize);
|
||||
|
@ -55,10 +55,10 @@ public ActionResult Version(int major, int minor, int page = 1)
|
|||
ViewBag.PageNumber = page;
|
||||
ViewBag.PageCount = Math.Ceiling(Convert.ToDouble(builds.Count()) / Convert.ToDouble(pageSize));
|
||||
|
||||
return View("Index", pageBuilds);
|
||||
return View("index", pageBuilds);
|
||||
}
|
||||
|
||||
public ActionResult Source(TypeOfSource source, int page = 1)
|
||||
public ActionResult source(TypeOfSource source, int page = 1)
|
||||
{
|
||||
var builds = Build.SelectInBuildOrder().Where(b => b.SourceType == source);
|
||||
var pageBuilds = builds.Skip((page - 1) * pageSize).Take(pageSize);
|
||||
|
@ -66,13 +66,13 @@ public ActionResult Source(TypeOfSource source, int page = 1)
|
|||
ViewBag.PageNumber = page;
|
||||
ViewBag.PageCount = Math.Ceiling(Convert.ToDouble(builds.Count()) / Convert.ToDouble(pageSize));
|
||||
|
||||
return View("Index", pageBuilds);
|
||||
return View("index", pageBuilds);
|
||||
}
|
||||
|
||||
//
|
||||
// GET: /build/Info/5
|
||||
|
||||
public ActionResult Info(int id)
|
||||
public ActionResult info(int id)
|
||||
{
|
||||
Build b = Build.SelectById(id);
|
||||
|
||||
|
@ -87,7 +87,7 @@ public ActionResult Info(int id)
|
|||
//
|
||||
// GET: /build/Create
|
||||
[Authorize]
|
||||
public ActionResult Create()
|
||||
public ActionResult create()
|
||||
{
|
||||
return View();
|
||||
}
|
||||
|
@ -96,7 +96,7 @@ public ActionResult Create()
|
|||
// POST: /build/Create
|
||||
[Authorize]
|
||||
[HttpPost]
|
||||
public ActionResult Create(Build build)
|
||||
public ActionResult create(Build build)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
{
|
||||
|
@ -109,7 +109,7 @@ public ActionResult Create(Build build)
|
|||
{
|
||||
return View(build);
|
||||
}
|
||||
return RedirectToAction("Index");
|
||||
return RedirectToAction("index");
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -120,17 +120,17 @@ public ActionResult Create(Build build)
|
|||
//
|
||||
// GET: /build/Edit/5
|
||||
[Authorize]
|
||||
public ActionResult Edit(long id)
|
||||
public ActionResult edit(long id)
|
||||
{
|
||||
Build b = Build.SelectById(id);
|
||||
return View("Create", b);
|
||||
return View("create", b);
|
||||
}
|
||||
|
||||
//
|
||||
// POST: /build/Edit/5
|
||||
[Authorize]
|
||||
[HttpPost]
|
||||
public ActionResult Edit(long id, Build build)
|
||||
public ActionResult edit(long id, Build build)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
{
|
||||
|
@ -143,16 +143,16 @@ public ActionResult Edit(long id, Build build)
|
|||
return View();
|
||||
}
|
||||
|
||||
return RedirectToAction("Index");
|
||||
return RedirectToAction("index");
|
||||
}
|
||||
else
|
||||
{
|
||||
return View("Create", build);
|
||||
return View("create", build);
|
||||
}
|
||||
}
|
||||
|
||||
[Authorize(Users = "hounsell")]
|
||||
public ActionResult Delete(long id)
|
||||
public ActionResult delete(long id)
|
||||
{
|
||||
Build.DeleteById(id);
|
||||
return Redirect("/");
|
||||
|
|
|
@ -36,8 +36,8 @@ public async Task<ActionResult> index()
|
|||
select new RssItem()
|
||||
{
|
||||
Title = build.FullBuildString,
|
||||
Link = new RssUrl(string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Action("Info", new { controller = "Build", id = build.Id }))),
|
||||
Guid = new RssGuid() { IsPermaLink = true, Value = string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Action("Info", new { controller = "Build", id = build.Id })) },
|
||||
Link = new RssUrl(string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Action("info", new { controller = "Build", id = build.Id }))),
|
||||
Guid = new RssGuid() { IsPermaLink = true, Value = string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Action("info", new { controller = "Build", id = build.Id })) },
|
||||
}).ToList()
|
||||
}
|
||||
};
|
||||
|
@ -68,8 +68,8 @@ public async Task<ActionResult> added()
|
|||
select new RssItem()
|
||||
{
|
||||
Title = build.FullBuildString,
|
||||
Link = new RssUrl(string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Action("Info", new { controller = "Build", id = build.Id }))),
|
||||
Guid = new RssGuid() { IsPermaLink = true, Value = string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Action("Info", new { controller = "Build", id = build.Id })) },
|
||||
Link = new RssUrl(string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Action("info", new { controller = "Build", id = build.Id }))),
|
||||
Guid = new RssGuid() { IsPermaLink = true, Value = string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Action("info", new { controller = "Build", id = build.Id })) },
|
||||
PubDate = build.Added
|
||||
}).ToList()
|
||||
}
|
||||
|
@ -109,8 +109,8 @@ public async Task<ActionResult> version()
|
|||
select new RssItem()
|
||||
{
|
||||
Title = build.FullBuildString,
|
||||
Link = new RssUrl(string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Action("Info", new { controller = "Build", id = build.Id }))),
|
||||
Guid = new RssGuid() { IsPermaLink = true, Value = string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Action("Info", new { controller = "Build", id = build.Id })) },
|
||||
Link = new RssUrl(string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Action("info", new { controller = "Build", id = build.Id }))),
|
||||
Guid = new RssGuid() { IsPermaLink = true, Value = string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Action("info", new { controller = "Build", id = build.Id })) },
|
||||
}).ToList()
|
||||
}
|
||||
};
|
||||
|
@ -145,8 +145,8 @@ public async Task<ActionResult> flight(LevelOfFlight id)
|
|||
select new RssItem()
|
||||
{
|
||||
Title = build.FullBuildString,
|
||||
Link = new RssUrl(string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Action("Info", new { controller = "Build", id = build.Id }))),
|
||||
Guid = new RssGuid() { IsPermaLink = true, Value = string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Action("Info", new { controller = "Build", id = build.Id })) },
|
||||
Link = new RssUrl(string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Action("info", new { controller = "Build", id = build.Id }))),
|
||||
Guid = new RssGuid() { IsPermaLink = true, Value = string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Action("info", new { controller = "Build", id = build.Id })) },
|
||||
}).ToList()
|
||||
}
|
||||
};
|
||||
|
|
|
@ -11,18 +11,18 @@ namespace BuildFeed.Controllers
|
|||
public class supportController : Controller
|
||||
{
|
||||
// GET: support
|
||||
public ActionResult Index()
|
||||
public ActionResult index()
|
||||
{
|
||||
return View();
|
||||
}
|
||||
|
||||
public ActionResult Login()
|
||||
public ActionResult login()
|
||||
{
|
||||
return View();
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
public ActionResult Login(LoginUser ru)
|
||||
public ActionResult login(LoginUser ru)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
{
|
||||
|
@ -43,13 +43,13 @@ public ActionResult Login(LoginUser ru)
|
|||
}
|
||||
|
||||
[Authorize]
|
||||
public ActionResult Password()
|
||||
public ActionResult password()
|
||||
{
|
||||
return View();
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
public ActionResult Password(ChangePassword cp)
|
||||
public ActionResult password(ChangePassword cp)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
{
|
||||
|
@ -66,19 +66,19 @@ public ActionResult Password(ChangePassword cp)
|
|||
return View(cp);
|
||||
}
|
||||
|
||||
public ActionResult Logout()
|
||||
public ActionResult logout()
|
||||
{
|
||||
FormsAuthentication.SignOut();
|
||||
return Redirect("/");
|
||||
}
|
||||
|
||||
public ActionResult Register()
|
||||
public ActionResult register()
|
||||
{
|
||||
return View();
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
public ActionResult Register(RegistrationUser ru)
|
||||
public ActionResult register(RegistrationUser ru)
|
||||
{
|
||||
if (ModelState.IsValid)
|
||||
{
|
||||
|
|
|
@ -1,23 +1,7 @@
|
|||
@model IEnumerable<BuildFeed.Models.Build>
|
||||
|
||||
@{
|
||||
Func<object, string> GetDisplayName = o =>
|
||||
{
|
||||
var result = null as string;
|
||||
var display = o.GetType()
|
||||
.GetMember(o.ToString()).First()
|
||||
.GetCustomAttributes(false)
|
||||
.OfType<System.ComponentModel.DataAnnotations.DisplayAttribute>()
|
||||
.LastOrDefault();
|
||||
if (display != null)
|
||||
{
|
||||
result = display.GetName();
|
||||
}
|
||||
|
||||
return result ?? o.ToString();
|
||||
};
|
||||
|
||||
ViewBag.Action = ViewContext.Controller.ValueProvider.GetValue("action").RawValue.ToString();
|
||||
ViewBag.Action = ViewContext.Controller.ValueProvider.GetValue("action").RawValue.ToString().ToLower();
|
||||
ViewBag.Title = "BuildFeed";
|
||||
|
||||
|
||||
|
@ -28,23 +12,23 @@
|
|||
|
||||
switch (ViewBag.Action as string)
|
||||
{
|
||||
case "Index":
|
||||
case "index":
|
||||
ViewBag.Title = "BuildFeed | The collaborative build list";
|
||||
break;
|
||||
case "Lab":
|
||||
case "lab":
|
||||
ViewBag.ItemId = ViewContext.Controller.ValueProvider.GetValue("lab").RawValue;
|
||||
ViewBag.Title = string.Format("Builds from {1} | {0}", ViewBag.Title, ViewBag.ItemId);
|
||||
break;
|
||||
case "Year":
|
||||
case "year":
|
||||
ViewBag.ItemId = ViewContext.Controller.ValueProvider.GetValue("year").RawValue;
|
||||
ViewBag.Title = string.Format("Builds from {1} | {0}", ViewBag.Title, ViewBag.ItemId);
|
||||
break;
|
||||
case "Version":
|
||||
case "version":
|
||||
ViewBag.ItemId = string.Format("{0}.{1}", ViewContext.Controller.ValueProvider.GetValue("major").RawValue, ViewContext.Controller.ValueProvider.GetValue("minor").RawValue);
|
||||
ViewBag.Title = string.Format("Windows NT {1} | {0}", ViewBag.Title, ViewBag.ItemId);
|
||||
break;
|
||||
case "Source":
|
||||
ViewBag.ItemId = GetDisplayName(Enum.Parse(typeof(BuildFeed.Models.TypeOfSource), ViewContext.Controller.ValueProvider.GetValue("source").RawValue.ToString()));
|
||||
case "source":
|
||||
ViewBag.ItemId = DisplayHelpers.GetDisplayTextForEnum(Enum.Parse(typeof(BuildFeed.Models.TypeOfSource), ViewContext.Controller.ValueProvider.GetValue("source").RawValue.ToString()));
|
||||
ViewBag.Title = string.Format("{1} | {0}", ViewBag.Title, ViewBag.ItemId);
|
||||
break;
|
||||
}
|
||||
|
@ -54,15 +38,15 @@
|
|||
{
|
||||
@switch (ViewBag.Action as string)
|
||||
{
|
||||
case "Index":
|
||||
case "index":
|
||||
<meta name="description" content="BuildFeed is a collaborative build list for Microsoft Windows. Keep up to date with the latest Windows 10 builds or take a peek at the list back to 2000" />
|
||||
<meta property="og:description" content="BuildFeed is a collaborative build list for Microsoft Windows. Keep up to date with the latest Windows 10 builds or take a peek at the list back to 2000" />
|
||||
break;
|
||||
case "Lab":
|
||||
case "lab":
|
||||
<meta name="description" content="Check out all the known builds to come out of the Windows development lab @ViewBag.ItemId through BuildFeed, a collaborative Windows build list" />
|
||||
<meta property="og:description" content="Check out all the known builds to come out of the Windows development lab @ViewBag.ItemId through BuildFeed, a collaborative Windows build list" />
|
||||
break;
|
||||
case "Year":
|
||||
case "year":
|
||||
<meta name="description" content="View a list of all Windows builds compiled in @ViewBag.ViewId, and watch how Windows developed steadily over time, through the collaborative build list, BuildFeed" />
|
||||
<meta property="og:description" content="View a list of all Windows builds compiled in @ViewBag.ViewId, and watch how Windows developed steadily over time, through the collaborative build list, BuildFeed" />
|
||||
break;
|
||||
|
@ -76,14 +60,14 @@
|
|||
{
|
||||
<li>
|
||||
<div class="build-head">
|
||||
@Html.ActionLink("Info", "Info", new { id = item.Id }, new { @class = "btn btn-info btn-xs" })
|
||||
@Html.ActionLink("Info", "info", new { id = item.Id }, new { @class = "btn btn-info btn-xs" })
|
||||
@if (User.Identity.IsAuthenticated)
|
||||
{
|
||||
@Html.ActionLink("Edit", "Edit", new { id = item.Id }, new { @class = "btn btn-default btn-xs" })
|
||||
@Html.ActionLink("Edit", "edit", new { id = item.Id }, new { @class = "btn btn-default btn-xs" })
|
||||
}
|
||||
@if (User.Identity.Name == "hounsell")
|
||||
{
|
||||
@Html.ActionLink("Delete", "Delete", new { id = item.Id }, new { @class = "btn btn-danger btn-xs" })
|
||||
@Html.ActionLink("Delete", "delete", new { id = item.Id }, new { @class = "btn btn-danger btn-xs" })
|
||||
}
|
||||
<h3>@Html.DisplayFor(modelItem => item.FullBuildString)</h3>
|
||||
</div>
|
||||
|
@ -131,7 +115,7 @@
|
|||
<div id="filter-clear" class="panel-collapse collapse @(ViewBag.Action == "Index" ? "in" : "")">
|
||||
<div class="panel-body">
|
||||
<ul class="nav nav-pills nav-stacked">
|
||||
<li>@Html.ActionLink("Clear Filters", "Index", new { page = 1 })</li>
|
||||
<li>@Html.ActionLink("Clear Filters", "index", new { page = 1 })</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -150,7 +134,7 @@
|
|||
<ul class="nav nav-pills nav-stacked">
|
||||
@foreach (BuildFeed.Models.BuildVersion ver in BuildFeed.Models.Build.SelectBuildVersions())
|
||||
{
|
||||
<li><a href="@Url.Action("Version", new { minor = ver.Minor, major = ver.Major, page = 1 })">@string.Format("{0}.{1}", ver.Major, ver.Minor)</a></li>
|
||||
<li><a href="@Url.Action("version", new { minor = ver.Minor, major = ver.Major, page = 1 })">@string.Format("{0}.{1}", ver.Major, ver.Minor)</a></li>
|
||||
}
|
||||
</ul>
|
||||
</div>
|
||||
|
@ -170,7 +154,7 @@
|
|||
<ul class="nav nav-pills nav-stacked">
|
||||
@foreach (string lab in BuildFeed.Models.Build.SelectBuildLabs())
|
||||
{
|
||||
<li>@Html.ActionLink(lab, "Lab", new { lab = lab, page = 1 })</li>
|
||||
<li>@Html.ActionLink(lab, "lab", new { lab = lab, page = 1 })</li>
|
||||
}
|
||||
</ul>
|
||||
</div>
|
||||
|
@ -190,7 +174,7 @@
|
|||
<ul class="nav nav-pills nav-stacked">
|
||||
@foreach (int year in BuildFeed.Models.Build.SelectBuildYears())
|
||||
{
|
||||
<li>@Html.ActionLink(year.ToString(), "Year", new { year = year, page = 1 })</li>
|
||||
<li>@Html.ActionLink(year.ToString(), "year", new { year = year, page = 1 })</li>
|
||||
}
|
||||
</ul>
|
||||
</div>
|
||||
|
@ -210,7 +194,7 @@
|
|||
<ul class="nav nav-pills nav-stacked">
|
||||
@foreach (BuildFeed.Models.TypeOfSource s in Enum.GetValues(typeof(BuildFeed.Models.TypeOfSource)).Cast<BuildFeed.Models.TypeOfSource>().OrderBy(d => d.ToString()))
|
||||
{
|
||||
<li><a href="@Url.Action("Source", new { source = s })">@Html.DisplayFor(TypeOfSource => s, "Enumeration")</a></li>
|
||||
<li><a href="@Url.Action("source", new { source = s })">@Html.DisplayFor(TypeOfSource => s, "Enumeration")</a></li>
|
||||
}
|
||||
</ul>
|
||||
</div>
|
||||
|
@ -230,15 +214,15 @@
|
|||
<ul class="nav nav-pills nav-stacked">
|
||||
@if (User.Identity.IsAuthenticated)
|
||||
{
|
||||
<li>@Html.ActionLink("Add a build", "Create", "build")</li>
|
||||
<li>@Html.ActionLink("Add a build", "create", "build")</li>
|
||||
<li> </li>
|
||||
<li>@Html.ActionLink("Change your password", "Password", "support")</li>
|
||||
<li>@Html.ActionLink("Log out", "Logout", "support")</li>
|
||||
<li>@Html.ActionLink("Change your password", "password", "support")</li>
|
||||
<li>@Html.ActionLink("Log out", "logout", "support")</li>
|
||||
}
|
||||
else
|
||||
{
|
||||
<li>@Html.ActionLink("Log in", "Login", "support")</li>
|
||||
<li>@Html.ActionLink("Register", "Register", "support")</li>
|
||||
<li>@Html.ActionLink("Log in", "login", "support")</li>
|
||||
<li>@Html.ActionLink("Register", "register", "support")</li>
|
||||
}
|
||||
</ul>
|
||||
</div>
|
||||
|
|
|
@ -2,22 +2,4 @@
|
|||
|
||||
@model Enum
|
||||
|
||||
@{
|
||||
Func<object, string> GetDisplayName = o =>
|
||||
{
|
||||
var result = null as string;
|
||||
var display = o.GetType()
|
||||
.GetMember(o.ToString()).First()
|
||||
.GetCustomAttributes(false)
|
||||
.OfType<DisplayAttribute>()
|
||||
.LastOrDefault();
|
||||
if (display != null)
|
||||
{
|
||||
result = display.GetName();
|
||||
}
|
||||
|
||||
return result ?? o.ToString();
|
||||
};
|
||||
}
|
||||
|
||||
@GetDisplayName(ViewData.Model)
|
||||
@DisplayHelpers.GetDisplayTextForEnum(ViewData.Model)
|
||||
|
|
|
@ -3,27 +3,11 @@
|
|||
@model Enum
|
||||
|
||||
@{
|
||||
Func<object, string> GetDisplayName = o =>
|
||||
{
|
||||
var result = null as string;
|
||||
var display = o.GetType()
|
||||
.GetMember(o.ToString()).First()
|
||||
.GetCustomAttributes(false)
|
||||
.OfType<DisplayAttribute>()
|
||||
.LastOrDefault();
|
||||
if (display != null)
|
||||
{
|
||||
result = display.GetName();
|
||||
}
|
||||
|
||||
return result ?? o.ToString();
|
||||
};
|
||||
|
||||
var values = Enum.GetValues(ViewData.ModelMetadata.ModelType).Cast<object>()
|
||||
.Select(v => new SelectListItem
|
||||
{
|
||||
Selected = v.Equals(Model),
|
||||
Text = GetDisplayName(v),
|
||||
Text = DisplayHelpers.GetDisplayTextForEnum(v),
|
||||
Value = v.ToString()
|
||||
});
|
||||
}
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
<link href="//fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,700,400italic" rel="stylesheet" type="text/css" />
|
||||
<link rel="shortcut icon" href="~/favicon.ico" />
|
||||
<link rel="icon" href="~/favicon.ico" />
|
||||
<link rel="canonical" href="@Url.Action()" />
|
||||
<meta name="application-name" content="BuildFeed" />
|
||||
|
||||
@Styles.Render("~/content/css")
|
||||
|
@ -32,7 +33,7 @@
|
|||
<header id="page-header">
|
||||
<div class="row">
|
||||
<div class="col-sm-9">
|
||||
<h1>@Html.ActionLink("BuildFeed", "Index", new { controller = "build", area = "", page = 1 })</h1>
|
||||
<h1>@Html.ActionLink("BuildFeed", "index", new { controller = "build", area = "", page = 1 })</h1>
|
||||
</div>
|
||||
<div class="col-sm-3 text-right">
|
||||
<p class="social-links">
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
<header id="page-header">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<h1>@Html.ActionLink("BuildFeed", "Index", new { controller = "build", area = "", page = 1 })</h1>
|
||||
<h1>@Html.ActionLink("BuildFeed", "index", new { controller = "build", area = "", page = 1 })</h1>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
<package id="Microsoft.AspNet.WebPages" version="3.2.2" targetFramework="net45" />
|
||||
<package id="Microsoft.jQuery.Unobtrusive.Validation" version="3.2.2" targetFramework="net45" />
|
||||
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net45" />
|
||||
<package id="Newtonsoft.Json" version="6.0.5" targetFramework="net45" />
|
||||
<package id="Newtonsoft.Json" version="6.0.6" targetFramework="net45" />
|
||||
<package id="NServiceKit.Common" version="1.0.27" targetFramework="net45" />
|
||||
<package id="NServiceKit.Redis" version="1.0.7" targetFramework="net45" />
|
||||
<package id="NServiceKit.Text" version="1.0.10" targetFramework="net45" />
|
||||
|
|
Loading…
Reference in New Issue
Block a user