mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-15 03:25:23 +08:00
Merge
--HG-- branch : dev
This commit is contained in:
@@ -5,6 +5,10 @@ namespace Orchard.Core.Contents {
|
||||
public class Shapes : IShapeTableProvider {
|
||||
public void Discover(ShapeTableBuilder builder) {
|
||||
builder.Describe("Content")
|
||||
.OnCreated(created => {
|
||||
var content = created.Shape;
|
||||
content.Child.Add(created.New.PlaceChildContent(Source: content));
|
||||
})
|
||||
.OnDisplaying(displaying => {
|
||||
ContentItem contentItem = displaying.Shape.ContentItem;
|
||||
if (contentItem != null) {
|
||||
@@ -16,6 +20,9 @@ namespace Orchard.Core.Contents {
|
||||
displaying.ShapeMetadata.Alternates.Add("Content_" + displaying.ShapeMetadata.DisplayType);
|
||||
//Content.Summary-Page
|
||||
displaying.ShapeMetadata.Alternates.Add("Content_" + displaying.ShapeMetadata.DisplayType + "__" + contentItem.ContentType);
|
||||
|
||||
if (!displaying.ShapeMetadata.DisplayType.Contains("Admin"))
|
||||
displaying.ShapeMetadata.Wrappers.Add("Content_ControlWrapper");
|
||||
}
|
||||
});
|
||||
|
||||
|
@@ -0,0 +1,11 @@
|
||||
@using Orchard.ContentManagement;
|
||||
@using Orchard.Core.Contents;
|
||||
@if (AuthorizedFor(Permissions.EditContent)) {
|
||||
<div class="content-control">
|
||||
<div class="manage-actions">@Html.ItemEditLinkWithReturnUrl(T("Edit").Text, (ContentItem)Model.ContentItem)</div>
|
||||
@Display(Model.Child)
|
||||
</div>
|
||||
}
|
||||
else {
|
||||
@Display(Model.Child)
|
||||
}
|
@@ -394,6 +394,7 @@
|
||||
<Content Include="Dashboard\Views\Helper\Index.cshtml" />
|
||||
<None Include="Common\Placement.info" />
|
||||
<None Include="Contents\Placement.info" />
|
||||
<None Include="Contents\Views\Content.ControlWrapper.cshtml" />
|
||||
<None Include="Localization\Placement.info" />
|
||||
<None Include="PublishLater\Placement.info" />
|
||||
<None Include="Routable\Views\Parts\RoutableTitle.cshtml" />
|
||||
|
@@ -138,11 +138,11 @@
|
||||
<Content Include="Views\Parts\Blogs.BlogPost.List.Admin.cshtml">
|
||||
<SubType>Code</SubType>
|
||||
</Content>
|
||||
<Content Include="Views\Items\Blog.cshtml" />
|
||||
<Content Include="Views\Items\BlogPost.cshtml" />
|
||||
<Content Include="Views\Items\Blog.Summary.cshtml" />
|
||||
<Content Include="Views\Items\BlogPost.Summary.cshtml" />
|
||||
<Content Include="Views\Items\Blog.SummaryAdmin.cshtml" />
|
||||
<Content Include="Views\Items\Content-Blog.cshtml" />
|
||||
<Content Include="Views\Items\Content-BlogPost.cshtml" />
|
||||
<Content Include="Views\Items\Content-Blog.Summary.cshtml" />
|
||||
<Content Include="Views\Items\Content-BlogPost.Summary.cshtml" />
|
||||
<Content Include="Views\Items\Content-Blog.SummaryAdmin.cshtml" />
|
||||
<Content Include="Web.config" />
|
||||
<Content Include="Views\Web.config" />
|
||||
</ItemGroup>
|
||||
@@ -165,10 +165,10 @@
|
||||
<None Include="Views\Parts\Blogs.BlogArchives.cshtml" />
|
||||
<None Include="Views\EditorTemplates\Parts\Blogs.RecentBlogPosts.cshtml" />
|
||||
<None Include="Views\EditorTemplates\Parts\Blogs.BlogArchives.cshtml" />
|
||||
<None Include="Views\Items\Blog.DetailAdmin.cshtml" />
|
||||
<None Include="Views\Items\Blog.Editor.cshtml" />
|
||||
<None Include="Views\Items\BlogPost.Editor.cshtml" />
|
||||
<None Include="Views\Items\BlogPost.SummaryAdmin.cshtml" />
|
||||
<None Include="Views\Items\Content-Blog.DetailAdmin.cshtml" />
|
||||
<None Include="Views\Items\Content-Blog.Editor.cshtml" />
|
||||
<None Include="Views\Items\Content-BlogPost.Editor.cshtml" />
|
||||
<None Include="Views\Items\Content-BlogPost.SummaryAdmin.cshtml" />
|
||||
<None Include="Views\Parts\Blogs.BlogPost.List.cshtml" />
|
||||
<None Include="Views\Parts\Blogs.Blog.Pager.cshtml" />
|
||||
<None Include="Views\Parts\Blogs.RecentBlogPosts.cshtml" />
|
||||
|
@@ -80,6 +80,10 @@
|
||||
<Compile Include="Services\IContentDefinitionService.cs" />
|
||||
<Compile Include="ViewModels\AddFieldViewModel.cs" />
|
||||
<Compile Include="ViewModels\CreatePartViewModel.cs" />
|
||||
<Compile Include="ViewModels\EditFieldViewModel.cs" />
|
||||
<Compile Include="ViewModels\EditPartFieldViewModel.cs" />
|
||||
<Compile Include="ViewModels\EditPartViewModel.cs" />
|
||||
<Compile Include="ViewModels\EditTypePartViewModel.cs" />
|
||||
<Compile Include="ViewModels\ListContentPartsViewModel.cs" />
|
||||
<Compile Include="ViewModels\RemoveFieldViewModel.cs" />
|
||||
<Compile Include="ViewModels\RemovePartViewModel.cs" />
|
||||
|
@@ -0,0 +1,16 @@
|
||||
using Orchard.ContentManagement.MetaData.Models;
|
||||
|
||||
namespace Orchard.ContentTypes.ViewModels {
|
||||
|
||||
public class EditFieldViewModel {
|
||||
public EditFieldViewModel() { }
|
||||
|
||||
public EditFieldViewModel(ContentFieldDefinition contentFieldDefinition) {
|
||||
Name = contentFieldDefinition.Name;
|
||||
_Definition = contentFieldDefinition;
|
||||
}
|
||||
|
||||
public string Name { get; set; }
|
||||
public ContentFieldDefinition _Definition { get; private set; }
|
||||
}
|
||||
}
|
@@ -0,0 +1,30 @@
|
||||
using System.Collections.Generic;
|
||||
using Orchard.ContentManagement.MetaData.Models;
|
||||
using Orchard.ContentManagement.ViewModels;
|
||||
|
||||
namespace Orchard.ContentTypes.ViewModels {
|
||||
public class EditPartFieldViewModel {
|
||||
|
||||
public EditPartFieldViewModel() {
|
||||
Settings = new SettingsDictionary();
|
||||
}
|
||||
|
||||
public EditPartFieldViewModel(int index, ContentPartFieldDefinition field) {
|
||||
Index = index;
|
||||
Name = field.Name;
|
||||
FieldDefinition = new EditFieldViewModel(field.FieldDefinition);
|
||||
Settings = field.Settings;
|
||||
_Definition = field;
|
||||
}
|
||||
|
||||
public int Index { get; set; }
|
||||
public string Prefix { get { return "Fields[" + Index + "]"; } }
|
||||
public EditPartViewModel Part { get; set; }
|
||||
|
||||
public string Name { get; set; }
|
||||
public IEnumerable<TemplateViewModel> Templates { get; set; }
|
||||
public EditFieldViewModel FieldDefinition { get; set; }
|
||||
public SettingsDictionary Settings { get; set; }
|
||||
public ContentPartFieldDefinition _Definition { get; private set; }
|
||||
}
|
||||
}
|
@@ -0,0 +1,34 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Orchard.ContentManagement.MetaData.Models;
|
||||
using Orchard.ContentManagement.ViewModels;
|
||||
using Orchard.Utility.Extensions;
|
||||
using Orchard.ContentTypes.Extensions;
|
||||
|
||||
namespace Orchard.ContentTypes.ViewModels {
|
||||
public class EditPartViewModel {
|
||||
public EditPartViewModel() {
|
||||
Fields = new List<EditPartFieldViewModel>();
|
||||
Settings = new SettingsDictionary();
|
||||
}
|
||||
|
||||
public EditPartViewModel(ContentPartDefinition contentPartDefinition) {
|
||||
Name = contentPartDefinition.Name;
|
||||
Fields = contentPartDefinition.Fields.Select((f, i) => new EditPartFieldViewModel(i, f) { Part = this }).ToList();
|
||||
Settings = contentPartDefinition.Settings;
|
||||
_Definition = contentPartDefinition;
|
||||
}
|
||||
|
||||
public string Prefix { get { return "PartDefinition"; } }
|
||||
public string Name { get; set; }
|
||||
private string _displayName;
|
||||
public string DisplayName {
|
||||
get { return !string.IsNullOrWhiteSpace(_displayName) ? _displayName : Name.TrimEnd("Part").CamelFriendly(); }
|
||||
set { _displayName = value; }
|
||||
}
|
||||
public IEnumerable<TemplateViewModel> Templates { get; set; }
|
||||
public IEnumerable<EditPartFieldViewModel> Fields { get; set; }
|
||||
public SettingsDictionary Settings { get; set; }
|
||||
public ContentPartDefinition _Definition { get; private set; }
|
||||
}
|
||||
}
|
@@ -0,0 +1,26 @@
|
||||
using System.Collections.Generic;
|
||||
using Orchard.ContentManagement.MetaData.Models;
|
||||
using Orchard.ContentManagement.ViewModels;
|
||||
|
||||
namespace Orchard.ContentTypes.ViewModels {
|
||||
public class EditTypePartViewModel {
|
||||
public EditTypePartViewModel() {
|
||||
Settings = new SettingsDictionary();
|
||||
}
|
||||
|
||||
public EditTypePartViewModel(int index, ContentTypePartDefinition part) {
|
||||
Index = index;
|
||||
PartDefinition = new EditPartViewModel(part.PartDefinition);
|
||||
Settings = part.Settings;
|
||||
_Definition = part;
|
||||
}
|
||||
|
||||
public int Index { get; set; }
|
||||
public string Prefix { get { return "Parts[" + Index + "]"; } }
|
||||
public EditPartViewModel PartDefinition { get; set; }
|
||||
public SettingsDictionary Settings { get; set; }
|
||||
public EditTypeViewModel Type { get; set; }
|
||||
public IEnumerable<TemplateViewModel> Templates { get; set; }
|
||||
public ContentTypePartDefinition _Definition { get; private set; }
|
||||
}
|
||||
}
|
@@ -3,8 +3,6 @@ using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Orchard.ContentManagement.MetaData.Models;
|
||||
using Orchard.ContentManagement.ViewModels;
|
||||
using Orchard.ContentTypes.Extensions;
|
||||
using Orchard.Utility.Extensions;
|
||||
|
||||
namespace Orchard.ContentTypes.ViewModels {
|
||||
public class EditTypeViewModel {
|
||||
@@ -46,87 +44,4 @@ namespace Orchard.ContentTypes.ViewModels {
|
||||
}
|
||||
}
|
||||
|
||||
public class EditTypePartViewModel {
|
||||
public EditTypePartViewModel() {
|
||||
Settings = new SettingsDictionary();
|
||||
}
|
||||
|
||||
public EditTypePartViewModel(int index, ContentTypePartDefinition part) {
|
||||
Index = index;
|
||||
PartDefinition = new EditPartViewModel(part.PartDefinition);
|
||||
Settings = part.Settings;
|
||||
_Definition = part;
|
||||
}
|
||||
|
||||
public int Index { get; set; }
|
||||
public string Prefix { get { return "Parts[" + Index + "]"; } }
|
||||
public EditPartViewModel PartDefinition { get; set; }
|
||||
public SettingsDictionary Settings { get; set; }
|
||||
public EditTypeViewModel Type { get; set; }
|
||||
public IEnumerable<TemplateViewModel> Templates { get; set; }
|
||||
public ContentTypePartDefinition _Definition { get; private set; }
|
||||
}
|
||||
|
||||
public class EditPartViewModel {
|
||||
public EditPartViewModel() {
|
||||
Fields = new List<EditPartFieldViewModel>();
|
||||
Settings = new SettingsDictionary();
|
||||
}
|
||||
|
||||
public EditPartViewModel(ContentPartDefinition contentPartDefinition) {
|
||||
Name = contentPartDefinition.Name;
|
||||
Fields = contentPartDefinition.Fields.Select((f, i) => new EditPartFieldViewModel(i, f) { Part = this }).ToList();
|
||||
Settings = contentPartDefinition.Settings;
|
||||
_Definition = contentPartDefinition;
|
||||
}
|
||||
|
||||
public string Prefix { get { return "PartDefinition"; } }
|
||||
public string Name { get; set; }
|
||||
private string _displayName;
|
||||
public string DisplayName {
|
||||
get { return !string.IsNullOrWhiteSpace(_displayName) ? _displayName : Name.TrimEnd("Part").CamelFriendly(); }
|
||||
set { _displayName = value; }
|
||||
}
|
||||
public IEnumerable<TemplateViewModel> Templates { get; set; }
|
||||
public IEnumerable<EditPartFieldViewModel> Fields { get; set; }
|
||||
public SettingsDictionary Settings { get; set; }
|
||||
public ContentPartDefinition _Definition { get; private set; }
|
||||
}
|
||||
|
||||
public class EditPartFieldViewModel {
|
||||
|
||||
public EditPartFieldViewModel() {
|
||||
Settings = new SettingsDictionary();
|
||||
}
|
||||
|
||||
public EditPartFieldViewModel(int index, ContentPartFieldDefinition field) {
|
||||
Index = index;
|
||||
Name = field.Name;
|
||||
FieldDefinition = new EditFieldViewModel(field.FieldDefinition);
|
||||
Settings = field.Settings;
|
||||
_Definition = field;
|
||||
}
|
||||
|
||||
public int Index { get; set; }
|
||||
public string Prefix { get { return "Fields[" + Index + "]"; } }
|
||||
public EditPartViewModel Part { get; set; }
|
||||
|
||||
public string Name { get; set; }
|
||||
public IEnumerable<TemplateViewModel> Templates { get; set; }
|
||||
public EditFieldViewModel FieldDefinition { get; set; }
|
||||
public SettingsDictionary Settings { get; set; }
|
||||
public ContentPartFieldDefinition _Definition { get; private set; }
|
||||
}
|
||||
|
||||
public class EditFieldViewModel {
|
||||
public EditFieldViewModel() { }
|
||||
|
||||
public EditFieldViewModel(ContentFieldDefinition contentFieldDefinition) {
|
||||
Name = contentFieldDefinition.Name;
|
||||
_Definition = contentFieldDefinition;
|
||||
}
|
||||
|
||||
public string Name { get; set; }
|
||||
public ContentFieldDefinition _Definition { get; private set; }
|
||||
}
|
||||
}
|
||||
|
@@ -1,4 +1,5 @@
|
||||
@model Orchard.ContentTypes.ViewModels.EditPartViewModel
|
||||
@{ Style.Require("ContentTypesAdmin"); }
|
||||
|
||||
<h1>@Html.TitleForPage(T("Edit Part").ToString())</h1>
|
||||
<p class="breadcrumb">@Html.ActionLink(T("Content Types").Text, "index")@T(" > ")@Html.ActionLink(T("Content Parts").Text, "listparts")@T(" > ")@T("Edit Part")</p>
|
||||
@@ -6,19 +7,30 @@
|
||||
@Html.ValidationSummary()
|
||||
<fieldset>
|
||||
<label for="Name">@T("Name")</label>
|
||||
@* has unintended consequences (renamging the part) - changing the name creates a new part of that name *@
|
||||
@* has unintended consequences (renaming the part) - changing the name creates a new part of that name *@
|
||||
@Html.TextBoxFor(m => m.Name, new {@class = "textMedium", disabled = "disabled"})
|
||||
@Html.HiddenFor(m => m.Name)
|
||||
</fieldset>
|
||||
<div class="manage-part">
|
||||
<div class="settings">
|
||||
@DisplayChildren(Model.Templates)
|
||||
@{ Html.RenderTemplates(Model.Templates); }
|
||||
</div>
|
||||
<h2>@T("Fields")</h2>
|
||||
<div class="manage add-to-type">@Html.ActionLink(T("Add").Text, "AddFieldTo", new { area = "Orchard.ContentTypes", id = Model.Name }, new { @class = "button" })</div>
|
||||
@DisplayChildren(Model.Fields)
|
||||
@Html.EditorFor(m => m.Fields, "Fields", "")
|
||||
</div>
|
||||
<fieldset class="action">
|
||||
<button class="primaryAction" type="submit">@T("Save")</button>
|
||||
</fieldset>
|
||||
}
|
||||
|
||||
@using(Script.Foot()){
|
||||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
(function ($) {
|
||||
$(".manage-field h3,.manage-part h3").expandoControl(function (controller) { return controller.nextAll(".details"); }, { collapse: true, remember: false });
|
||||
$(".manage-field h4").expandoControl(function (controller) { return controller.nextAll(".settings"); }, { collapse: true, remember: false });
|
||||
})(jQuery);
|
||||
//]]>
|
||||
</script>
|
||||
}
|
@@ -1,7 +1,7 @@
|
||||
@model Orchard.ContentTypes.ViewModels.EditPartFieldViewModel
|
||||
<fieldset class="manage-field">
|
||||
<h4>@Model.Name <span>(@Model.FieldDefinition.Name)</span></h4>@if (Model.Templates.Any()) {
|
||||
<div class="settings">@Html.RenderTemplates(Model.Templates);
|
||||
<div class="settings">@{Html.RenderTemplates(Model.Templates);}
|
||||
</div>}
|
||||
@Html.HiddenFor(m => m.Name)@Html.HiddenFor(m => m.FieldDefinition.Name)@Html.HiddenFor(m => m.Index)
|
||||
</fieldset>
|
@@ -18,6 +18,7 @@ namespace Orchard.Roles.Drivers {
|
||||
private readonly INotifier _notifier;
|
||||
private readonly IAuthenticationService _authenticationService;
|
||||
private readonly IAuthorizationService _authorizationService;
|
||||
private const string TemplateName = "Parts/Roles.UserRoles";
|
||||
|
||||
public UserRolesPartDriver(
|
||||
IRepository<UserRolesPartRecord> userRolesRepository,
|
||||
@@ -46,20 +47,19 @@ namespace Orchard.Roles.Drivers {
|
||||
if (!_authorizationService.TryCheckAccess(Permissions.ApplyRoles, _authenticationService.GetAuthenticatedUser(), userRolesPart))
|
||||
return null;
|
||||
|
||||
var roles =
|
||||
_roleService.GetRoles().Select(
|
||||
x => new UserRoleEntry {
|
||||
RoleId = x.Id,
|
||||
Name = x.Name,
|
||||
Granted = userRolesPart.Roles.Contains(x.Name)
|
||||
});
|
||||
|
||||
var model = new UserRolesViewModel {
|
||||
User = userRolesPart.As<IUser>(),
|
||||
UserRoles = userRolesPart,
|
||||
Roles = roles.ToList(),
|
||||
};
|
||||
return ContentPartTemplate(model, "Parts/Roles.UserRoles");
|
||||
return ContentShape("Parts_Roles_UserRoles_Edit",
|
||||
() => {
|
||||
var roles =_roleService.GetRoles().Select(x => new UserRoleEntry {
|
||||
RoleId = x.Id,
|
||||
Name = x.Name,
|
||||
Granted = userRolesPart.Roles.Contains(x.Name)});
|
||||
var model = new UserRolesViewModel {
|
||||
User = userRolesPart.As<IUser>(),
|
||||
UserRoles = userRolesPart,
|
||||
Roles = roles.ToList(),
|
||||
};
|
||||
return shapeHelper.EditorTemplate(TemplateName: TemplateName, Model: model, Prefix: Prefix);
|
||||
});
|
||||
}
|
||||
|
||||
protected override DriverResult Editor(UserRolesPart userRolesPart, IUpdateModel updater, dynamic shapeHelper) {
|
||||
@@ -67,29 +67,26 @@ namespace Orchard.Roles.Drivers {
|
||||
if (!_authorizationService.TryCheckAccess(Permissions.ApplyRoles, _authenticationService.GetAuthenticatedUser(), userRolesPart))
|
||||
return null;
|
||||
|
||||
var model = new UserRolesViewModel {
|
||||
User = userRolesPart.As<IUser>(),
|
||||
UserRoles = userRolesPart,
|
||||
};
|
||||
|
||||
var model = BuildEditorViewModel(userRolesPart);
|
||||
if (updater.TryUpdateModel(model, Prefix, null, null)) {
|
||||
|
||||
var currentUserRoleRecords = _userRolesRepository.Fetch(x => x.UserId == model.User.Id);
|
||||
var currentRoleRecords = currentUserRoleRecords.Select(x => x.Role);
|
||||
var targetRoleRecords = model.Roles.Where(x => x.Granted).Select(x => _roleService.GetRole(x.RoleId));
|
||||
|
||||
foreach (var addingRole in targetRoleRecords.Where(x => !currentRoleRecords.Contains(x))) {
|
||||
_notifier.Warning(T("Adding role {0} to user {1}", addingRole.Name, userRolesPart.As<IUser>().UserName));
|
||||
_userRolesRepository.Create(new UserRolesPartRecord { UserId = model.User.Id, Role = addingRole });
|
||||
}
|
||||
|
||||
foreach (var removingRole in currentUserRoleRecords.Where(x => !targetRoleRecords.Contains(x.Role))) {
|
||||
_notifier.Warning(T("Removing role {0} from user {1}", removingRole.Role.Name, userRolesPart.As<IUser>().UserName));
|
||||
_userRolesRepository.Delete(removingRole);
|
||||
}
|
||||
|
||||
}
|
||||
return ContentPartTemplate(model, "Parts/Roles.UserRoles");
|
||||
return ContentShape("Parts_Roles_UserRoles_Edit",
|
||||
() => shapeHelper.EditorTemplate(TemplateName: TemplateName, Model: model, Prefix: Prefix));
|
||||
}
|
||||
|
||||
private static UserRolesViewModel BuildEditorViewModel(UserRolesPart userRolesPart) {
|
||||
return new UserRolesViewModel { User = userRolesPart.As<IUser>(), UserRoles = userRolesPart };
|
||||
}
|
||||
}
|
||||
}
|
@@ -39,6 +39,7 @@
|
||||
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.ComponentModel.DataAnnotations">
|
||||
@@ -108,6 +109,9 @@
|
||||
<Name>Orchard.Core</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Placement.info" />
|
||||
</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.
|
||||
|
3
src/Orchard.Web/Modules/Orchard.Roles/Placement.info
Normal file
3
src/Orchard.Web/Modules/Orchard.Roles/Placement.info
Normal file
@@ -0,0 +1,3 @@
|
||||
<Placement>
|
||||
<Place Parts_Roles_UserRoles_Edit="Primary:10"/>
|
||||
</Placement>
|
@@ -24,8 +24,8 @@ namespace Orchard.Search.Drivers {
|
||||
protected override string Prefix { get { return "SearchSettings"; } }
|
||||
|
||||
protected override DriverResult Editor(SearchSettingsPart part, dynamic shapeHelper) {
|
||||
var model = new SearchSettingsViewModel();
|
||||
var searchedFields = part.SearchedFields;
|
||||
SearchSettingsViewModel model = new SearchSettingsViewModel();
|
||||
String [] searchedFields = part.SearchedFields;
|
||||
|
||||
if (_indexManager.HasIndexProvider()) {
|
||||
model.Entries = new List<SearchSettingsEntry>();
|
||||
@@ -34,13 +34,14 @@ namespace Orchard.Search.Drivers {
|
||||
}
|
||||
}
|
||||
|
||||
return ContentPartTemplate(model, "Parts/Search.SiteSettings");
|
||||
return ContentShape("Parts_Search_SiteSettings",
|
||||
() => shapeHelper.EditorTemplate(TemplateName: "Parts/Search.SiteSettings", Model: model));
|
||||
}
|
||||
|
||||
protected override DriverResult Editor(SearchSettingsPart part, IUpdateModel updater, dynamic shapeHelper) {
|
||||
var model = new SearchSettingsViewModel();
|
||||
|
||||
if(updater.TryUpdateModel(model, Prefix, null, null)) {
|
||||
SearchSettingsViewModel model = new SearchSettingsViewModel();
|
||||
|
||||
if (updater.TryUpdateModel(model, Prefix, null, null)) {
|
||||
part.SearchedFields = model.Entries.Where(e => e.Selected).Select(e => e.Field).ToArray();
|
||||
}
|
||||
|
||||
|
@@ -106,6 +106,9 @@
|
||||
<ItemGroup>
|
||||
<Content Include="Views\Parts\Search.SearchForm.cshtml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="Placement.info" />
|
||||
</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.
|
||||
|
3
src/Orchard.Web/Modules/Orchard.Search/Placement.info
Normal file
3
src/Orchard.Web/Modules/Orchard.Search/Placement.info
Normal file
@@ -0,0 +1,3 @@
|
||||
<Placement>
|
||||
<Place Parts_Search_SiteSettings="Primary:1"/>
|
||||
</Placement>
|
@@ -4,18 +4,16 @@
|
||||
<fieldset>
|
||||
<legend>@T("Search")</legend>
|
||||
<div>
|
||||
@{var entryIndex = 0;}
|
||||
@if (Model.Entries != null && Model.Entries.Any()) {
|
||||
foreach(var modelEntry in Model.Entries) {
|
||||
if(Model.Entries[entryIndex].Selected) {
|
||||
<input type="checkbox" value="true" checked="checked" name="@Html.FieldNameFor(m => m.Entries[entryIndex].Selected)" id="@Html.FieldIdFor(m => m.Entries[entryIndex].Selected)"/>
|
||||
foreach(SearchSettingsEntry modelEntry in Model.Entries) {
|
||||
if(modelEntry.Selected) {
|
||||
<input type="checkbox" value="true" checked="checked" name="@Html.FieldNameFor(m => modelEntry.Selected)" id="@Html.FieldIdFor(m => modelEntry.Selected)"/>
|
||||
}
|
||||
else {
|
||||
<input type="checkbox" value="true" name="@Html.FieldNameFor(m => m.Entries[entryIndex].Selected)" id="@Html.FieldIdFor(m => m.Entries[entryIndex].Selected)"/>
|
||||
<input type="checkbox" value="true" name="@Html.FieldNameFor(m => modelEntry.Selected)" id="@Html.FieldIdFor(m => modelEntry.Selected)"/>
|
||||
}
|
||||
@Html.HiddenFor(m => m.Entries[entryIndex].Field)
|
||||
<label class="forcheckbox" for="@Html.FieldIdFor(m => m.Entries[entryIndex].Selected)">@Model.Entries[entryIndex].Field</label>
|
||||
entryIndex = entryIndex + 1;
|
||||
@Html.HiddenFor(m => modelEntry.Field)
|
||||
<label class="forcheckbox" for="@Html.FieldIdFor(m => modelEntry.Selected)">@modelEntry.Field</label>
|
||||
}
|
||||
}
|
||||
else {
|
||||
|
@@ -8,13 +8,13 @@ namespace Orchard.Widgets {
|
||||
builder.Describe("Widget")
|
||||
.Configure(descriptor => {
|
||||
// todo: have "alternates" for chrome
|
||||
//todo: (heskew) something...this still doesn't feel right
|
||||
descriptor.Wrappers.Add("Widget_ControlWrapper");
|
||||
// todo: (heskew) something...this still doesn't feel right
|
||||
descriptor.Wrappers.Add("Widget_Wrapper");
|
||||
descriptor.Wrappers.Add("Widget_ControlWrapper");
|
||||
})
|
||||
.OnCreated(created => {
|
||||
var widget = created.Shape;
|
||||
widget.Main.Add(created.New.PlaceChildContent(Source: widget));
|
||||
widget.Child.Add(created.New.PlaceChildContent(Source: widget));
|
||||
})
|
||||
.OnDisplaying(displaying => {
|
||||
ContentItem contentItem = displaying.Shape.ContentItem;
|
||||
|
@@ -1,16 +1,16 @@
|
||||
@model Orchard.Widgets.Models.LayerPart
|
||||
|
||||
<fieldset>
|
||||
@Html.LabelFor(layer => layer.Name)
|
||||
@Html.TextBoxFor(layer => layer.Name)
|
||||
@Html.LabelFor(layer => layer.Name)
|
||||
@Html.TextBoxFor(layer => layer.Name)
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
@Html.LabelFor(layer => layer.Description)
|
||||
@Html.TextAreaFor(layer => layer.Description)
|
||||
@Html.LabelFor(layer => layer.Description)
|
||||
@Html.TextAreaFor(layer => layer.Description)
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
@Html.LabelFor(layer => layer.LayerRule)
|
||||
@Html.TextAreaFor(layer => layer.LayerRule)
|
||||
@Html.LabelFor(layer => layer.LayerRule)
|
||||
@Html.TextAreaFor(layer => layer.LayerRule)
|
||||
</fieldset>
|
@@ -2,7 +2,7 @@
|
||||
|
||||
<fieldset>
|
||||
@Html.LabelFor(widget => widget.Zone)
|
||||
@Html.DropDownListFor(widget => widget.Zone, new SelectList(Model.AvailableZones))
|
||||
@Html.DropDownListFor(widget => widget.Zone, new SelectList(Model.AvailableZones))
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
|
@@ -1,2 +1 @@
|
||||
@Display(Model.Header)
|
||||
@Display(Model.Content)
|
||||
@Display(Model.Content)
|
@@ -3,9 +3,9 @@
|
||||
@if (AuthorizedFor(Permissions.ManageWidgets)) {
|
||||
<div class="widget-control">
|
||||
<div class="manage-actions">@Html.ItemEditLinkWithReturnUrl(T("Edit").Text, (ContentItem)Model.ContentItem)</div>
|
||||
@Display(Model.Main)
|
||||
@Display(Model.Child)
|
||||
</div>
|
||||
}
|
||||
else {
|
||||
@Display(Model.Main)
|
||||
@Display(Model.Child)
|
||||
}
|
@@ -1,3 +1,17 @@
|
||||
<div class="widget">
|
||||
@Display.PlaceChildContent(Source: Model)
|
||||
</div>
|
||||
@using Orchard.ContentManagement;
|
||||
@using Orchard.Widgets.Models;
|
||||
@{
|
||||
var title = ((IContent)Model.ContentItem).As<WidgetPart>().Title;
|
||||
}
|
||||
<article class="widget">
|
||||
<header>
|
||||
<h1>@title</h1>
|
||||
@Display(Model.Header)
|
||||
</header>
|
||||
@Display(Model.Child)
|
||||
@if(Model.Footer != null) {
|
||||
<footer>
|
||||
@Display(Model.Footer)
|
||||
</footer>
|
||||
}
|
||||
</article>
|
@@ -298,7 +298,8 @@
|
||||
return match && match[0].toLowerCase() || typeof(i);
|
||||
},
|
||||
//+ Jonas Raoni Soares Silva
|
||||
//@ http://jsfromhell.com/string/pad [v1.0]
|
||||
// the @ sign next to "//" is interpreted by IE when using cc<underscore>on! Inserted a space.
|
||||
// @ http://jsfromhell.com/string/pad [v1.0]
|
||||
__pad: function(str, l, s, t){
|
||||
var p = s || ' ';
|
||||
var o = str;
|
||||
|
@@ -125,29 +125,9 @@
|
||||
<Content Include="Default.aspx" />
|
||||
<Content Include="Global.asax" />
|
||||
<Content Include="Refresh.html" />
|
||||
<None Include="Themes\Classic\Placement.info">
|
||||
<SubType>Designer</SubType>
|
||||
</None>
|
||||
<Content Include="Themes\Contoso\Styles\search.css" />
|
||||
<Content Include="Themes\Contoso\Zones\Footer.html" />
|
||||
<Content Include="Themes\Corporate\Views\DisplayTemplates\Parts\Blogs.BlogPost.Metadata.ascx" />
|
||||
<Content Include="Themes\Green\Views\Orchard.Search\Search\Index.ascx" />
|
||||
<Content Include="Themes\TheAdmin\Scripts\admin.js" />
|
||||
<Content Include="Themes\TheAdmin\Styles\ie.css" />
|
||||
<Content Include="Themes\TheAdmin\Styles\images\menuClosed.gif" />
|
||||
<Content Include="Themes\TheAdmin\Styles\images\menuClosedHover.gif" />
|
||||
<Content Include="Themes\TheAdmin\Styles\images\menuOpen.gif" />
|
||||
<Content Include="Themes\TheAdmin\Styles\images\menuOpenHover.gif" />
|
||||
<Content Include="Themes\TheThemeMachine\draft.html" />
|
||||
<Content Include="Themes\TheThemeMachine\Styles\Site.css" />
|
||||
<Content Include="Themes\TheThemeMachine\Theme.png" />
|
||||
<Content Include="Themes\TheThemeMachine\Theme.txt" />
|
||||
<None Include="Themes\Classic\App_Data\Localization\fr-FR\orchard.theme.po" />
|
||||
<Content Include="Themes\TheThemeMachine\Views\Items\Widget-HtmlWidget.cshtml" />
|
||||
<Content Include="Web.config">
|
||||
<SubType>Designer</SubType>
|
||||
</Content>
|
||||
<Content Include="Themes\TheThemeMachine\Views\User.cshtml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Orchard\Orchard.Framework.csproj">
|
||||
@@ -167,163 +147,12 @@
|
||||
<Content Include="Config\Diagnostics.config">
|
||||
<SubType>Designer</SubType>
|
||||
</Content>
|
||||
<Content Include="Themes\TheAdmin\Styles\images\icons.png" />
|
||||
<Content Include="Themes\TheAdmin\Styles\images\tableHeaderBackgroundRed.gif" />
|
||||
<Content Include="Themes\TheAdmin\Styles\site.css" />
|
||||
<Content Include="Themes\TheAdmin\Theme.txt" />
|
||||
<Content Include="Themes\SafeMode\Views\Document.cshtml" />
|
||||
<Content Include="Themes\TheAdmin\Views\Layout.cshtml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="Config\Sample.Host.config" />
|
||||
<Content Include="Themes\ClassicDark\Views\Footer.cshtml" />
|
||||
<Content Include="Themes\ClassicDark\Views\Layout.cshtml" />
|
||||
<None Include="Themes\TheAdmin\Styles\images\icons.psd" />
|
||||
<Content Include="Themes\ClassicDark\Content\Images\bodyBackgroundgrey.gif" />
|
||||
<Content Include="Themes\ClassicDark\Content\Images\sidebarBackground.gif" />
|
||||
<Content Include="Themes\ClassicDark\Styles\blog.css" />
|
||||
<Content Include="Themes\ClassicDark\Styles\site.css" />
|
||||
<Content Include="Themes\ClassicDark\Theme.png" />
|
||||
<Content Include="Themes\ClassicDark\Theme.txt" />
|
||||
<Content Include="Themes\ClassicDark\Zones\Sidebar.html" />
|
||||
<Content Include="Themes\Classic\Content\Images\sidebarBackground.gif" />
|
||||
<Content Include="Themes\Classic\Zones\Sidebar.html" />
|
||||
<Content Include="Themes\Classic\Styles\blog.css" />
|
||||
<Content Include="Themes\Classic\Styles\site.css" />
|
||||
<Content Include="Themes\Classic\Theme.png" />
|
||||
<Content Include="Themes\Classic\Theme.txt" />
|
||||
<Content Include="Themes\Classic\Views\Footer.cshtml" />
|
||||
<Content Include="Themes\Classic\Views\Layout.cshtml" />
|
||||
<Content Include="Themes\Contoso\Content\Images\bkg.jpg" />
|
||||
<Content Include="Themes\Contoso\Content\Images\comment-arrow.png" />
|
||||
<Content Include="Themes\Contoso\Content\Images\content-bkg.png" />
|
||||
<Content Include="Themes\Contoso\Content\Images\content-bottom.png" />
|
||||
<Content Include="Themes\Contoso\Content\Images\content-top.png" />
|
||||
<Content Include="Themes\Contoso\Content\Images\feature-bkg-bottom.png" />
|
||||
<Content Include="Themes\Contoso\Content\Images\feature-bkg-top.png" />
|
||||
<Content Include="Themes\Contoso\Content\Images\Gallery\feature01.jpg" />
|
||||
<Content Include="Themes\Contoso\Content\Images\Gallery\feature02.jpg" />
|
||||
<Content Include="Themes\Contoso\Content\Images\Gallery\feature03.jpg" />
|
||||
<Content Include="Themes\Contoso\Content\Images\icon-location.png" />
|
||||
<Content Include="Themes\Contoso\Content\Images\menu-divider.png" />
|
||||
<Content Include="Themes\Contoso\Content\Images\menu-hover-left.png" />
|
||||
<Content Include="Themes\Contoso\Content\Images\menu-hover.png" />
|
||||
<Content Include="Themes\Contoso\Content\Images\menu-left.png" />
|
||||
<Content Include="Themes\Contoso\Content\Images\menu-right.png" />
|
||||
<Content Include="Themes\Contoso\Content\Images\nav-arrow-left.png" />
|
||||
<Content Include="Themes\Contoso\Content\Images\nav-arrow-right.png" />
|
||||
<Content Include="Themes\Contoso\Content\Images\sub-header.png" />
|
||||
<Content Include="Themes\Contoso\Zones\Sidebar-w2.html" />
|
||||
<Content Include="Themes\Contoso\Zones\Sidebar-w3.html" />
|
||||
<Content Include="Themes\Contoso\Zones\Highlights.html" />
|
||||
<Content Include="Themes\Contoso\Zones\Home-Headline.html" />
|
||||
<Content Include="Themes\Contoso\Zones\Home-Hero-Gallery.html" />
|
||||
<Content Include="Themes\Contoso\Zones\Home-Hero.html" />
|
||||
<Content Include="Themes\Contoso\Zones\Sidebar-w1.html" />
|
||||
<Content Include="Themes\Contoso\Scripts\easySlider.js" />
|
||||
<Content Include="Themes\Contoso\Styles\site.css" />
|
||||
<Content Include="Themes\Contoso\Theme.png" />
|
||||
<Content Include="Themes\Contoso\Theme.txt" />
|
||||
<Content Include="Themes\Corporate\Content\Images\bkg.jpg" />
|
||||
<Content Include="Themes\Corporate\Content\Images\consult-bkg.png" />
|
||||
<Content Include="Themes\Corporate\Content\Images\content-bkg.png" />
|
||||
<Content Include="Themes\Corporate\Content\Images\content-bottom.png" />
|
||||
<Content Include="Themes\Corporate\Content\Images\content-top.png" />
|
||||
<Content Include="Themes\Corporate\Content\Images\footer-bkg.jpg" />
|
||||
<Content Include="Themes\Corporate\Content\Images\footer-bkg.png" />
|
||||
<Content Include="Themes\Corporate\Content\Images\hm-divider.png" />
|
||||
<Content Include="Themes\Corporate\Content\Images\hm-header.png" />
|
||||
<Content Include="Themes\Corporate\Content\Images\icons\icon-5.png" />
|
||||
<Content Include="Themes\Corporate\Content\Images\icons\icon-4.png" />
|
||||
<Content Include="Themes\Corporate\Content\Images\icons\icon-3.png" />
|
||||
<Content Include="Themes\Corporate\Content\Images\icons\icon-2.png" />
|
||||
<Content Include="Themes\Corporate\Content\Images\icons\icon-1.png" />
|
||||
<Content Include="Themes\Corporate\Content\Images\jumping-people.jpg" />
|
||||
<Content Include="Themes\Corporate\Content\Images\logo.png" />
|
||||
<Content Include="Themes\Corporate\Content\Images\menu-left-over.png" />
|
||||
<Content Include="Themes\Corporate\Content\Images\menu-left.png" />
|
||||
<Content Include="Themes\Corporate\Content\Images\menu-right-over.png" />
|
||||
<Content Include="Themes\Corporate\Content\Images\menu-right.png" />
|
||||
<Content Include="Themes\Corporate\Content\Images\menu_bkg.jpg" />
|
||||
<Content Include="Themes\Corporate\Content\Images\notepad.png" />
|
||||
<Content Include="Themes\Corporate\Scripts\easySlider.js" />
|
||||
<Content Include="Themes\Corporate\Styles\site.css" />
|
||||
<Content Include="Themes\Corporate\Theme.png" />
|
||||
<Content Include="Themes\Corporate\Theme.txt" />
|
||||
<Content Include="Themes\Corporate\Views\DisplayTemplates\Items\Blogs.Blog.ascx" />
|
||||
<Content Include="Themes\Corporate\Views\DisplayTemplates\Items\Blogs.BlogPost.ascx" />
|
||||
<Content Include="Themes\Corporate\Views\DisplayTemplates\Items\Blogs.BlogPost.ListByArchive.ascx" />
|
||||
<Content Include="Themes\Corporate\Views\DisplayTemplates\Items\Contents.Item.ascx" />
|
||||
<Content Include="Themes\Corporate\Views\DisplayTemplates\Parts\Comments.Comments.ascx" />
|
||||
<Content Include="Themes\Corporate\Views\DisplayTemplates\Parts\Common.Metadata.ascx" />
|
||||
<Content Include="Themes\Corporate\Views\DisplayTemplates\Parts\Tags.ShowTags.ascx" />
|
||||
<Content Include="Themes\Corporate\Views\Footer.ascx" />
|
||||
<Content Include="Themes\Corporate\Views\Header.ascx" />
|
||||
<Content Include="Themes\Corporate\Views\Layout.ascx" />
|
||||
<Content Include="Themes\Corporate\Views\Layout.HomePage.ascx" />
|
||||
<Content Include="Themes\Corporate\Views\ListOfComments.ascx" />
|
||||
<Content Include="Themes\Corporate\Views\LogOn.ascx" />
|
||||
<Content Include="Themes\Corporate\Views\User.ascx" />
|
||||
<Content Include="Themes\Corporate\Zones\Home-Headline.html" />
|
||||
<Content Include="Themes\Corporate\Zones\Home-Hero.html" />
|
||||
<Content Include="Themes\Corporate\Zones\Sidebar-w1.html" />
|
||||
<Content Include="Themes\Corporate\Zones\Sidebar-w2.html" />
|
||||
<Content Include="Themes\Corporate\Zones\Sidebar-w3.html" />
|
||||
<Content Include="Themes\Green\Content\Images\bodyBackground.gif" />
|
||||
<Content Include="Themes\Green\Content\Images\bodyBackground.png" />
|
||||
<Content Include="Themes\Green\Content\Images\commentpointer.gif" />
|
||||
<Content Include="Themes\Green\Content\Images\logo.gif" />
|
||||
<Content Include="Themes\Green\Content\Images\logo.png" />
|
||||
<Content Include="Themes\Green\Content\Images\tabLeftOff.gif" />
|
||||
<Content Include="Themes\Green\Content\Images\tabLeftOn.gif" />
|
||||
<Content Include="Themes\Green\Content\Images\tabRightOff.gif" />
|
||||
<Content Include="Themes\Green\Content\Images\tabRightOn.gif" />
|
||||
<Content Include="Themes\Green\Views\Archives.ascx" />
|
||||
<Content Include="Themes\Green\Views\DisplayTemplates\Items\Blogs.BlogPost.ascx" />
|
||||
<Content Include="Themes\Green\Views\DisplayTemplates\Parts\Blogs.BlogPost.Metadata.ascx" />
|
||||
<Content Include="Themes\Green\Zones\sideBarZone1.html" />
|
||||
<Content Include="Themes\Green\Zones\sideBarZone2.html" />
|
||||
<Content Include="Themes\Green\Zones\User2.html" />
|
||||
<Content Include="Themes\Green\Zones\User3.html" />
|
||||
<Content Include="Themes\Green\Zones\User1.html" />
|
||||
<Content Include="Themes\Green\Styles\blog.css" />
|
||||
<Content Include="Themes\Green\Styles\site.css" />
|
||||
<Content Include="Themes\Green\Styles\yui.css" />
|
||||
<Content Include="Themes\Green\Theme.png" />
|
||||
<Content Include="Themes\Green\Theme.txt" />
|
||||
<Content Include="Themes\Green\Views\DisplayTemplates\Parts\Common.Metadata.ascx" />
|
||||
<Content Include="Themes\Green\Views\Layout.HomePage.ascx" />
|
||||
<Content Include="Themes\Green\Views\DisplayTemplates\Items\Blogs.Blog.ascx" />
|
||||
<Content Include="Themes\Green\Views\DisplayTemplates\Items\Blogs.Blog.Summary.ascx" />
|
||||
<Content Include="Themes\Green\Views\DisplayTemplates\Items\Blogs.BlogPost.Summary.ascx" />
|
||||
<Content Include="Themes\Green\Views\Footer.ascx" />
|
||||
<Content Include="Themes\Green\Views\Layout.ascx" />
|
||||
<Content Include="Themes\Green\Views\ListOfComments.ascx" />
|
||||
<Content Include="Themes\SafeMode\Content\orchard.ico" />
|
||||
<Content Include="Themes\SafeMode\Styles\ie6.css" />
|
||||
<Content Include="Themes\SafeMode\Styles\images\backgroundHeader.gif" />
|
||||
<Content Include="Themes\SafeMode\Styles\images\backgroundVines.gif" />
|
||||
<Content Include="Themes\SafeMode\Styles\images\orchardLogo.gif" />
|
||||
<Content Include="Themes\SafeMode\Styles\site.css" />
|
||||
<Content Include="Themes\SafeMode\Theme.png" />
|
||||
<Content Include="Themes\SafeMode\Theme.txt" />
|
||||
<Content Include="Themes\SafeMode\Views\Layout.cshtml" />
|
||||
<Content Include="Themes\TheAdmin\Styles\ie6.css" />
|
||||
<Content Include="Themes\TheAdmin\Styles\images\backgroundGradient.gif" />
|
||||
<Content Include="Themes\TheAdmin\Styles\images\backgroundHeader.gif" />
|
||||
<Content Include="Themes\TheAdmin\Styles\images\orchardLogo.gif" />
|
||||
<Content Include="Themes\TheAdmin\Theme.png" />
|
||||
<Content Include="Themes\TheAdmin\Views\User.cshtml" />
|
||||
<Content Include="Themes\TheAdmin\Views\Header.cshtml" />
|
||||
<Content Include="Themes\TheThemeMachine\Web.config" />
|
||||
<Content Include="Themes\TheThemeMachine\Views\Items\Content.Blog.cshtml" />
|
||||
<Content Include="Themes\TheThemeMachine\Views\Items\Widget-Content.cshtml" />
|
||||
<None Include="Themes\TheThemeMachine\Views\Layout.cshtml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Folder Include="App_Data\" />
|
||||
<Folder Include="Themes\ClassicDark\DesignerNotes\" />
|
||||
<Folder Include="Themes\SafeMode\Content\Images\" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
|
||||
|
@@ -64,7 +64,6 @@
|
||||
<Content Include="TheThemeMachine\Styles\Site.css" />
|
||||
<Content Include="TheThemeMachine\Theme.png" />
|
||||
<Content Include="TheThemeMachine\Theme.txt" />
|
||||
<Content Include="TheThemeMachine\Views\Items_Widget-HtmlWidget.cshtml" />
|
||||
<Content Include="Web.config">
|
||||
<SubType>Designer</SubType>
|
||||
</Content>
|
||||
@@ -218,8 +217,6 @@
|
||||
<Content Include="TheAdmin\Theme.png" />
|
||||
<Content Include="TheAdmin\Views\User.cshtml" />
|
||||
<Content Include="TheAdmin\Views\Header.cshtml" />
|
||||
<Content Include="TheThemeMachine\Views\Items\Content.Blog.cshtml" />
|
||||
<Content Include="TheThemeMachine\Views\Items_Widget-Content.cshtml" />
|
||||
<None Include="TheThemeMachine\Views\Layout.cshtml" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||
|
@@ -264,13 +264,13 @@ nav ul
|
||||
***************************************************************/
|
||||
|
||||
/* Has Aside */
|
||||
.has-aside #layout-content
|
||||
.has-aside-two #layout-content
|
||||
{
|
||||
width: 600px;
|
||||
float: left;
|
||||
}
|
||||
|
||||
.has-aside .aside-second
|
||||
.has-aside-two .aside-second
|
||||
{
|
||||
width: 360px;
|
||||
float: right;
|
||||
@@ -281,6 +281,11 @@ nav ul
|
||||
float: right;
|
||||
}
|
||||
|
||||
.has-aside-one .aside-first {
|
||||
width: 360px;
|
||||
float: left;
|
||||
}
|
||||
|
||||
.has-asides #layout-content
|
||||
{
|
||||
width: 600px;
|
||||
@@ -420,16 +425,12 @@ article.comment p.text {
|
||||
display:inline;
|
||||
}
|
||||
|
||||
.aside.third {
|
||||
/*.aside.third {
|
||||
border-top:1px solid #dbdbdb;
|
||||
clear:both;
|
||||
}
|
||||
}*/
|
||||
|
||||
|
||||
#layout-tripel div > div {
|
||||
float:left;
|
||||
width:316px;
|
||||
/*padding:12px 6px 0 6px;*/
|
||||
}
|
||||
|
||||
#footer-quad div.zone {
|
||||
float:left;
|
||||
@@ -463,14 +464,86 @@ article.comment p.text {
|
||||
/*border:1px solid #ff0000;*/
|
||||
}
|
||||
|
||||
/* If zone 1 is empty and 2, 3, 4 are not */
|
||||
/* Tripel */
|
||||
|
||||
#layout-tripel div {
|
||||
float:left;
|
||||
/*padding:12px 6px 0 6px;*/
|
||||
}
|
||||
|
||||
/*1 zone on */
|
||||
.tripel-1 #tripel-first { width:960px; }
|
||||
|
||||
/*2 zone on */
|
||||
.tripel-2 #tripel-second { width:960px; }
|
||||
|
||||
/*3 zone on */
|
||||
.tripel-3 #tripel-third { width:960px; }
|
||||
|
||||
/*2 zones on */
|
||||
|
||||
/* If zones 1, 2 are on */
|
||||
.tripel-12 #tripel-first, .tripel-12 #tripel-second { width:480px; }
|
||||
|
||||
/* If zones 2, 3 are on */
|
||||
.tripel-23 #tripel-second, .tripel-23 #tripel-third { width:480px; }
|
||||
|
||||
/* If zones 1, 3 are on */
|
||||
.tripel-13 #tripel-first, .tripel-13 #tripel-third { width:480px; }
|
||||
|
||||
/*3 zones on */
|
||||
|
||||
/* If zones 1, 2, 3 are on */
|
||||
.tripel-123 #tripel-first, .tripel-123 #tripel-second, .tripel-123 #tripel-third { width:320px; }
|
||||
|
||||
|
||||
|
||||
/* Quad */
|
||||
/*1 zone on */
|
||||
|
||||
/* If zone 1 is on */
|
||||
.split-1 #footer-quad-first div.zone { width:960px; }
|
||||
|
||||
/* If zone 2 is on */
|
||||
.split-2 #footer-quad-second div.zone { width:960px; }
|
||||
|
||||
/* If zone 3 is on */
|
||||
.split-3 #footer-quad-third div.zone { width:960px; }
|
||||
|
||||
/* If zone 4 is on */
|
||||
.split-4 #footer-quad-fourth div.zone { width:960px; }
|
||||
|
||||
|
||||
/*2 zones on */
|
||||
|
||||
/* If zones 1, 2 are on */
|
||||
.split-12 #footer-quad-first div.zone, .split-12 #footer-quad-second div.zone { width:480px; }
|
||||
|
||||
/* If zones 1, 3 are on */
|
||||
.split-13 #footer-quad-first div.zone, .split-13 #footer-quad-third div.zone { width:480px; }
|
||||
|
||||
/* If zones 1, 4 are on */
|
||||
.split-14 #footer-quad-first div.zone, .split-14 #footer-quad-fourth div.zone { width:480px; }
|
||||
|
||||
/* If zones 2, 3 are on */
|
||||
.split-23 #footer-quad-second div.zone, .split-23 #footer-quad-third div.zone { width:480px; }
|
||||
|
||||
/* If zones 2, 4 are on */
|
||||
.split-24 #footer-quad-second div.zone, .split-24 #footer-quad-fourth div.zone { width:480px; }
|
||||
|
||||
/* If zones 3, 4 are on */
|
||||
.split-34 #footer-quad-third div.zone, .split-34 #footer-quad-fourth div.zone { width:480px; }
|
||||
|
||||
/*3 zones on */
|
||||
|
||||
/* If zones 2, 3, 4 are on */
|
||||
.split-234 #footer-quad-second div.zone { width:480px; }
|
||||
|
||||
/* If zone 2 is empty and 1, 3, 4 are not */
|
||||
/* If zones 1, 3, 4 are on */
|
||||
.split-134 #footer-quad-first div.zone { width:480px; }
|
||||
|
||||
/* If zone 3 is empty and 1, 2, 4 are not */
|
||||
/* If zones 1, 2, 4 are on */
|
||||
.split-124 #footer-quad-fourth div.zone { width:480px; }
|
||||
|
||||
/* If zone 4 is empty and 1, 2, 3 are not */
|
||||
/* If zones 1, 2, 3 are on */
|
||||
.split-123 #footer-quad-third div.zone { width:480px; }
|
@@ -4,4 +4,4 @@ Description: It's a *really* good theme, yo.
|
||||
Version: 0.1
|
||||
Tags: Awesome
|
||||
Website: http://orchardproject.net
|
||||
Zones: Header, Navigation, Featured, BeforeMain, Messages, BeforeContent, Content, AfterContent, AfterMain, TripelFirst, TripelSecond, TripelThird, FooterQuadFirst, FooterQuadSecond, FooterQuadThird, FooterQuadFourth, Footer, AsideFirst, AsideSecond, AsideThird
|
||||
Zones: Header, Navigation, Featured, BeforeMain, Messages, BeforeContent, Content, AfterContent, AfterMain, TripelFirst, TripelSecond, TripelThird, FooterQuadFirst, FooterQuadSecond, FooterQuadThird, FooterQuadFourth, Footer, AsideFirst, AsideSecond
|
@@ -1,10 +0,0 @@
|
||||
@using Orchard.Blogs.Extensions;
|
||||
@using Orchard.UI.Resources;
|
||||
@{
|
||||
RegisterLink(new LinkEntry { Rel = "wlwmanifest", Type = "application/wlwmanifest+xml", Href = Url.BlogLiveWriterManifest((string)Model.Slug) });
|
||||
RegisterLink(new LinkEntry { Rel = "EditURI", Type = "application/rsd+xml", Title = "RSD", Href = Url.BlogRsd((string)Model.Slug) });
|
||||
}
|
||||
<h1>@Html.TitleForPage((string)Model.Title)</h1>
|
||||
@Display(Model.manage)
|
||||
@Display(Model.metadata)
|
||||
@Display(Model.Primary)
|
@@ -1,17 +0,0 @@
|
||||
@using Orchard.ContentManagement;
|
||||
@using Orchard.Widgets.Models;
|
||||
@{
|
||||
var title = ((IContent)Model.ContentItem).As<WidgetPart>().Title;
|
||||
}
|
||||
<article>
|
||||
<header>
|
||||
<h1>@title</h1>
|
||||
@Display(Model.Header)
|
||||
</header>
|
||||
@Display(Model.Content)
|
||||
@if(Model.Footer != null) {
|
||||
<footer>
|
||||
@Display(Model.Footer)
|
||||
</footer>
|
||||
}
|
||||
</article>
|
@@ -1,11 +0,0 @@
|
||||
@using Orchard.ContentManagement;
|
||||
@using Orchard.Widgets.Models;
|
||||
@{
|
||||
var title = ((IContent)Model.ContentItem).As<WidgetPart>().Title;
|
||||
}
|
||||
<div>
|
||||
<h1>@title</h1>
|
||||
@Display(Model.Header)
|
||||
@Display(Model.Content)
|
||||
@Display(Model.Footer)
|
||||
</div>
|
@@ -47,9 +47,9 @@
|
||||
Model.Classes.Add(footerQuadClass);
|
||||
}
|
||||
|
||||
@*<span>debug: </span>*@
|
||||
@*<span>tripelClass:@tripelClass</span>*@
|
||||
@*<span>footerQuadClass:@footerQuadClass</span>*@
|
||||
<span>debug: </span>
|
||||
<span>tripelClass:@tripelClass</span><br />
|
||||
<span>footerQuadClass:@footerQuadClass</span>
|
||||
|
||||
Model.Id = "layout-wrapper";
|
||||
var tag = Tag (Model, "div");
|
||||
|
@@ -6,7 +6,7 @@ namespace Orchard.ContentManagement.Handlers {
|
||||
public class ContentItemTemplates<TContent> : TemplateFilterBase<TContent> where TContent : class, IContent {
|
||||
private readonly string _templateName;
|
||||
// todo: (heskew) use _prefix?
|
||||
private readonly string _prefix;
|
||||
//private readonly string _prefix;
|
||||
private readonly string[] _displayTypes;
|
||||
private Action<UpdateEditorContext, IContent> _updater;
|
||||
|
||||
|
@@ -42,7 +42,6 @@ namespace Orchard {
|
||||
ex is StackOverflowException ||
|
||||
ex is AccessViolationException ||
|
||||
ex is AppDomainUnloadedException ||
|
||||
ex is ExecutionEngineException ||
|
||||
ex is ThreadAbortException ||
|
||||
ex is SecurityException ||
|
||||
ex is SEHException;
|
||||
|
@@ -14,6 +14,7 @@ namespace Orchard.Mvc {
|
||||
ScriptRegister Script { get; }
|
||||
ResourceRegister Style { get; }
|
||||
dynamic Display { get; }
|
||||
dynamic Layout { get; }
|
||||
IHtmlString DisplayChildren(object shape);
|
||||
WorkContext WorkContext { get; }
|
||||
IDisposable Capture(Action<IHtmlString> callback);
|
||||
|
Reference in New Issue
Block a user