Renaming templates that are done
This commit is contained in:
@@ -494,23 +494,23 @@
|
||||
<Content Include="masterpages\AttachFile.master" />
|
||||
<Content Include="masterpages\Authentication.master" />
|
||||
<Content Include="masterpages\blank.master" />
|
||||
<Content Include="masterpages\Community.master" />
|
||||
<Content Include="masterpages\__Community.master" />
|
||||
<Content Include="masterpages\ConfigureProjectLicenses.master" />
|
||||
<Content Include="masterpages\ContentLanding.master" />
|
||||
<Content Include="masterpages\__ContentLanding.master" />
|
||||
<Content Include="masterpages\CreateWikiPage.master" />
|
||||
<Content Include="masterpages\Deli.master" />
|
||||
<Content Include="masterpages\DeliCart.master" />
|
||||
<Content Include="masterpages\DeliCartDetails.master" />
|
||||
<Content Include="masterpages\Dialogs.master" />
|
||||
<Content Include="masterpages\DisplayTopic.master" />
|
||||
<Content Include="masterpages\DocumentationMainpage.master" />
|
||||
<Content Include="masterpages\DocumentationSubpage.master" />
|
||||
<Content Include="masterpages\__DocumentationMainpage.master" />
|
||||
<Content Include="masterpages\__DocumentationSubpage.master" />
|
||||
<Content Include="masterpages\EditProject.master" />
|
||||
<Content Include="masterpages\Event.master" />
|
||||
<Content Include="masterpages\Eventnews.master" />
|
||||
<Content Include="masterpages\Events.master" />
|
||||
<Content Include="masterpages\FileDownload.master" />
|
||||
<Content Include="masterpages\Forum.master" />
|
||||
<Content Include="masterpages\__Forum.master" />
|
||||
<Content Include="masterpages\HelpPage.master" />
|
||||
<Content Include="masterpages\InsertImage.master" />
|
||||
<Content Include="masterpages\Locatorpage.master" />
|
||||
@@ -524,14 +524,14 @@
|
||||
<Content Include="masterpages\People.master" />
|
||||
<Content Include="masterpages\popular.master" />
|
||||
<Content Include="masterpages\Profilepage.master" />
|
||||
<Content Include="masterpages\Project.master" />
|
||||
<Content Include="masterpages\__Project.master" />
|
||||
<Content Include="masterpages\ProjectGroup.master" />
|
||||
<Content Include="masterpages\Projects.master" />
|
||||
<Content Include="masterpages\__Projects.master" />
|
||||
<Content Include="masterpages\ProjectsTags.master" />
|
||||
<Content Include="masterpages\PublicMemberProfile.master" />
|
||||
<Content Include="masterpages\Release.master" />
|
||||
<Content Include="masterpages\__Release.master" />
|
||||
<Content Include="masterpages\ReleaseLanding-bak.master" />
|
||||
<Content Include="masterpages\ReleaseLanding.master" />
|
||||
<Content Include="masterpages\__ReleaseLanding.master" />
|
||||
<Content Include="masterpages\Repository.master" />
|
||||
<Content Include="masterpages\RepositoryFrontpage.master" />
|
||||
<Content Include="masterpages\RepositoryMaster.master" />
|
||||
@@ -549,10 +549,10 @@
|
||||
<Content Include="masterpages\Repository\ProjectsTags.master" />
|
||||
<Content Include="masterpages\Repository\Repository.master" />
|
||||
<Content Include="masterpages\Repository\Textpage.master" />
|
||||
<Content Include="masterpages\RoadMap.master" />
|
||||
<Content Include="masterpages\__RoadMap.master" />
|
||||
<Content Include="masterpages\simplr.master" />
|
||||
<Content Include="masterpages\termsofservice.master" />
|
||||
<Content Include="masterpages\Textpage.master" />
|
||||
<Content Include="masterpages\__Textpage.master" />
|
||||
<Content Include="masterpages\UmbracoMVP2011.master" />
|
||||
<Content Include="masterpages\Wiki.master" />
|
||||
<Content Include="masterpages\WikiMoveDialog.master" />
|
||||
@@ -671,7 +671,7 @@
|
||||
<Content Include="config\feedProxy.config" />
|
||||
<Content Include="config\EmbeddedMedia.config" />
|
||||
<Content Include="config\BaseRestExtensions.config" />
|
||||
<Content Include="masterpages\Search.master" />
|
||||
<Content Include="masterpages\__Search.master" />
|
||||
<None Include="Properties\PublishProfiles\Local.pubxml" />
|
||||
<None Include="scripts\jquery-1.4.1-vsdoc.js" />
|
||||
<Content Include="scripts\jquery-1.4.1.js" />
|
||||
@@ -1701,8 +1701,8 @@
|
||||
<Content Include="Assets\images\logo.svg" />
|
||||
<Content Include="Assets\images\magnifier.svg" />
|
||||
<Content Include="Views\MacroPartials\Navigation\TopNavigation.cshtml" />
|
||||
<Content Include="masterpages\ForumMaster.master" />
|
||||
<Content Include="masterpages\DocumentationMaster.master" />
|
||||
<Content Include="masterpages\__ForumMaster.master" />
|
||||
<Content Include="masterpages\__DocumentationMaster.master" />
|
||||
<Content Include="masterpages\AddMarkdownProp.master" />
|
||||
<Content Include="masterpages\ComRepositoryFrontpage.master" />
|
||||
<Content Include="Assets\css\fonts\icomoon\icomoon.eot" />
|
||||
@@ -1720,14 +1720,14 @@
|
||||
<Content Include="Views\MacroPartials\Projects\ListProjects.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Members\ProfileNavigation.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Search\GlobalSearchPage.cshtml" />
|
||||
<Content Include="masterpages\Download.master" />
|
||||
<Content Include="masterpages\__Download.master" />
|
||||
<Content Include="Views\MacroPartials\Members\ProfileProjectTeam.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Releases\AllReleases.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Projects\ProjectDetails.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Members\Register.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Forum\LatestActivity.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Members\ProfileProjectForums.cshtml" />
|
||||
<Content Include="masterpages\ReleaseProgress.master" />
|
||||
<Content Include="masterpages\__ReleaseProgress.master" />
|
||||
<Content Include="Views\MacroPartials\Global\AlertBar.cshtml" />
|
||||
<Content Include="Views\MacroPartials\Members\PublicProfile.cshtml" />
|
||||
<Content Include="masterpages\ProfileLogin.master" />
|
||||
|
||||
+376
-376
@@ -1,376 +1,376 @@
|
||||
<%@ Master Language="C#" MasterPageFile="~/masterpages/Master.master" AutoEventWireup="true" %>
|
||||
<%@ Import Namespace="Umbraco.Web" %>
|
||||
<%@ Import Namespace="OurUmbraco.Release" %>
|
||||
<%@ Import Namespace="Umbraco.Core.Models" %>
|
||||
|
||||
<asp:Content ID="Content1" ContentPlaceHolderId="Head" runat="server">
|
||||
</asp:Content>
|
||||
|
||||
<asp:Content ID="Content2" ContentPlaceHolderId="Main" runat="server">
|
||||
<umbraco:Macro ID="Macro6" Language="cshtml" runat="server">
|
||||
@{
|
||||
if(Request.Params["fromdownload"] != null) {
|
||||
var downloads = Model.ReleaseDownload.Where("Visible");
|
||||
if(downloads.Any())
|
||||
{
|
||||
var downloadIds = new List<int>();
|
||||
foreach (var item in downloads)
|
||||
{
|
||||
downloadIds.Add(item.Id);
|
||||
}
|
||||
Response.Redirect("/ReleaseDownload?id=" + downloadIds.First(), false);
|
||||
}
|
||||
}
|
||||
}
|
||||
</umbraco:Macro>
|
||||
<%
|
||||
var currentPage = UmbracoContext.Current.PublishedContentRequest.PublishedContent;
|
||||
var allReleases = Release.GetAllReleaseFromFile();
|
||||
var release = allReleases.First(x => x.version == currentPage.Name);
|
||||
var completedIssues = release.issues.Count(x => x.state == "Fixed");
|
||||
var totalIssues = release.issues.Count();
|
||||
var percentComplete = Math.Round(((double) 100/totalIssues)*completedIssues);
|
||||
var releaseDateParsed = DateTime.Now;
|
||||
if (release.releaseDate != string.Empty)
|
||||
{
|
||||
releaseDateParsed = DateTime.Parse(release.releaseDate.Substring(3, 2) + "-" + release.releaseDate.Substring(0, 2) + "-" + release.releaseDate.Substring(6));
|
||||
}
|
||||
|
||||
var releaseDate = release.releaseDate == "" ? "Not yet determined" : releaseDateParsed.ToString("dddd, MMMM d yyyy");
|
||||
|
||||
|
||||
var umbracoHelper = new Umbraco.Web.UmbracoHelper(UmbracoContext.Current);
|
||||
var releaseContent = umbracoHelper.TypedContent(umbracoHelper.UmbracoContext.PageId);
|
||||
if (releaseContent != null)
|
||||
{
|
||||
var overrideDescription = releaseContent.GetPropertyValue<bool>("overrideYouTrackDescription");
|
||||
if (overrideDescription)
|
||||
{
|
||||
release.releaseDescription = releaseContent.GetPropertyValue<string>("bodyText");
|
||||
}
|
||||
var overrideReleaseDate = releaseContent.GetPropertyValue<string>("overrideYouTrackReleaseDate");
|
||||
if (string.IsNullOrWhiteSpace(overrideReleaseDate) == false)
|
||||
{
|
||||
releaseDate = overrideReleaseDate;
|
||||
}
|
||||
}
|
||||
%>
|
||||
<div class="has-sidebar release">
|
||||
<div class="page-content">
|
||||
<div class="sidebar-area">
|
||||
<div class="sidebar-content">
|
||||
<div class="content-wrapper">
|
||||
|
||||
<nav>
|
||||
<ul class="level-1">
|
||||
<%
|
||||
foreach (var currentRelease in allReleases.Where(x => x.released && x.currentRelease))
|
||||
{
|
||||
%>
|
||||
<li>
|
||||
<a class="active" href="/contribute/releases/<%= currentRelease.version.Replace(".", string.Empty) %>"><h3>Latest Release - v<%= currentRelease.version %></h3></a>
|
||||
</li>
|
||||
<% } %>
|
||||
|
||||
<li>
|
||||
<a href="/contribute/progress"><h3>In Progress</h3></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="/contribute/releases"><h3>All Releases</h3></a>
|
||||
<ul class="level-2">
|
||||
<li>
|
||||
<a href=""><h4>Umbraco 7</h4></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href=""><h4>Umbraco 6</h4></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href=""><h4>Umbraco 4</h4></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .sidebar-content -->
|
||||
</div>
|
||||
<div class="main-area">
|
||||
<div class="main-content">
|
||||
<div class="content-wrapper">
|
||||
|
||||
<div>
|
||||
<umbraco:Macro linkToCurrent="1" Alias="Breadcrumb" runat="server"></umbraco:Macro>
|
||||
</div>
|
||||
|
||||
<style>
|
||||
.release-page .explain h2 {
|
||||
margin-top: 12px;
|
||||
font-size: 2em;
|
||||
margin-bottom: .3rem;
|
||||
color: rgba(0,0,0,.8);
|
||||
}
|
||||
|
||||
.release-page .dot {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.release-page .dot.big {
|
||||
position: relative;
|
||||
text-indent: 0;
|
||||
margin: 15px auto 0;
|
||||
}
|
||||
|
||||
.release-page .chart {
|
||||
height: 60px;
|
||||
width: 60px;
|
||||
top: initial;
|
||||
left: initial;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.release-page .chart p {
|
||||
vertical-align: middle;
|
||||
line-height: 3.7rem;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.release-page .chart canvas {
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
}
|
||||
|
||||
.statuses ul {
|
||||
list-style-type: none;
|
||||
}
|
||||
.statuses ul li {
|
||||
position: relative;
|
||||
margin-bottom: 10px;
|
||||
padding-left: 10px;
|
||||
}
|
||||
.statuses li:before {
|
||||
position: absolute;
|
||||
top: -4px;
|
||||
left: -25px;
|
||||
font-size: 1.5em;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="row explain">
|
||||
<div class="col-sm-2">
|
||||
<span class="dot big progress">
|
||||
<div class="chart" data-percent="<%= percentComplete %>">
|
||||
<p><%= percentComplete %>%</p>
|
||||
</div>
|
||||
</span>
|
||||
</div>
|
||||
<div class="col-sm-10">
|
||||
<h2>
|
||||
v<umbraco:Item ID="Item1" field="pageName" runat="server" />
|
||||
</h2>
|
||||
<small>Status: <span><%= release.released ? "Released" : "In Progress" %></span></small>
|
||||
<% if (release.released == false)
|
||||
{ %>
|
||||
<h3>
|
||||
|
||||
<span><%= percentComplete %>% complete</span>
|
||||
<span><%= 100 - percentComplete %>% in progress</span>
|
||||
</h3>
|
||||
<h3>Target release date: <span style="color:#5B5B5B"><%= releaseDate %></span></h3>
|
||||
<% } %>
|
||||
|
||||
<umbraco:Macro ID="Macro5" Language="cshtml" runat="server">
|
||||
@if(Model.HasValue("releaseNotes")) {
|
||||
<small><p>@Model.releaseNotes</p></small>
|
||||
}
|
||||
</umbraco:Macro>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<umbraco:Macro ID="Macro2" Language="cshtml" runat="server">
|
||||
@{
|
||||
var downloads = Model.ReleaseDownload.Where("Visible");
|
||||
var countIsOdd = ((downloads.Count() & 1) != 0) ? true : false;
|
||||
if(downloads.Any())
|
||||
{
|
||||
<div class="get-release row">
|
||||
@foreach (var item in downloads)
|
||||
{
|
||||
var background = item.IsFirst() ? "/images/releases/download.png" : "/media/2483095/download.png";
|
||||
var width = (item.IsLast() && countIsOdd) ? 895 : 380;
|
||||
var numberOfDownloads = 0;
|
||||
int.TryParse(item.NumberOfDownloads, out numberOfDownloads);
|
||||
numberOfDownloads = numberOfDownloads + OurUmbraco.Our.Utils.GetReleaseDownloadCount(item.Id);
|
||||
if(item.Name.Contains("WebPI") == false)
|
||||
{
|
||||
<div class="release @(item.IsFirst() == false ? "bin" : "zip") col-sm-1">
|
||||
<i class="icon-Download-alt"></i>
|
||||
</div>
|
||||
<div class="release @(item.IsFirst() == false ? "bin" : "zip") col-md-5">
|
||||
|
||||
<h3><a href="/ReleaseDownload?id=@item.Id" onclick="_gaq.push(['_trackEvent', 'Release', 'Download', '@item.Name']);">@item.Name</a></h3>
|
||||
@if(item.IsFirst())
|
||||
{
|
||||
<p>This is the main Umbraco download, generally you won't need anything else.</p>
|
||||
}
|
||||
<small>Downloaded @numberOfDownloads times - uploaded @item.UploadDate.ToString("D")</small>
|
||||
</div>
|
||||
} else {
|
||||
<div style="display: none;"><a href="/ReleaseDownload?id=@item.Id" onclick="_gaq.push(['_trackEvent', 'Release', 'Download', '@item.Name']);">@item.Name</a></div>
|
||||
}
|
||||
}
|
||||
</div>
|
||||
}
|
||||
}
|
||||
</umbraco:Macro>
|
||||
|
||||
<div class="row markdown-syntax">
|
||||
|
||||
<div class="col-md-5">
|
||||
|
||||
<% if (release.releaseDescription != string.Empty && currentPage.HasValue("bodyText") == false)
|
||||
{ %>
|
||||
<span>
|
||||
<h2>Summary</h2>
|
||||
<p><span><%= release.releaseDescription %></span></p>
|
||||
</span>
|
||||
<% } %>
|
||||
|
||||
<umbraco:Macro ID="Macro3" Language="cshtml" runat="server">
|
||||
@if(Model.HasValue("bodyText")) {
|
||||
<h2>Release notes</h2>
|
||||
@Model.BodyText
|
||||
}
|
||||
</umbraco:Macro>
|
||||
|
||||
|
||||
<h2>Related changes from the issue tracker</h2>
|
||||
<div class="panel-wrapper">
|
||||
<div class="panel-left">
|
||||
<!-- Columns for statuses -->
|
||||
<div class="statuses group">
|
||||
<div class="status features">
|
||||
<h3>Features</h3>
|
||||
<%
|
||||
var features = release.issues.Where(x => x.type.ToLowerInvariant().Contains("feature")).ToList();
|
||||
if (features.Any())
|
||||
{
|
||||
foreach (var issue in features)
|
||||
{ %>
|
||||
|
||||
<ul>
|
||||
<li class="<%= issue.StateIcon() %>" title="<%= issue.state %>">
|
||||
<a href="http://issues.umbraco.org/issue/<%= issue.id %>" target="_blank"><%= issue.id %> - <%= issue.title %></a>
|
||||
</li>
|
||||
</ul>
|
||||
<% } } else { %>
|
||||
<p>No items to display</p>
|
||||
<% } %>
|
||||
</div>
|
||||
<div class="status breaking">
|
||||
<h3>Breaking Changes</h3>
|
||||
<%
|
||||
var breaking = release.issues.Where(x => x.breaking).ToList();
|
||||
if (breaking.Any())
|
||||
{
|
||||
foreach (var issue in breaking)
|
||||
{ %>
|
||||
|
||||
<ul>
|
||||
<li class="<%= issue.StateIcon() %>" title="<%= issue.state %>">
|
||||
<a href="http://issues.umbraco.org/issue/<%= issue.id %>" target="_blank"><%= issue.id %> - <%= issue.title %></a>
|
||||
</li>
|
||||
</ul>
|
||||
<% } } else { %>
|
||||
<p>No items to display</p>
|
||||
<% } %>
|
||||
</div>
|
||||
<div class="status issues">
|
||||
<h3>Issues & Tasks</h3>
|
||||
<%
|
||||
var issues = release.issues.Where(x => x.breaking == false && x.type.ToLowerInvariant().Contains("feature") == false).ToList();
|
||||
if (issues.Any())
|
||||
{
|
||||
foreach (var issue in issues)
|
||||
{ %>
|
||||
|
||||
<ul>
|
||||
<li class="<%= issue.StateIcon() %>" title="<%= issue.state %>">
|
||||
<a href="http://issues.umbraco.org/issue/<%= issue.id %>" target="_blank"><%= issue.id %> - <%= issue.title %></a>
|
||||
</li>
|
||||
</ul>
|
||||
<% } } else { %>
|
||||
<p>No items to display</p>
|
||||
<% } %>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div><!-- col-md-5 -->
|
||||
|
||||
<div class="col-md-5 col-md-offset-2">
|
||||
|
||||
<h2>Getting started</h2>
|
||||
<p>Make sure to give the <a href="http://our.umbraco.org/documentation/Installation/">installation instructions a read</a>.</p>
|
||||
<p>Check the <strong>free</strong> <a href="http://umbraco.tv/videos/umbraco-v7/implementor/">foundation videos</a> on how to get started building Umbraco sites. They're available from:<br />
|
||||
<ul>
|
||||
<li><a href="http://umbraco.tv/videos/umbraco-v7/implementor/fundamentals/installation/">Installation</a></li>
|
||||
<li><a href="http://umbraco.tv/videos/umbraco-v7/implementor/fundamentals/document-types/">Document Types</a></li>
|
||||
<li><a href="http://umbraco.tv/videos/umbraco-v7/implementor/fundamentals/templating/">Templating</a></li>
|
||||
<li><a href="http://umbraco.tv/videos/umbraco-v7/implementor/fundamentals/stylesheets-and-javascript/">Stylesheets and Javascript</a></li>
|
||||
</ul>
|
||||
<h2>World's best community</h2>
|
||||
<p>You'll find our über active community working hard to help each other at Our Umbraco: <a href="http://our.umbraco.org">http://our.umbraco.org</a></p>
|
||||
<h2>Upgrading from older versions</h2>
|
||||
<p>Make sure to read the <a href="http://our.umbraco.org/documentation/Installation/Upgrading/">upgrade instructions</a> before you attempt an upgrade.</p>
|
||||
|
||||
<umbraco:Macro ID="Macro4" runat="server" Language="cshtml">
|
||||
<h2>Found a bug?</h2>
|
||||
<p>We're happy to help you with any problems you encounter, so please report them in <a href="http://issues.umbraco.org/issues/U4">the issue tracker</a> and use the “Affected versions” field to set it to @Model.Name. <br />Do a search first though, if the issue already exists, give it an extra vote.</p>
|
||||
|
||||
@if(Model.HasValue("linkToChangeset")) {
|
||||
<h2>Source code</h2>
|
||||
<p>The source for <a href="@Model.LinkToChangeset">this specific release is available for download from the repository</a> (click the "ZIP" button).</p>
|
||||
}
|
||||
|
||||
@if(Model.HasNuGet) {
|
||||
<h2>Also available on NuGet</h2>
|
||||
|
||||
<div class="nuget-badge">
|
||||
<a href="https://nuget.org/packages/UmbracoCms/@Model.Name">
|
||||
<p><code>PM> Install-Package UmbracoCms -Version @Model.Name</code></p>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
}
|
||||
</umbraco:Macro>
|
||||
|
||||
</div><!-- col-md-5 col-md-offset-2 -->
|
||||
|
||||
</div><!-- .row .markdown-syntax -->
|
||||
</div>
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .main-content -->
|
||||
</div><!-- .main-area -->
|
||||
</div><!-- .page-content -->
|
||||
</div><!-- has-sidebar -->
|
||||
|
||||
</asp:Content>
|
||||
|
||||
<asp:Content ContentPlaceHolderId="EndScripts" runat="server">
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/easy-pie-chart/2.1.4/jquery.easypiechart.min.js"></script>
|
||||
<script type="text/javascript">
|
||||
setTimeout(function () {
|
||||
$('.chart').easyPieChart({
|
||||
size: 60,
|
||||
barColor: '#569327',
|
||||
scaleColor: false,
|
||||
trackColor: '#daf0c9'
|
||||
});
|
||||
}, 300);
|
||||
</script>
|
||||
</asp:Content>
|
||||
<%@ Master Language="C#" MasterPageFile="~/masterpages/Master.master" AutoEventWireup="true" %>
|
||||
<%@ Import Namespace="Umbraco.Web" %>
|
||||
<%@ Import Namespace="OurUmbraco.Release" %>
|
||||
<%@ Import Namespace="Umbraco.Core.Models" %>
|
||||
|
||||
<asp:Content ID="Content1" ContentPlaceHolderId="Head" runat="server">
|
||||
</asp:Content>
|
||||
|
||||
<asp:Content ID="Content2" ContentPlaceHolderId="Main" runat="server">
|
||||
<umbraco:Macro ID="Macro6" Language="cshtml" runat="server">
|
||||
@{
|
||||
if(Request.Params["fromdownload"] != null) {
|
||||
var downloads = Model.ReleaseDownload.Where("Visible");
|
||||
if(downloads.Any())
|
||||
{
|
||||
var downloadIds = new List<int>();
|
||||
foreach (var item in downloads)
|
||||
{
|
||||
downloadIds.Add(item.Id);
|
||||
}
|
||||
Response.Redirect("/ReleaseDownload?id=" + downloadIds.First(), false);
|
||||
}
|
||||
}
|
||||
}
|
||||
</umbraco:Macro>
|
||||
<%
|
||||
var currentPage = UmbracoContext.Current.PublishedContentRequest.PublishedContent;
|
||||
var allReleases = Release.GetAllReleaseFromFile();
|
||||
var release = allReleases.First(x => x.version == currentPage.Name);
|
||||
var completedIssues = release.issues.Count(x => x.state == "Fixed");
|
||||
var totalIssues = release.issues.Count();
|
||||
var percentComplete = Math.Round(((double) 100/totalIssues)*completedIssues);
|
||||
var releaseDateParsed = DateTime.Now;
|
||||
if (release.releaseDate != string.Empty)
|
||||
{
|
||||
releaseDateParsed = DateTime.Parse(release.releaseDate.Substring(3, 2) + "-" + release.releaseDate.Substring(0, 2) + "-" + release.releaseDate.Substring(6));
|
||||
}
|
||||
|
||||
var releaseDate = release.releaseDate == "" ? "Not yet determined" : releaseDateParsed.ToString("dddd, MMMM d yyyy");
|
||||
|
||||
|
||||
var umbracoHelper = new Umbraco.Web.UmbracoHelper(UmbracoContext.Current);
|
||||
var releaseContent = umbracoHelper.TypedContent(umbracoHelper.UmbracoContext.PageId);
|
||||
if (releaseContent != null)
|
||||
{
|
||||
var overrideDescription = releaseContent.GetPropertyValue<bool>("overrideYouTrackDescription");
|
||||
if (overrideDescription)
|
||||
{
|
||||
release.releaseDescription = releaseContent.GetPropertyValue<string>("bodyText");
|
||||
}
|
||||
var overrideReleaseDate = releaseContent.GetPropertyValue<string>("overrideYouTrackReleaseDate");
|
||||
if (string.IsNullOrWhiteSpace(overrideReleaseDate) == false)
|
||||
{
|
||||
releaseDate = overrideReleaseDate;
|
||||
}
|
||||
}
|
||||
%>
|
||||
<div class="has-sidebar release">
|
||||
<div class="page-content">
|
||||
<div class="sidebar-area">
|
||||
<div class="sidebar-content">
|
||||
<div class="content-wrapper">
|
||||
|
||||
<nav>
|
||||
<ul class="level-1">
|
||||
<%
|
||||
foreach (var currentRelease in allReleases.Where(x => x.released && x.currentRelease))
|
||||
{
|
||||
%>
|
||||
<li>
|
||||
<a class="active" href="/contribute/releases/<%= currentRelease.version.Replace(".", string.Empty) %>"><h3>Latest Release - v<%= currentRelease.version %></h3></a>
|
||||
</li>
|
||||
<% } %>
|
||||
|
||||
<li>
|
||||
<a href="/contribute/progress"><h3>In Progress</h3></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="/contribute/releases"><h3>All Releases</h3></a>
|
||||
<ul class="level-2">
|
||||
<li>
|
||||
<a href=""><h4>Umbraco 7</h4></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href=""><h4>Umbraco 6</h4></a>
|
||||
</li>
|
||||
<li>
|
||||
<a href=""><h4>Umbraco 4</h4></a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .sidebar-content -->
|
||||
</div>
|
||||
<div class="main-area">
|
||||
<div class="main-content">
|
||||
<div class="content-wrapper">
|
||||
|
||||
<div>
|
||||
<umbraco:Macro linkToCurrent="1" Alias="Breadcrumb" runat="server"></umbraco:Macro>
|
||||
</div>
|
||||
|
||||
<style>
|
||||
.release-page .explain h2 {
|
||||
margin-top: 12px;
|
||||
font-size: 2em;
|
||||
margin-bottom: .3rem;
|
||||
color: rgba(0,0,0,.8);
|
||||
}
|
||||
|
||||
.release-page .dot {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.release-page .dot.big {
|
||||
position: relative;
|
||||
text-indent: 0;
|
||||
margin: 15px auto 0;
|
||||
}
|
||||
|
||||
.release-page .chart {
|
||||
height: 60px;
|
||||
width: 60px;
|
||||
top: initial;
|
||||
left: initial;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.release-page .chart p {
|
||||
vertical-align: middle;
|
||||
line-height: 3.7rem;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.release-page .chart canvas {
|
||||
top: 0px;
|
||||
left: 0px;
|
||||
}
|
||||
|
||||
.statuses ul {
|
||||
list-style-type: none;
|
||||
}
|
||||
.statuses ul li {
|
||||
position: relative;
|
||||
margin-bottom: 10px;
|
||||
padding-left: 10px;
|
||||
}
|
||||
.statuses li:before {
|
||||
position: absolute;
|
||||
top: -4px;
|
||||
left: -25px;
|
||||
font-size: 1.5em;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="row explain">
|
||||
<div class="col-sm-2">
|
||||
<span class="dot big progress">
|
||||
<div class="chart" data-percent="<%= percentComplete %>">
|
||||
<p><%= percentComplete %>%</p>
|
||||
</div>
|
||||
</span>
|
||||
</div>
|
||||
<div class="col-sm-10">
|
||||
<h2>
|
||||
v<umbraco:Item ID="Item1" field="pageName" runat="server" />
|
||||
</h2>
|
||||
<small>Status: <span><%= release.released ? "Released" : "In Progress" %></span></small>
|
||||
<% if (release.released == false)
|
||||
{ %>
|
||||
<h3>
|
||||
|
||||
<span><%= percentComplete %>% complete</span>
|
||||
<span><%= 100 - percentComplete %>% in progress</span>
|
||||
</h3>
|
||||
<h3>Target release date: <span style="color:#5B5B5B"><%= releaseDate %></span></h3>
|
||||
<% } %>
|
||||
|
||||
<umbraco:Macro ID="Macro5" Language="cshtml" runat="server">
|
||||
@if(Model.HasValue("releaseNotes")) {
|
||||
<small><p>@Model.releaseNotes</p></small>
|
||||
}
|
||||
</umbraco:Macro>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<umbraco:Macro ID="Macro2" Language="cshtml" runat="server">
|
||||
@{
|
||||
var downloads = Model.ReleaseDownload.Where("Visible");
|
||||
var countIsOdd = ((downloads.Count() & 1) != 0) ? true : false;
|
||||
if(downloads.Any())
|
||||
{
|
||||
<div class="get-release row">
|
||||
@foreach (var item in downloads)
|
||||
{
|
||||
var background = item.IsFirst() ? "/images/releases/download.png" : "/media/2483095/download.png";
|
||||
var width = (item.IsLast() && countIsOdd) ? 895 : 380;
|
||||
var numberOfDownloads = 0;
|
||||
int.TryParse(item.NumberOfDownloads, out numberOfDownloads);
|
||||
numberOfDownloads = numberOfDownloads + OurUmbraco.Our.Utils.GetReleaseDownloadCount(item.Id);
|
||||
if(item.Name.Contains("WebPI") == false)
|
||||
{
|
||||
<div class="release @(item.IsFirst() == false ? "bin" : "zip") col-sm-1">
|
||||
<i class="icon-Download-alt"></i>
|
||||
</div>
|
||||
<div class="release @(item.IsFirst() == false ? "bin" : "zip") col-md-5">
|
||||
|
||||
<h3><a href="/ReleaseDownload?id=@item.Id" onclick="_gaq.push(['_trackEvent', 'Release', 'Download', '@item.Name']);">@item.Name</a></h3>
|
||||
@if(item.IsFirst())
|
||||
{
|
||||
<p>This is the main Umbraco download, generally you won't need anything else.</p>
|
||||
}
|
||||
<small>Downloaded @numberOfDownloads times - uploaded @item.UploadDate.ToString("D")</small>
|
||||
</div>
|
||||
} else {
|
||||
<div style="display: none;"><a href="/ReleaseDownload?id=@item.Id" onclick="_gaq.push(['_trackEvent', 'Release', 'Download', '@item.Name']);">@item.Name</a></div>
|
||||
}
|
||||
}
|
||||
</div>
|
||||
}
|
||||
}
|
||||
</umbraco:Macro>
|
||||
|
||||
<div class="row markdown-syntax">
|
||||
|
||||
<div class="col-md-5">
|
||||
|
||||
<% if (release.releaseDescription != string.Empty && currentPage.HasValue("bodyText") == false)
|
||||
{ %>
|
||||
<span>
|
||||
<h2>Summary</h2>
|
||||
<p><span><%= release.releaseDescription %></span></p>
|
||||
</span>
|
||||
<% } %>
|
||||
|
||||
<umbraco:Macro ID="Macro3" Language="cshtml" runat="server">
|
||||
@if(Model.HasValue("bodyText")) {
|
||||
<h2>Release notes</h2>
|
||||
@Model.BodyText
|
||||
}
|
||||
</umbraco:Macro>
|
||||
|
||||
|
||||
<h2>Related changes from the issue tracker</h2>
|
||||
<div class="panel-wrapper">
|
||||
<div class="panel-left">
|
||||
<!-- Columns for statuses -->
|
||||
<div class="statuses group">
|
||||
<div class="status features">
|
||||
<h3>Features</h3>
|
||||
<%
|
||||
var features = release.issues.Where(x => x.type.ToLowerInvariant().Contains("feature")).ToList();
|
||||
if (features.Any())
|
||||
{
|
||||
foreach (var issue in features)
|
||||
{ %>
|
||||
|
||||
<ul>
|
||||
<li class="<%= issue.StateIcon() %>" title="<%= issue.state %>">
|
||||
<a href="http://issues.umbraco.org/issue/<%= issue.id %>" target="_blank"><%= issue.id %> - <%= issue.title %></a>
|
||||
</li>
|
||||
</ul>
|
||||
<% } } else { %>
|
||||
<p>No items to display</p>
|
||||
<% } %>
|
||||
</div>
|
||||
<div class="status breaking">
|
||||
<h3>Breaking Changes</h3>
|
||||
<%
|
||||
var breaking = release.issues.Where(x => x.breaking).ToList();
|
||||
if (breaking.Any())
|
||||
{
|
||||
foreach (var issue in breaking)
|
||||
{ %>
|
||||
|
||||
<ul>
|
||||
<li class="<%= issue.StateIcon() %>" title="<%= issue.state %>">
|
||||
<a href="http://issues.umbraco.org/issue/<%= issue.id %>" target="_blank"><%= issue.id %> - <%= issue.title %></a>
|
||||
</li>
|
||||
</ul>
|
||||
<% } } else { %>
|
||||
<p>No items to display</p>
|
||||
<% } %>
|
||||
</div>
|
||||
<div class="status issues">
|
||||
<h3>Issues & Tasks</h3>
|
||||
<%
|
||||
var issues = release.issues.Where(x => x.breaking == false && x.type.ToLowerInvariant().Contains("feature") == false).ToList();
|
||||
if (issues.Any())
|
||||
{
|
||||
foreach (var issue in issues)
|
||||
{ %>
|
||||
|
||||
<ul>
|
||||
<li class="<%= issue.StateIcon() %>" title="<%= issue.state %>">
|
||||
<a href="http://issues.umbraco.org/issue/<%= issue.id %>" target="_blank"><%= issue.id %> - <%= issue.title %></a>
|
||||
</li>
|
||||
</ul>
|
||||
<% } } else { %>
|
||||
<p>No items to display</p>
|
||||
<% } %>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div><!-- col-md-5 -->
|
||||
|
||||
<div class="col-md-5 col-md-offset-2">
|
||||
|
||||
<h2>Getting started</h2>
|
||||
<p>Make sure to give the <a href="http://our.umbraco.org/documentation/Installation/">installation instructions a read</a>.</p>
|
||||
<p>Check the <strong>free</strong> <a href="http://umbraco.tv/videos/umbraco-v7/implementor/">foundation videos</a> on how to get started building Umbraco sites. They're available from:<br />
|
||||
<ul>
|
||||
<li><a href="http://umbraco.tv/videos/umbraco-v7/implementor/fundamentals/installation/">Installation</a></li>
|
||||
<li><a href="http://umbraco.tv/videos/umbraco-v7/implementor/fundamentals/document-types/">Document Types</a></li>
|
||||
<li><a href="http://umbraco.tv/videos/umbraco-v7/implementor/fundamentals/templating/">Templating</a></li>
|
||||
<li><a href="http://umbraco.tv/videos/umbraco-v7/implementor/fundamentals/stylesheets-and-javascript/">Stylesheets and Javascript</a></li>
|
||||
</ul>
|
||||
<h2>World's best community</h2>
|
||||
<p>You'll find our über active community working hard to help each other at Our Umbraco: <a href="http://our.umbraco.org">http://our.umbraco.org</a></p>
|
||||
<h2>Upgrading from older versions</h2>
|
||||
<p>Make sure to read the <a href="http://our.umbraco.org/documentation/Installation/Upgrading/">upgrade instructions</a> before you attempt an upgrade.</p>
|
||||
|
||||
<umbraco:Macro ID="Macro4" runat="server" Language="cshtml">
|
||||
<h2>Found a bug?</h2>
|
||||
<p>We're happy to help you with any problems you encounter, so please report them in <a href="http://issues.umbraco.org/issues/U4">the issue tracker</a> and use the “Affected versions” field to set it to @Model.Name. <br />Do a search first though, if the issue already exists, give it an extra vote.</p>
|
||||
|
||||
@if(Model.HasValue("linkToChangeset")) {
|
||||
<h2>Source code</h2>
|
||||
<p>The source for <a href="@Model.LinkToChangeset">this specific release is available for download from the repository</a> (click the "ZIP" button).</p>
|
||||
}
|
||||
|
||||
@if(Model.HasNuGet) {
|
||||
<h2>Also available on NuGet</h2>
|
||||
|
||||
<div class="nuget-badge">
|
||||
<a href="https://nuget.org/packages/UmbracoCms/@Model.Name">
|
||||
<p><code>PM> Install-Package UmbracoCms -Version @Model.Name</code></p>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
}
|
||||
</umbraco:Macro>
|
||||
|
||||
</div><!-- col-md-5 col-md-offset-2 -->
|
||||
|
||||
</div><!-- .row .markdown-syntax -->
|
||||
</div>
|
||||
</div><!-- .content-wrapper -->
|
||||
</div><!-- .main-content -->
|
||||
</div><!-- .main-area -->
|
||||
</div><!-- .page-content -->
|
||||
</div><!-- has-sidebar -->
|
||||
|
||||
</asp:Content>
|
||||
|
||||
<asp:Content ContentPlaceHolderId="EndScripts" runat="server">
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/easy-pie-chart/2.1.4/jquery.easypiechart.min.js"></script>
|
||||
<script type="text/javascript">
|
||||
setTimeout(function () {
|
||||
$('.chart').easyPieChart({
|
||||
size: 60,
|
||||
barColor: '#569327',
|
||||
scaleColor: false,
|
||||
trackColor: '#daf0c9'
|
||||
});
|
||||
}, 300);
|
||||
</script>
|
||||
</asp:Content>
|
||||
Reference in New Issue
Block a user