mirror of
https://gitlab.com/buildfeed/BuildFeed.git
synced 2024-03-22 21:10:34 +08:00
RSS Library swap
This commit is contained in:
parent
7d6ed90e3d
commit
ccb4e3d024
|
@ -9,14 +9,14 @@ public class RouteConfig
|
||||||
public static void RegisterRoutes(RouteCollection routes)
|
public static void RegisterRoutes(RouteCollection routes)
|
||||||
{
|
{
|
||||||
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
|
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
|
||||||
routes.MapHttpRoute("API", "api/{action}/{id}",
|
|
||||||
new
|
|
||||||
{
|
|
||||||
controller = "api",
|
|
||||||
action = "GetBuilds",
|
|
||||||
id = UrlParameter.Optional
|
|
||||||
});
|
|
||||||
routes.AppendTrailingSlash = true;
|
routes.AppendTrailingSlash = true;
|
||||||
|
routes.MapHttpRoute("API", "api/{action}/{id}", new
|
||||||
|
{
|
||||||
|
controller = "api",
|
||||||
|
action = "GetBuilds",
|
||||||
|
id = UrlParameter.Optional
|
||||||
|
});
|
||||||
routes.MapMvcAttributeRoutes();
|
routes.MapMvcAttributeRoutes();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -106,6 +106,7 @@
|
||||||
<Private>True</Private>
|
<Private>True</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
|
<Reference Include="System.ComponentModel.Composition" />
|
||||||
<Reference Include="System.Data" />
|
<Reference Include="System.Data" />
|
||||||
<Reference Include="System.Data.DataSetExtensions" />
|
<Reference Include="System.Data.DataSetExtensions" />
|
||||||
<Reference Include="System.Drawing" />
|
<Reference Include="System.Drawing" />
|
||||||
|
@ -168,8 +169,9 @@
|
||||||
<Reference Include="System.Net.Http.WebRequest">
|
<Reference Include="System.Net.Http.WebRequest">
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System.Xml.Linq" />
|
<Reference Include="System.Xml.Linq" />
|
||||||
<Reference Include="X.Web.RSS">
|
<Reference Include="WilderMinds.RssSyndication, Version=1.0.4.0, Culture=neutral, processorArchitecture=MSIL">
|
||||||
<HintPath>..\packages\xwebrss.1.2.1.130\lib\net40-client\X.Web.RSS.dll</HintPath>
|
<HintPath>..\packages\WilderMinds.RssSyndication.1.0.4\lib\netstandard1.3\WilderMinds.RssSyndication.dll</HintPath>
|
||||||
|
<Private>True</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
@ -6,10 +6,7 @@
|
||||||
using System.Web.Mvc;
|
using System.Web.Mvc;
|
||||||
using BuildFeed.Code;
|
using BuildFeed.Code;
|
||||||
using BuildFeed.Models;
|
using BuildFeed.Models;
|
||||||
using X.Web.RSS;
|
using WilderMinds.RssSyndication;
|
||||||
using X.Web.RSS.Enumerators;
|
|
||||||
using X.Web.RSS.Structure;
|
|
||||||
using X.Web.RSS.Structure.Validators;
|
|
||||||
|
|
||||||
namespace BuildFeed.Controllers
|
namespace BuildFeed.Controllers
|
||||||
{
|
{
|
||||||
|
@ -23,75 +20,58 @@ public class RssController : LocalController
|
||||||
[Route("rss/compiled")]
|
[Route("rss/compiled")]
|
||||||
public async Task<ActionResult> Index()
|
public async Task<ActionResult> Index()
|
||||||
{
|
{
|
||||||
var builds = await _bModel.SelectBuildsByCompileDate(RSS_SIZE, 0);
|
List<BuildModel> builds = await _bModel.SelectBuildsByCompileDate(RSS_SIZE, 0);
|
||||||
|
|
||||||
RssDocument rdoc = new RssDocument
|
Feed feed = new Feed
|
||||||
{
|
{
|
||||||
Channel = new RssChannel
|
Title = "BuildFeed RSS - Recently Compiled",
|
||||||
{
|
Link = new Uri($"{Request.Url.Scheme}://{Request.Url.Authority}"),
|
||||||
Title = "BuildFeed RSS - Recently Compiled",
|
Items = (from build in builds
|
||||||
Description = "",
|
select new Item
|
||||||
Generator = "BuildFeed.net RSS Controller",
|
{
|
||||||
Link = new RssUrl($"{Request.Url.Scheme}://{Request.Url.Authority}"),
|
Title = build.FullBuildString,
|
||||||
SkipHours = new List<Hour>(),
|
Link = new Uri($"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action(nameof(FrontController.ViewBuild), new { controller = "Front", id = build.Id })}"),
|
||||||
SkipDays = new List<Day>(),
|
Permalink = $"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action(nameof(FrontController.ViewBuild), new { controller = "Front", id = build.Id })}",
|
||||||
Items = (from build in builds
|
Categories = {
|
||||||
select new RssItem
|
build.Family.ToString()
|
||||||
{
|
},
|
||||||
Title = build.FullBuildString,
|
PublishDate = DateTime.SpecifyKind(build.BuildTime.GetValueOrDefault(), DateTimeKind.Utc)
|
||||||
Link = new RssUrl($"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action("ViewBuild", new { controller = "Front", id = build.Id })}"),
|
}).ToList()
|
||||||
Guid = new RssGuid
|
};
|
||||||
{
|
|
||||||
IsPermaLink = true,
|
|
||||||
Value = $"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action("ViewBuild", new { controller = "Front", id = build.Id })}"
|
|
||||||
}
|
|
||||||
}).ToList()
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
return new ContentResult
|
return new ContentResult
|
||||||
{
|
{
|
||||||
Content = rdoc.ToXml(),
|
Content = feed.Serialize(),
|
||||||
ContentType = "application/rss+xml",
|
ContentType = "application/rss+xml",
|
||||||
ContentEncoding = Encoding.UTF8
|
ContentEncoding = Encoding.UTF8
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
[Route("rss/added")]
|
[Route("rss/added")]
|
||||||
public async Task<ActionResult> Added()
|
public async Task<ActionResult> Added()
|
||||||
{
|
{
|
||||||
var builds = await _bModel.SelectBuildsByAddedDate(RSS_SIZE, 0);
|
List<BuildModel> builds = await _bModel.SelectBuildsByAddedDate(RSS_SIZE, 0);
|
||||||
|
|
||||||
RssDocument rdoc = new RssDocument()
|
Feed feed = new Feed
|
||||||
{
|
{
|
||||||
Channel = new RssChannel()
|
Title = "BuildFeed RSS - Recently Added",
|
||||||
{
|
Link = new Uri($"{Request.Url.Scheme}://{Request.Url.Authority}"),
|
||||||
Title = "BuildFeed RSS - Recently Added",
|
Items = (from build in builds
|
||||||
Description = "",
|
select new Item
|
||||||
Generator = "BuildFeed.net RSS Controller",
|
{
|
||||||
Link = new RssUrl($"{Request.Url.Scheme}://{Request.Url.Authority}"),
|
Title = build.FullBuildString,
|
||||||
SkipHours = new List<Hour>(),
|
Link = new Uri($"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action(nameof(FrontController.ViewBuild), new { controller = "Front", id = build.Id })}"),
|
||||||
SkipDays = new List<Day>(),
|
Permalink = $"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action(nameof(FrontController.ViewBuild), new { controller = "Front", id = build.Id })}",
|
||||||
|
Categories = {
|
||||||
Items = (from build in builds
|
build.Family.ToString()
|
||||||
select new RssItem()
|
},
|
||||||
{
|
PublishDate = DateTime.SpecifyKind(build.Added, DateTimeKind.Utc)
|
||||||
Title = build.FullBuildString,
|
}).ToList()
|
||||||
Link = new RssUrl($"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action("ViewBuild", new { controller = "Front", id = build.Id })}"),
|
|
||||||
Guid = new RssGuid()
|
|
||||||
{
|
|
||||||
IsPermaLink = true,
|
|
||||||
Value = $"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action("ViewBuild", new { controller = "Front", id = build.Id })}"
|
|
||||||
},
|
|
||||||
Category = new RssCategory() { Text = build.Family.ToString() },
|
|
||||||
InternalPubDate = new RssDate(build.Added).DateStringISO8601 // bit of a dirty hack to work around problem in X.Web.RSS with the date format.
|
|
||||||
}).ToList()
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return new ContentResult
|
return new ContentResult
|
||||||
{
|
{
|
||||||
Content = rdoc.ToXml(),
|
Content = feed.Serialize(),
|
||||||
ContentType = "application/rss+xml",
|
ContentType = "application/rss+xml",
|
||||||
ContentEncoding = Encoding.UTF8
|
ContentEncoding = Encoding.UTF8
|
||||||
};
|
};
|
||||||
|
@ -100,37 +80,28 @@ public async Task<ActionResult> Added()
|
||||||
[Route("rss/leaked")]
|
[Route("rss/leaked")]
|
||||||
public async Task<ActionResult> Leaked()
|
public async Task<ActionResult> Leaked()
|
||||||
{
|
{
|
||||||
var builds = await _bModel.SelectBuildsByLeakedDate(RSS_SIZE, 0);
|
List<BuildModel> builds = await _bModel.SelectBuildsByLeakedDate(RSS_SIZE, 0);
|
||||||
|
|
||||||
RssDocument rdoc = new RssDocument()
|
Feed feed = new Feed
|
||||||
{
|
{
|
||||||
Channel = new RssChannel()
|
Title = "BuildFeed RSS - Recently Leaked",
|
||||||
{
|
Link = new Uri($"{Request.Url.Scheme}://{Request.Url.Authority}"),
|
||||||
Title = "BuildFeed RSS - Recently Leaked",
|
Items = (from build in builds
|
||||||
Description = "",
|
select new Item
|
||||||
Generator = "BuildFeed.net RSS Controller",
|
{
|
||||||
Link = new RssUrl($"{Request.Url.Scheme}://{Request.Url.Authority}"),
|
Title = build.FullBuildString,
|
||||||
SkipHours = new List<Hour>(),
|
Link = new Uri($"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action(nameof(FrontController.ViewBuild), new { controller = "Front", id = build.Id })}"),
|
||||||
SkipDays = new List<Day>(),
|
Permalink = $"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action(nameof(FrontController.ViewBuild), new { controller = "Front", id = build.Id })}",
|
||||||
|
Categories = {
|
||||||
Items = (from build in builds
|
build.Family.ToString()
|
||||||
select new RssItem()
|
},
|
||||||
{
|
PublishDate = DateTime.SpecifyKind(build.LeakDate.GetValueOrDefault(), DateTimeKind.Utc)
|
||||||
Title = build.FullBuildString,
|
}).ToList()
|
||||||
Link = new RssUrl($"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action("ViewBuild", new { controller = "Front", id = build.Id })}"),
|
|
||||||
Guid = new RssGuid()
|
|
||||||
{
|
|
||||||
IsPermaLink = true,
|
|
||||||
Value = $"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action("ViewBuild", new { controller = "Front", id = build.Id })}"
|
|
||||||
},
|
|
||||||
InternalPubDate = new RssDate(build.LeakDate.Value).DateStringISO8601 // bit of a dirty hack to work around problem in X.Web.RSS with the date format.
|
|
||||||
}).ToList()
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return new ContentResult
|
return new ContentResult
|
||||||
{
|
{
|
||||||
Content = rdoc.ToXml(),
|
Content = feed.Serialize(),
|
||||||
ContentType = "application/rss+xml",
|
ContentType = "application/rss+xml",
|
||||||
ContentEncoding = Encoding.UTF8
|
ContentEncoding = Encoding.UTF8
|
||||||
};
|
};
|
||||||
|
@ -139,75 +110,27 @@ public async Task<ActionResult> Leaked()
|
||||||
[Route("rss/version")]
|
[Route("rss/version")]
|
||||||
public async Task<ActionResult> Version()
|
public async Task<ActionResult> Version()
|
||||||
{
|
{
|
||||||
var builds = await _bModel.SelectBuildsByOrder(RSS_SIZE, 0);
|
List<BuildModel> builds = await _bModel.SelectBuildsByOrder(RSS_SIZE, 0);
|
||||||
|
|
||||||
|
Feed feed = new Feed
|
||||||
RssDocument rdoc = new RssDocument()
|
|
||||||
{
|
{
|
||||||
Channel = new RssChannel()
|
Title = "BuildFeed RSS - Highest Version",
|
||||||
{
|
Link = new Uri($"{Request.Url.Scheme}://{Request.Url.Authority}"),
|
||||||
Title = "BuildFeed RSS - Highest Version",
|
Items = (from build in builds
|
||||||
Description = "",
|
select new Item
|
||||||
Generator = "BuildFeed.net RSS Controller",
|
{
|
||||||
Link = new RssUrl($"{Request.Url.Scheme}://{Request.Url.Authority}"),
|
Title = build.FullBuildString,
|
||||||
SkipHours = new List<Hour>(),
|
Link = new Uri($"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action(nameof(FrontController.ViewBuild), new { controller = "Front", id = build.Id })}"),
|
||||||
SkipDays = new List<Day>(),
|
Permalink = $"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action(nameof(FrontController.ViewBuild), new { controller = "Front", id = build.Id })}",
|
||||||
|
Categories = {
|
||||||
Items = (from build in builds
|
build.Family.ToString()
|
||||||
select new RssItem()
|
}
|
||||||
{
|
}).ToList()
|
||||||
Title = build.FullBuildString,
|
|
||||||
Link = new RssUrl($"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action("ViewBuild", new { controller = "Front", id = build.Id })}"),
|
|
||||||
Guid = new RssGuid()
|
|
||||||
{
|
|
||||||
IsPermaLink = true,
|
|
||||||
Value = $"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action("ViewBuild", new { controller = "Front", id = build.Id })}"
|
|
||||||
},
|
|
||||||
}).ToList()
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return new ContentResult
|
return new ContentResult
|
||||||
{
|
{
|
||||||
Content = rdoc.ToXml(),
|
Content = feed.Serialize(),
|
||||||
ContentType = "application/rss+xml",
|
|
||||||
ContentEncoding = Encoding.UTF8
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
[Route("rss/flight/{id}")]
|
|
||||||
public async Task<ActionResult> Flight(LevelOfFlight id)
|
|
||||||
{
|
|
||||||
var builds = await _bModel.SelectFlight(id, RSS_SIZE, 0);
|
|
||||||
|
|
||||||
RssDocument rdoc = new RssDocument()
|
|
||||||
{
|
|
||||||
Channel = new RssChannel()
|
|
||||||
{
|
|
||||||
Title = $"BuildFeed RSS - {id} Flight Level",
|
|
||||||
Description = "",
|
|
||||||
Generator = "BuildFeed.net RSS Controller",
|
|
||||||
Link = new RssUrl($"{Request.Url.Scheme}://{Request.Url.Authority}"),
|
|
||||||
SkipHours = new List<Hour>(),
|
|
||||||
SkipDays = new List<Day>(),
|
|
||||||
|
|
||||||
Items = (from build in builds
|
|
||||||
select new RssItem()
|
|
||||||
{
|
|
||||||
Title = build.FullBuildString,
|
|
||||||
Link = new RssUrl($"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action("ViewBuild", new { controller = "Front", id = build.Id })}"),
|
|
||||||
Guid = new RssGuid()
|
|
||||||
{
|
|
||||||
IsPermaLink = true,
|
|
||||||
Value = $"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action("ViewBuild", new { controller = "Front", id = build.Id })}"
|
|
||||||
},
|
|
||||||
}).ToList()
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
return new ContentResult
|
|
||||||
{
|
|
||||||
Content = rdoc.ToXml(),
|
|
||||||
ContentType = "application/rss+xml",
|
ContentType = "application/rss+xml",
|
||||||
ContentEncoding = Encoding.UTF8
|
ContentEncoding = Encoding.UTF8
|
||||||
};
|
};
|
||||||
|
@ -216,36 +139,27 @@ public async Task<ActionResult> Flight(LevelOfFlight id)
|
||||||
[Route("rss/lab/{lab}")]
|
[Route("rss/lab/{lab}")]
|
||||||
public async Task<ActionResult> Lab(string lab)
|
public async Task<ActionResult> Lab(string lab)
|
||||||
{
|
{
|
||||||
var builds = await _bModel.SelectLab(lab, RSS_SIZE, 0);
|
List<BuildModel> builds = await _bModel.SelectLab(lab, RSS_SIZE, 0);
|
||||||
|
|
||||||
RssDocument rdoc = new RssDocument()
|
Feed feed = new Feed
|
||||||
{
|
{
|
||||||
Channel = new RssChannel()
|
Title = $"BuildFeed RSS - {lab} Lab",
|
||||||
{
|
Link = new Uri($"{Request.Url.Scheme}://{Request.Url.Authority}"),
|
||||||
Title = $"BuildFeed RSS - {lab} Lab",
|
Items = (from build in builds
|
||||||
Description = "",
|
select new Item
|
||||||
Generator = "BuildFeed.net RSS Controller",
|
{
|
||||||
Link = new RssUrl($"{Request.Url.Scheme}://{Request.Url.Authority}"),
|
Title = build.FullBuildString,
|
||||||
SkipHours = new List<Hour>(),
|
Link = new Uri($"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action(nameof(FrontController.ViewBuild), new { controller = "Front", id = build.Id })}"),
|
||||||
SkipDays = new List<Day>(),
|
Permalink = $"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action(nameof(FrontController.ViewBuild), new { controller = "Front", id = build.Id })}",
|
||||||
|
Categories = {
|
||||||
Items = (from build in builds
|
build.Family.ToString()
|
||||||
select new RssItem()
|
}
|
||||||
{
|
}).ToList()
|
||||||
Title = build.FullBuildString,
|
|
||||||
Link = new RssUrl($"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action("ViewBuild", new { controller = "Front", id = build.Id })}"),
|
|
||||||
Guid = new RssGuid()
|
|
||||||
{
|
|
||||||
IsPermaLink = true,
|
|
||||||
Value = $"{Request.Url.Scheme}://{Request.Url.Authority}{Url.Action("ViewBuild", new { controller = "Front", id = build.Id })}"
|
|
||||||
},
|
|
||||||
}).ToList()
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return new ContentResult
|
return new ContentResult
|
||||||
{
|
{
|
||||||
Content = rdoc.ToXml(),
|
Content = feed.Serialize(),
|
||||||
ContentType = "application/rss+xml",
|
ContentType = "application/rss+xml",
|
||||||
ContentEncoding = Encoding.UTF8
|
ContentEncoding = Encoding.UTF8
|
||||||
};
|
};
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
|
|
||||||
namespace BuildFeed
|
namespace BuildFeed
|
||||||
{
|
{
|
||||||
public class MvcApplication : System.Web.HttpApplication
|
public class MvcApplication : HttpApplication
|
||||||
{
|
{
|
||||||
protected void Application_Start()
|
protected void Application_Start()
|
||||||
{
|
{
|
||||||
|
@ -42,4 +42,4 @@ public override string GetVaryByCustomString(HttpContext context, string custom)
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -9,16 +9,6 @@
|
||||||
<li><a href="@Url.Action("Leaked", new { controller = "Rss" })" title="@BuildFeed.Local.Support.RecentlyLeaked"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Support.RecentlyLeaked</a></li>
|
<li><a href="@Url.Action("Leaked", new { controller = "Rss" })" title="@BuildFeed.Local.Support.RecentlyLeaked"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Support.RecentlyLeaked</a></li>
|
||||||
<li><a href="@Url.Action("Added", new { controller = "Rss" })" title="@BuildFeed.Local.Support.RecentlyAdded"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Support.RecentlyAdded</a></li>
|
<li><a href="@Url.Action("Added", new { controller = "Rss" })" title="@BuildFeed.Local.Support.RecentlyAdded"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Support.RecentlyAdded</a></li>
|
||||||
<li><a href="@Url.Action("Version", new { controller = "Rss" })" title="@BuildFeed.Local.Support.HighestVersion"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Support.HighestVersion</a></li>
|
<li><a href="@Url.Action("Version", new { controller = "Rss" })" title="@BuildFeed.Local.Support.HighestVersion"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Support.HighestVersion</a></li>
|
||||||
<li>
|
|
||||||
@BuildFeed.Local.Model.FlightLevel
|
|
||||||
<ul>
|
|
||||||
<li><a href="@Url.Action("Flight", new { controller = "Rss", id = "wis" })" title="@BuildFeed.Local.Model.FlightWIS"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Model.FlightWIS</a></li>
|
|
||||||
<li><a href="@Url.Action("Flight", new { controller = "Rss", id = "wif" })" title="@BuildFeed.Local.Model.FlightWIF"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Model.FlightWIF</a></li>
|
|
||||||
<li><a href="@Url.Action("Flight", new { controller = "Rss", id = "osg" })" title="@BuildFeed.Local.Model.FlightOSG"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Model.FlightOSG</a></li>
|
|
||||||
<li><a href="@Url.Action("Flight", new { controller = "Rss", id = "msit" })" title="@BuildFeed.Local.Model.FlightMSIT"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Model.FlightMSIT</a></li>
|
|
||||||
<li><a href="@Url.Action("Flight", new { controller = "Rss", id = "canary" })" title="@BuildFeed.Local.Model.FlightCanary"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Model.FlightCanary</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li>
|
<li>
|
||||||
<a href="#rss-labs" data-toggle="collapse">@BuildFeed.Local.Model.Lab</a>
|
<a href="#rss-labs" data-toggle="collapse">@BuildFeed.Local.Model.Lab</a>
|
||||||
<ul id="rss-labs" class="collapse">
|
<ul id="rss-labs" class="collapse">
|
||||||
|
|
|
@ -69,16 +69,6 @@
|
||||||
<li><a href="@Url.Action("Leaked", new { controller = "Rss" })" title="@BuildFeed.Local.Support.RecentlyLeaked"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Support.RecentlyLeaked</a></li>
|
<li><a href="@Url.Action("Leaked", new { controller = "Rss" })" title="@BuildFeed.Local.Support.RecentlyLeaked"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Support.RecentlyLeaked</a></li>
|
||||||
<li><a href="@Url.Action("Added", new { controller = "Rss" })" title="@BuildFeed.Local.Support.RecentlyAdded"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Support.RecentlyAdded</a></li>
|
<li><a href="@Url.Action("Added", new { controller = "Rss" })" title="@BuildFeed.Local.Support.RecentlyAdded"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Support.RecentlyAdded</a></li>
|
||||||
<li><a href="@Url.Action("Version", new { controller = "Rss" })" title="@BuildFeed.Local.Support.HighestVersion"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Support.HighestVersion</a></li>
|
<li><a href="@Url.Action("Version", new { controller = "Rss" })" title="@BuildFeed.Local.Support.HighestVersion"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Support.HighestVersion</a></li>
|
||||||
<li>
|
|
||||||
@BuildFeed.Local.Model.FlightLevel
|
|
||||||
<ul>
|
|
||||||
<li><a href="@Url.Action("Flight", new { controller = "Rss", id = "wis" })" title="@BuildFeed.Local.Model.FlightWIS"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Model.FlightWIS</a></li>
|
|
||||||
<li><a href="@Url.Action("Flight", new { controller = "Rss", id = "wif" })" title="@BuildFeed.Local.Model.FlightWIF"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Model.FlightWIF</a></li>
|
|
||||||
<li><a href="@Url.Action("Flight", new { controller = "Rss", id = "osg" })" title="@BuildFeed.Local.Model.FlightOSG"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Model.FlightOSG</a></li>
|
|
||||||
<li><a href="@Url.Action("Flight", new { controller = "Rss", id = "msit" })" title="@BuildFeed.Local.Model.FlightMSIT"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Model.FlightMSIT</a></li>
|
|
||||||
<li><a href="@Url.Action("Flight", new { controller = "Rss", id = "canary" })" title="@BuildFeed.Local.Model.FlightCanary"><i class="fa fa-sm fa-rss"></i> @BuildFeed.Local.Model.FlightCanary</a></li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li>
|
<li>
|
||||||
<a href="#rss-labs" data-toggle="collapse">@BuildFeed.Local.Model.Lab</a>
|
<a href="#rss-labs" data-toggle="collapse">@BuildFeed.Local.Model.Lab</a>
|
||||||
<ul id="rss-labs" class="collapse">
|
<ul id="rss-labs" class="collapse">
|
||||||
|
|
|
@ -63,16 +63,14 @@
|
||||||
<match url="^actions/info/([0-9a-f-]+)/(\?.+)?$" />
|
<match url="^actions/info/([0-9a-f-]+)/(\?.+)?$" />
|
||||||
<action type="Redirect" redirectType="Permanent" url="/build/{R:1}/{R:2}" />
|
<action type="Redirect" redirectType="Permanent" url="/build/{R:1}/{R:2}" />
|
||||||
</rule>
|
</rule>
|
||||||
|
<rule name="(2016-07) RSS Flights">
|
||||||
|
<match url="^rss/flight/([a-z-]+)/(\?.+)?$" />
|
||||||
|
<action type="Redirect" redirectType="Permanent" url="/rss/" />
|
||||||
|
</rule>
|
||||||
</rules>
|
</rules>
|
||||||
<rewriteMaps>
|
<rewriteMaps>
|
||||||
<rewriteMap name="Support Pages">
|
<rewriteMap name="Support Pages">
|
||||||
<add key="/statistics/" value="/" />
|
<add key="/statistics/" value="/" />
|
||||||
<add key="/rss/flight/low/" value="/rss/feed/wif/" />
|
|
||||||
<add key="/rss/flight/medium/" value="/rss/feed/msit/" />
|
|
||||||
<add key="/rss/flight/high/" value="/rss/feed/osg/" />
|
|
||||||
<add key="/rss/feed/low/" value="/rss/feed/wif/" />
|
|
||||||
<add key="/rss/feed/medium/" value="/rss/feed/msit/" />
|
|
||||||
<add key="/rss/feed/high/" value="/rss/feed/osg/" />
|
|
||||||
<add key="/support/question/" value="/" />
|
<add key="/support/question/" value="/" />
|
||||||
<add key="/support/stats/" value="/" />
|
<add key="/support/stats/" value="/" />
|
||||||
<add key="/support/rss/" value="/rss/" />
|
<add key="/support/rss/" value="/rss/" />
|
||||||
|
|
|
@ -21,6 +21,7 @@
|
||||||
<package id="Microsoft.AspNet.WebApi.WebHost" version="5.2.3" targetFramework="net45" />
|
<package id="Microsoft.AspNet.WebApi.WebHost" version="5.2.3" targetFramework="net45" />
|
||||||
<package id="Microsoft.AspNet.WebPages" version="3.2.3" targetFramework="net45" />
|
<package id="Microsoft.AspNet.WebPages" version="3.2.3" targetFramework="net45" />
|
||||||
<package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="1.0.1" targetFramework="net461" />
|
<package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="1.0.1" targetFramework="net461" />
|
||||||
|
<package id="Microsoft.CSharp" version="4.0.1" targetFramework="net461" />
|
||||||
<package id="Microsoft.jQuery.Unobtrusive.Validation" version="3.2.3" targetFramework="net45" />
|
<package id="Microsoft.jQuery.Unobtrusive.Validation" version="3.2.3" targetFramework="net45" />
|
||||||
<package id="Microsoft.Net.Compilers" version="1.3.2" targetFramework="net461" developmentDependency="true" />
|
<package id="Microsoft.Net.Compilers" version="1.3.2" targetFramework="net461" developmentDependency="true" />
|
||||||
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net45" />
|
<package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net45" />
|
||||||
|
@ -28,5 +29,10 @@
|
||||||
<package id="MongoDB.Driver" version="2.2.4" targetFramework="net461" />
|
<package id="MongoDB.Driver" version="2.2.4" targetFramework="net461" />
|
||||||
<package id="MongoDB.Driver.Core" version="2.2.4" targetFramework="net461" />
|
<package id="MongoDB.Driver.Core" version="2.2.4" targetFramework="net461" />
|
||||||
<package id="Newtonsoft.Json" version="8.0.3" targetFramework="net461" />
|
<package id="Newtonsoft.Json" version="8.0.3" targetFramework="net461" />
|
||||||
<package id="xwebrss" version="1.2.1.130" targetFramework="net45" />
|
<package id="System.Collections" version="4.0.11" targetFramework="net461" />
|
||||||
|
<package id="System.Linq" version="4.1.0" targetFramework="net461" />
|
||||||
|
<package id="System.Runtime" version="4.1.0" targetFramework="net461" />
|
||||||
|
<package id="System.Threading" version="4.0.11" targetFramework="net461" />
|
||||||
|
<package id="System.Xml.XDocument" version="4.0.11" targetFramework="net461" />
|
||||||
|
<package id="WilderMinds.RssSyndication" version="1.0.4" targetFramework="net461" />
|
||||||
</packages>
|
</packages>
|
Loading…
Reference in New Issue
Block a user