mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-12-02 11:44:41 +08:00
#19793: 2 parts:
1. Making IsInternal a update to make sure everyone has it. 2. Changing the view model to be like the Terms one. Seems Record is null and that throws an exception Work Item: 19793 --HG-- branch : 1.x
This commit is contained in:
@@ -55,7 +55,7 @@ namespace Orchard.Taxonomies.Controllers {
|
|||||||
return new HttpUnauthorizedResult();
|
return new HttpUnauthorizedResult();
|
||||||
|
|
||||||
foreach (var entry in checkedEntries) {
|
foreach (var entry in checkedEntries) {
|
||||||
_taxonomyService.DeleteTaxonomy(entry.Taxonomy);
|
_taxonomyService.DeleteTaxonomy(_taxonomyService.GetTaxonomy(entry.Id));
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -187,7 +187,10 @@ namespace Orchard.Taxonomies.Controllers {
|
|||||||
|
|
||||||
private static TaxonomyEntry CreateTaxonomyEntry(TaxonomyPart taxonomy) {
|
private static TaxonomyEntry CreateTaxonomyEntry(TaxonomyPart taxonomy) {
|
||||||
return new TaxonomyEntry {
|
return new TaxonomyEntry {
|
||||||
Taxonomy = taxonomy,
|
Id = taxonomy.Id,
|
||||||
|
Name = taxonomy.Name,
|
||||||
|
IsInternal = taxonomy.IsInternal,
|
||||||
|
ContentItem = taxonomy.ContentItem,
|
||||||
IsChecked = false,
|
IsChecked = false,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -59,7 +59,17 @@ namespace Orchard.Taxonomies {
|
|||||||
.WithSetting("Stereotype", "Widget")
|
.WithSetting("Stereotype", "Widget")
|
||||||
);
|
);
|
||||||
|
|
||||||
return 1;
|
ContentDefinitionManager.AlterTypeDefinition("TaxonomyNavigationMenuItem",
|
||||||
|
cfg => cfg
|
||||||
|
.WithPart("TaxonomyNavigationPart")
|
||||||
|
.WithPart("MenuPart")
|
||||||
|
.WithPart("CommonPart")
|
||||||
|
.DisplayedAs("Taxonomy Link")
|
||||||
|
.WithSetting("Description", "Injects menu items from a Taxonomy")
|
||||||
|
.WithSetting("Stereotype", "MenuItem")
|
||||||
|
);
|
||||||
|
|
||||||
|
return 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int UpdateFrom1() {
|
public int UpdateFrom1() {
|
||||||
@@ -75,5 +85,11 @@ namespace Orchard.Taxonomies {
|
|||||||
|
|
||||||
return 2;
|
return 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public int UpdateFrom2() {
|
||||||
|
SchemaBuilder.AlterTable("TaxonomyPartRecord", table => table.AddColumn<bool>("IsInternal"));
|
||||||
|
|
||||||
|
return 3;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using Orchard.Taxonomies.Models;
|
using Orchard.ContentManagement;
|
||||||
|
|
||||||
namespace Orchard.Taxonomies.ViewModels {
|
namespace Orchard.Taxonomies.ViewModels {
|
||||||
public class TaxonomyAdminIndexViewModel {
|
public class TaxonomyAdminIndexViewModel {
|
||||||
@@ -8,7 +8,10 @@ namespace Orchard.Taxonomies.ViewModels {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public class TaxonomyEntry {
|
public class TaxonomyEntry {
|
||||||
public TaxonomyPart Taxonomy { get; set; }
|
public int Id { get; set; }
|
||||||
|
public bool IsInternal { get; set; }
|
||||||
|
public string Name { get; set; }
|
||||||
|
public ContentItem ContentItem { get; set; }
|
||||||
public bool IsChecked { get; set; }
|
public bool IsChecked { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -31,27 +31,27 @@
|
|||||||
</thead>
|
</thead>
|
||||||
@foreach (var taxonomyEntry in Model.Taxonomies) {
|
@foreach (var taxonomyEntry in Model.Taxonomies) {
|
||||||
ti = taxonomyIndex;
|
ti = taxonomyIndex;
|
||||||
<tr class="@(taxonomyEntry.Taxonomy.IsInternal ? "internal" : null)">
|
<tr class="@(taxonomyEntry.IsInternal ? "internal" : null)">
|
||||||
<td>
|
<td>
|
||||||
<input type="hidden" value="@Model.Taxonomies[taxonomyIndex].Taxonomy.Id" name="@Html.NameOf(m => m.Taxonomies[ti].Taxonomy.Id)"/>
|
<input type="hidden" value="@Model.Taxonomies[taxonomyIndex].Id" name="@Html.NameOf(m => m.Taxonomies[ti].Id)"/>
|
||||||
@if (!taxonomyEntry.Taxonomy.IsInternal || Authorizer.Authorize(Orchard.Security.StandardPermissions.SiteOwner)) {
|
@if (!taxonomyEntry.IsInternal || Authorizer.Authorize(Orchard.Security.StandardPermissions.SiteOwner)) {
|
||||||
<input type="checkbox" value="true" name="@Html.NameOf(m => m.Taxonomies[ti].IsChecked)"/>
|
<input type="checkbox" value="true" name="@Html.NameOf(m => m.Taxonomies[ti].IsChecked)"/>
|
||||||
}
|
}
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
@if (!taxonomyEntry.Taxonomy.IsInternal || Authorizer.Authorize(Orchard.Security.StandardPermissions.SiteOwner)) {
|
@if (!taxonomyEntry.IsInternal || Authorizer.Authorize(Orchard.Security.StandardPermissions.SiteOwner)) {
|
||||||
@Html.ActionLink(taxonomyEntry.Taxonomy.Name, "Index", "TermAdmin", new { taxonomyId = taxonomyEntry.Taxonomy.Id }, new object { })
|
@Html.ActionLink(taxonomyEntry.Name, "Index", "TermAdmin", new { taxonomyId = taxonomyEntry.Id }, new object { })
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@Html.ItemDisplayText(taxonomyEntry.Taxonomy)
|
@Html.ItemDisplayText(taxonomyEntry.ContentItem)
|
||||||
}
|
}
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
@if (!taxonomyEntry.Taxonomy.IsInternal || Authorizer.Authorize(Orchard.Security.StandardPermissions.SiteOwner)) {
|
@if (!taxonomyEntry.IsInternal || Authorizer.Authorize(Orchard.Security.StandardPermissions.SiteOwner)) {
|
||||||
@Html.ItemEditLink(T("Edit").Text, taxonomyEntry.Taxonomy) <text>|</text>
|
@Html.ItemEditLink(T("Edit").Text, taxonomyEntry.ContentItem) <text>|</text>
|
||||||
@Html.ActionLink(T("Terms").Text, "Index", "TermAdmin", new { taxonomyId = taxonomyEntry.Taxonomy.Id }, new object { }) <text>|</text>
|
@Html.ActionLink(T("Terms").Text, "Index", "TermAdmin", new { taxonomyId = taxonomyEntry.Id }, new object { }) <text>|</text>
|
||||||
@Html.ActionLink(T("Delete").Text, "Delete", new { id = taxonomyEntry.Taxonomy.Id }, new object { }) <text>|</text>
|
@Html.ActionLink(T("Delete").Text, "Delete", new { id = taxonomyEntry.Id }, new object { }) <text>|</text>
|
||||||
@Html.ActionLink(T("Import").Text, "Import", new { id = taxonomyEntry.Taxonomy.Id }, new object { })
|
@Html.ActionLink(T("Import").Text, "Import", new { id = taxonomyEntry.Id }, new object { })
|
||||||
}
|
}
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|||||||
Reference in New Issue
Block a user