updating tabs CSS. Moving title to before local navigation.

--HG--
branch : dev
This commit is contained in:
Andre Rodrigues
2011-02-15 11:58:26 -08:00
parent db7625d137
commit 62ee211557
11 changed files with 188 additions and 162 deletions

View File

@@ -8,9 +8,10 @@
Style.Require("ModulesAdmin");
Style.Require("Switchable");
Script.Require("Switchable");
WorkContext.Layout.BeforeContent.Add(New.BeforeContent(Title: "Modules"), "5");
}
<h1>@Html.TitleForPage(T("Manage Features").ToString())</h1>
@if (Model.Features.Count() > 0) {
<ul class="features summary-view switchable">@{
var featureGroups = Model.Features.OrderBy(f => f.Descriptor.Category, new DoghouseComparer("Core")).GroupBy(f => f.Descriptor.Category);

View File

@@ -5,9 +5,9 @@
@{
Style.Require("ModulesAdmin");
}
<h1>@Html.TitleForPage(T("Installed Modules").ToString())</h1>
WorkContext.Layout.BeforeContent.Add(New.BeforeContent(Title: "Modules"), "5");
}
@if (Model.BrowseToGallery) {
<div class="manage">@Html.ActionLink(T("Install a module from the Gallery").ToString(), "Modules", "Gallery", new { area = "Orchard.Packaging", returnUrl = HttpContext.Current.Request.RawUrl }, new { @class = "button primaryAction" })</div>

View File

@@ -3,18 +3,17 @@
@using System.Linq;
@{
Style.Require("PackagingAdmin");
Style.Require("PackagingAdmin");
var pageSizes = new List<int?>() { 10, 50, 100 };
var defaultPageSize = WorkContext.CurrentSite.PageSize;
if(!pageSizes.Contains(defaultPageSize)) {
pageSizes.Add(defaultPageSize);
}
var pageSizes = new List<int?>() { 10, 50, 100 };
var defaultPageSize = WorkContext.CurrentSite.PageSize;
if(!pageSizes.Contains(defaultPageSize)) {
pageSizes.Add(defaultPageSize);
}
WorkContext.Layout.BeforeContent.Add(New.BeforeContent(Title: "Modules"), "5");
}
<h1>@Html.TitleForPage(T("Browse Gallery - Modules").Text)</h1>
@using ( Html.BeginFormAntiForgeryPost(Url.Action("Modules", "Gallery")) ) {
<fieldset class="bulk-actions">
<label for="filterResults" class="bulk-filter">@T("Feed:")</label>
@@ -26,75 +25,75 @@
</select>
</fieldset>
<fieldset class="bulk-actions">
<label for="filterResults">@T("Sort by:")</label>
<label for="filterResults">@T("Sort by:")</label>
<select id="filterResults" name="@Html.NameOf(m => m.Options.Order)">
@Html.SelectOption(Model.Options.Order, PackagingExtensionsOrder.Downloads, T("Downloads").ToString())
@Html.SelectOption(Model.Options.Order, PackagingExtensionsOrder.Ratings, T("Ratings").ToString())
@Html.SelectOption(Model.Options.Order, PackagingExtensionsOrder.Alphanumeric, T("Alphanumeric").ToString())
</select>
<input type="hidden" name="Page" value="1" />
<label for="pageSize">@T("Show:")</label>
<select id="pageSize" name="PageSize">
@Html.SelectOption((int)Model.Pager.PageSize, 0, T("All").ToString())
@foreach(int size in pageSizes.OrderBy(p => p)) {
@Html.SelectOption((int)Model.Pager.PageSize, size, size.ToString())
}
<select>
<input type="hidden" name="Page" value="1" />
<label for="pageSize">@T("Show:")</label>
<select id="pageSize" name="PageSize">
@Html.SelectOption((int)Model.Pager.PageSize, 0, T("All").ToString())
@foreach(int size in pageSizes.OrderBy(p => p)) {
@Html.SelectOption((int)Model.Pager.PageSize, size, size.ToString())
}
<select>
<button type="submit">@T("Apply")</button>
</fieldset>
if (Model.Extensions.Count() > 0) {
<ul class="contentItems">
@foreach (var item in Model.Extensions) {
<li>
@{
string iconUrl = @item.IconUrl;
if (string.IsNullOrWhiteSpace(iconUrl)) {
iconUrl = Href("../../Content/Images/ModuleDefaultIcon.png");
}
}
if (Model.Extensions.Count() > 0) {
<ul class="contentItems">
@foreach (var item in Model.Extensions) {
<li>
@{
string iconUrl = @item.IconUrl;
if (string.IsNullOrWhiteSpace(iconUrl)) {
iconUrl = Href("../../Content/Images/ModuleDefaultIcon.png");
}
}
<div class="iconThumbnail">
<div class="extensionDetails column">
<div class="extensionName">
@if (!string.IsNullOrWhiteSpace(item.GalleryDetailsUrl)) {
<a href="@item.GalleryDetailsUrl">
<h2>@item.Title<span> - @T("Version: {0}", item.Version)</span></h2>
</a>
} else {
<h2>@item.Title<span> - @T("Version: {0}", item.Version)</span></h2>
}
</div>
<div class="iconThumbnail">
<div class="extensionDetails column">
<div class="extensionName">
@if (!string.IsNullOrWhiteSpace(item.GalleryDetailsUrl)) {
<a href="@item.GalleryDetailsUrl">
<h2>@item.Title<span> - @T("Version: {0}", item.Version)</span></h2>
</a>
} else {
<h2>@item.Title<span> - @T("Version: {0}", item.Version)</span></h2>
}
</div>
<div class="ratings" style="width:@(15*5)px" title="@T("Ratings: {0} ({1})", item.Rating, item.RatingsCount)">
<div class="score" style="width:@(15*(item.Rating))px">&nbsp;</div>
</div>
<div class="ratings" style="width:@(15*5)px" title="@T("Ratings: {0} ({1})", item.Rating, item.RatingsCount)">
<div class="score" style="width:@(15*(item.Rating))px">&nbsp;</div>
</div>
<div class="related">
@Html.ActionLink(T("Install").ToString(), "Install", new RouteValueDictionary { { "packageId", item.PackageId }, { "version", item.Version }, { "sourceId", item.Source.Id }, { "redirectTo", "Modules" } })@T(" | ")
<a href="@item.PackageStreamUri">@T("Download")</a>
</div>
<div class="related">
@Html.ActionLink(T("Install").ToString(), "Install", new RouteValueDictionary { { "packageId", item.PackageId }, { "version", item.Version }, { "sourceId", item.Source.Id }, { "redirectTo", "Modules" } })@T(" | ")
<a href="@item.PackageStreamUri">@T("Download")</a>
</div>
<div class="properties">
<p>@(item.Description == null ? T("(No description").Text : item.Description)</p>
<ul class="pageStatus">
<li>@T("Last Updated: {0}", DateTime.Now.ToLocalTime())</li>
<li>&nbsp;&#124;&nbsp;@T("Author: {0}", !string.IsNullOrEmpty(item.Authors) ? item.Authors : T("Unknown").ToString())</li>
<li>&nbsp;&#124;&nbsp;@T("Downloads: {0}", item.DownloadCount)</li>
<li>&nbsp;&#124;&nbsp;@T("Website: ")
@if (!string.IsNullOrEmpty(item.ProjectUrl)) { <a href="@item.ProjectUrl">@item.ProjectUrl</a> } else { @T("Unknown").ToString() }
</li>
</ul>
</div>
</div>
<div class="properties">
<p>@(item.Description == null ? T("(No description").Text : item.Description)</p>
<ul class="pageStatus">
<li>@T("Last Updated: {0}", DateTime.Now.ToLocalTime())</li>
<li>&nbsp;&#124;&nbsp;@T("Author: {0}", !string.IsNullOrEmpty(item.Authors) ? item.Authors : T("Unknown").ToString())</li>
<li>&nbsp;&#124;&nbsp;@T("Downloads: {0}", item.DownloadCount)</li>
<li>&nbsp;&#124;&nbsp;@T("Website: ")
@if (!string.IsNullOrEmpty(item.ProjectUrl)) { <a href="@item.ProjectUrl">@item.ProjectUrl</a> } else { @T("Unknown").ToString() }
</li>
</ul>
</div>
</div>
<div class="extensionThumbnail column">
<img src="@iconUrl" class="thumbnail" alt="module" />
</div>
</div>
</li>}
</ul>
}
<div class="extensionThumbnail column">
<img src="@iconUrl" class="thumbnail" alt="module" />
</div>
</div>
</li>}
</ul>
}
@Display(Model.Pager)
@Display(Model.Pager)
}

View File

@@ -3,18 +3,17 @@
@using System.Linq;
@{
Style.Require("PackagingAdmin");
Style.Require("PackagingAdmin");
var pageSizes = new List<int?>() { 10, 50, 100 };
var defaultPageSize = WorkContext.CurrentSite.PageSize;
if(!pageSizes.Contains(defaultPageSize)) {
pageSizes.Add(defaultPageSize);
}
var pageSizes = new List<int?>() { 10, 50, 100 };
var defaultPageSize = WorkContext.CurrentSite.PageSize;
if(!pageSizes.Contains(defaultPageSize)) {
pageSizes.Add(defaultPageSize);
}
WorkContext.Layout.BeforeContent.Add(New.BeforeContent(Title: "Themes"), "5");
}
<h1>@Html.TitleForPage(T("Browse Gallery - Themes").Text)</h1>
@using ( Html.BeginFormAntiForgeryPost(Url.Action("Themes", "Gallery")) ) {
<fieldset class="bulk-actions">
<label for="filterResults" class="bulk-filter">@T("Feed:")</label>
@@ -26,80 +25,80 @@
</select>
</fieldset>
<fieldset class="bulk-actions">
<label for="filterResults">@T("Sort by:")</label>
<label for="filterResults">@T("Sort by:")</label>
<select id="filterResults" name="@Html.NameOf(m => m.Options.Order)">
@Html.SelectOption(Model.Options.Order, PackagingExtensionsOrder.Downloads, T("Downloads").ToString())
@Html.SelectOption(Model.Options.Order, PackagingExtensionsOrder.Ratings, T("Ratings").ToString())
@Html.SelectOption(Model.Options.Order, PackagingExtensionsOrder.Alphanumeric, T("Alphanumeric").ToString())
</select>
<input type="hidden" name="Page" value="1" />
<label for="pageSize">@T("Show:")</label>
<select id="pageSize" name="PageSize">
@Html.SelectOption((int)Model.Pager.PageSize, 0, T("All").ToString())
@foreach(int size in pageSizes.OrderBy(p => p)) {
@Html.SelectOption((int)Model.Pager.PageSize, size, size.ToString())
}
<select>
<input type="hidden" name="Page" value="1" />
<label for="pageSize">@T("Show:")</label>
<select id="pageSize" name="PageSize">
@Html.SelectOption((int)Model.Pager.PageSize, 0, T("All").ToString())
@foreach(int size in pageSizes.OrderBy(p => p)) {
@Html.SelectOption((int)Model.Pager.PageSize, size, size.ToString())
}
<select>
<button type="submit">@T("Apply")</button>
</fieldset>
if (Model.Extensions.Count() > 0) {
<ul class="contentItems theme">
@foreach (var item in Model.Extensions) {
<li>
@{
string extensionClass = "iconThumbnail";
string iconUrl = @item.IconUrl;
if (!string.IsNullOrWhiteSpace(@item.FirstScreenshot)) {
iconUrl = @item.FirstScreenshot;
extensionClass = "screenshotThumbnail";
}
else if (string.IsNullOrWhiteSpace(iconUrl)) {
iconUrl = Href("../../Content/Images/imagePlaceholder.png");
extensionClass = "screenshotThumbnail";
}
}
if (Model.Extensions.Count() > 0) {
<ul class="contentItems theme">
@foreach (var item in Model.Extensions) {
<li>
@{
string extensionClass = "iconThumbnail";
string iconUrl = @item.IconUrl;
if (!string.IsNullOrWhiteSpace(@item.FirstScreenshot)) {
iconUrl = @item.FirstScreenshot;
extensionClass = "screenshotThumbnail";
}
else if (string.IsNullOrWhiteSpace(iconUrl)) {
iconUrl = Href("../../Content/Images/imagePlaceholder.png");
extensionClass = "screenshotThumbnail";
}
}
<div class="@extensionClass">
<div class="extensionDetails column">
<div class="extensionName">
@if (!string.IsNullOrWhiteSpace(item.GalleryDetailsUrl)) {
<a href="@item.GalleryDetailsUrl">
<h2>@item.Title<span> - @T("Version: {0}", item.Version)</span></h2>
</a>
} else {
<h2>@item.Title<span> - @T("Version: {0}", item.Version)</span></h2>
}
</div>
<div class="@extensionClass">
<div class="extensionDetails column">
<div class="extensionName">
@if (!string.IsNullOrWhiteSpace(item.GalleryDetailsUrl)) {
<a href="@item.GalleryDetailsUrl">
<h2>@item.Title<span> - @T("Version: {0}", item.Version)</span></h2>
</a>
} else {
<h2>@item.Title<span> - @T("Version: {0}", item.Version)</span></h2>
}
</div>
<div class="ratings" style="width:@(15*5)px" title="@T("Ratings: {0} ({1})", item.Rating, item.RatingsCount)">
<div class="score" style="width:@(15*(item.Rating))px">&nbsp;</div>
</div>
<div class="ratings" style="width:@(15*5)px" title="@T("Ratings: {0} ({1})", item.Rating, item.RatingsCount)">
<div class="score" style="width:@(15*(item.Rating))px">&nbsp;</div>
</div>
<div class="related">
@Html.ActionLink(T("Install").ToString(), "Install", new RouteValueDictionary {{"packageId", item.PackageId}, {"version", item.Version}, {"sourceId", item.Source.Id}, {"redirectTo", "Themes"}})@T(" | ")
<a href="@item.PackageStreamUri">@T("Download")</a>
</div>
<div class="related">
@Html.ActionLink(T("Install").ToString(), "Install", new RouteValueDictionary {{"packageId", item.PackageId}, {"version", item.Version}, {"sourceId", item.Source.Id}, {"redirectTo", "Themes"}})@T(" | ")
<a href="@item.PackageStreamUri">@T("Download")</a>
</div>
<div class="properties">
<p>@(item.Description == null ? T("(No description").Text : item.Description)</p>
<ul class="pageStatus">
<li>@T("Last Updated: {0}", DateTime.Now.ToLocalTime())</li>
<li>&nbsp;&#124;&nbsp;@T("Author: {0}", !string.IsNullOrEmpty(item.Authors) ? item.Authors : T("Unknown").ToString())</li>
<li>&nbsp;&#124;&nbsp;@T("Downloads: {0}", item.DownloadCount)</li>
<li>&nbsp;&#124;&nbsp;@T("Website: ")
@if(!string.IsNullOrEmpty(item.ProjectUrl)) { <a href="@item.ProjectUrl">@item.ProjectUrl</a> }
else { @T("Unknown").ToString() }
</li>
</ul>
</div>
</div>
<div class="properties">
<p>@(item.Description == null ? T("(No description").Text : item.Description)</p>
<ul class="pageStatus">
<li>@T("Last Updated: {0}", DateTime.Now.ToLocalTime())</li>
<li>&nbsp;&#124;&nbsp;@T("Author: {0}", !string.IsNullOrEmpty(item.Authors) ? item.Authors : T("Unknown").ToString())</li>
<li>&nbsp;&#124;&nbsp;@T("Downloads: {0}", item.DownloadCount)</li>
<li>&nbsp;&#124;&nbsp;@T("Website: ")
@if(!string.IsNullOrEmpty(item.ProjectUrl)) { <a href="@item.ProjectUrl">@item.ProjectUrl</a> }
else { @T("Unknown").ToString() }
</li>
</ul>
</div>
</div>
<div class="extensionThumbnail column">
<img src="@iconUrl" class="thumbnail" alt="theme" />
</div>
</div>
</li>}
</ul>
}
<div class="extensionThumbnail column">
<img src="@iconUrl" class="thumbnail" alt="theme" />
</div>
</div>
</li>}
</ul>
}
}

View File

@@ -75,8 +75,7 @@ namespace Orchard.Themes.Controllers {
return View(new ThemesIndexViewModel {
CurrentTheme = currentTheme, Themes = themes,
InstallThemes = _featureManager.GetEnabledFeatures().FirstOrDefault(f => f.Id == "PackagingServices") != null,
BrowseToGallery = _featureManager.GetEnabledFeatures().FirstOrDefault(f => f.Id == "Gallery") != null
InstallThemes = _featureManager.GetEnabledFeatures().FirstOrDefault(f => f.Id == "PackagingServices") != null
});
} catch (Exception exception) {
this.Error(exception, T("Listing themes failed: {0}", exception.Message), Logger, Services.Notifier);

View File

@@ -5,7 +5,6 @@ using Orchard.Environment.Extensions.Models;
namespace Orchard.Themes.ViewModels {
public class ThemesIndexViewModel {
public bool InstallThemes { get; set; }
public bool BrowseToGallery { get; set; }
public ExtensionDescriptor CurrentTheme { get; set; }
public IEnumerable<ThemeEntry> Themes { get; set; }
}

View File

@@ -1,6 +1,9 @@
@model Orchard.Themes.ViewModels.ThemesIndexViewModel
@{ Style.Require("ThemesAdmin"); }
<h1>@Html.TitleForPage(T("Manage Themes").ToString())</h1>
@{
Style.Require("ThemesAdmin");
WorkContext.Layout.BeforeContent.Add(New.BeforeContent(Title: "Themes"), "5");
}
@if (Model.CurrentTheme == null) {
<p>
@T("There is no current theme in the application. The built-in theme will be used.")<br />
@@ -21,20 +24,16 @@
if (Model.InstallThemes) {
<p>@Html.ActionLink(T("Install a theme").ToString(), "AddTheme", "PackagingServices", new { area = "Orchard.Packaging", returnUrl = HttpContext.Current.Request.RawUrl }, new { @class = "button primaryAction" })</p>
}
if (Model.BrowseToGallery) {
<p>@Html.ActionLink(T("Install a theme from the Gallery").ToString(), "Themes", "Gallery", new { area = "Orchard.Packaging", returnUrl = HttpContext.Current.Request.RawUrl }, new { @class = "button primaryAction" })</p>
}
}
<h2>@T("Available Themes")</h2>
<ul class="templates">
@foreach (var theme in Model.Themes) {
var tags = theme.Descriptor.Tags;
bool hidden = false;
if (tags != null) {
hidden = tags.Split(',').Any(t => t.Trim().Equals("hidden", StringComparison.OrdinalIgnoreCase));
}
var tags = theme.Descriptor.Tags;
bool hidden = false;
if (tags != null) {
hidden = tags.Split(',').Any(t => t.Trim().Equals("hidden", StringComparison.OrdinalIgnoreCase));
}
if (!hidden && (Model.CurrentTheme == null || theme.Id != Model.CurrentTheme.Id)) {
<li>
<div>

View File

@@ -318,11 +318,35 @@ form.link button:hover {
.localmenu li {
display: inline;
}
.localmenu li.middle {
.localmenu li {
padding-top: 5px;
margin-bottom: 5px;
padding-left: 10px;
padding-right: 10px;
margin-left: 5px;
}
.localmenu li.middle, .localmenu li.first, .localmenu li.last {
border-color: #E4E5E6;
border-style: solid;
border-left-width: thin;
border-right-width: thin;
border-top-width: thin;
}
.localmenu li.selected {
font-weight: bold;
background-color: White;
}
.localmenu li.selected a {
color: #3A822E;
}
#layout-content {
background-color: #F3F4F5;
}
#content {
background-color: White;
border-color: #E4E5E6;
border-style: solid;
border-width: thin;
padding: 20px;
}
.section-dashboard, .section-new
{
@@ -387,7 +411,7 @@ form.link button:hover {
/* Content
***************************************************************/
#main h1 {
#main #content h1 {
margin:0 0 1em;
}
#main h2, #main h3 {

View File

@@ -0,0 +1,3 @@
@using Orchard.Localization;
<h1>@T(Model.Title).Text</h1>

View File

@@ -57,7 +57,7 @@
}
@if (Model.LocalNavigation != null) {
<div id="before-content">
<div id="local-navigation">
@Zone(Model.LocalNavigation)
</div>
}

View File

@@ -122,6 +122,9 @@
<ItemGroup>
<Content Include="TheAdmin\Views\LocalMenu.cshtml" />
</ItemGroup>
<ItemGroup>
<Content Include="TheAdmin\Views\BeforeContent.cshtml" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.