@model AdminEditViewModel @using Orchard.Projections.ViewModels; @{ Layout.Title = T("Edit Query - {0}", Model.Name); Style.Include("admin-projections.css"); } @using (Html.BeginFormAntiForgeryPost()) { @Html.ValidationSummary()

@T("Filters")

@Html.ActionLink(T("Add a new Group").Text, "AddGroup", new { controller = "Filter", id = Model.Id }, new { @class = "button primaryAction" })
foreach (var group in Model.FilterGroups) { bool isFirstGroup = group == Model.FilterGroups.First(); if (!isFirstGroup) {

@T("Or")

} @foreach (var filter in group.Filters) { }
@T("Description") @Html.ActionLink(T("+ Add a new Filter").Text, "Add", new { controller = "Filter", id = group.Id }) @if (Model.FilterGroups.Count() > 1) { | @Html.ActionLink(T("Delete group").Text, "DeleteGroup", new { controller = "Filter", id = group.Id }, new { itemprop = "RemoveUrl UnsafeUrl" }) }
@filter.DisplayText @Html.ActionLink(T("Edit").Text, "Edit", new { controller = "Filter", id = group.Id, category = filter.Category, type = filter.Type, filterId = filter.FilterRecordId }) | @Html.ActionLink(T("Delete").Text, "Delete", new { controller = "Filter", id = Model.Id, filterId = filter.FilterRecordId }, new { itemprop = "RemoveUrl UnsafeUrl" })
}

@T("Sort Criteria")

@foreach (var sortCriterion in Model.SortCriteria) { }
@T("Description") @Html.ActionLink(T("+ Add a new Sort Criteria").Text, "Add", new { controller = "SortCriterion", id = Model.Id })
@sortCriterion.DisplayText @Html.ActionLink(T("Edit").Text, "Edit", new { controller = "SortCriterion", id = Model.Id, category = sortCriterion.Category, type = sortCriterion.Type, sortCriterionId = sortCriterion.SortCriterionRecordId }) | @Html.ActionLink(T("Delete").Text, "Delete", new { controller = "SortCriterion", id = Model.Id, sortCriterionId = sortCriterion.SortCriterionRecordId }, new { itemprop = "RemoveUrl UnsafeUrl" }) @if (sortCriterion != Model.SortCriteria.First()) { | @Html.ActionLink(T("Up").Text, "Move", new { controller = "SortCriterion", id = sortCriterion.SortCriterionRecordId, direction = "up", queryId = Model.Id }) } @if (sortCriterion != Model.SortCriteria.Last()) { | @Html.ActionLink(T("Down").Text, "Move", new { controller = "SortCriterion", id = sortCriterion.SortCriterionRecordId, direction = "down", queryId = Model.Id }) }

@T("Layouts")

@foreach (var layout in Model.Layouts) { }
@T("Description") @Html.ActionLink(T("+ Add a new Layout").Text, "Add", new { controller = "Layout", id = Model.Id })
@(layout.DisplayText) @Html.ActionLink(T("Edit").Text, "Edit", new { controller = "Layout", id = layout.LayoutRecordId }) | @Html.ActionLink(T("Delete").Text, "Delete", new { controller = "Layout", id = layout.LayoutRecordId }, new { itemprop = "RemoveUrl UnsafeUrl" })
@* Render a button at the bottom only if there are several layouts in the table *@ if (Model.Layouts.Count() > 5) {
@Html.ActionLink(T("Add a new Layout").Text, "Add", new { controller = "Layout", id = Model.Id }, new { @class = "button primaryAction" })
}
@if(Model.FilterGroups.SelectMany(x => x.Filters).Any()) { @Html.ActionLink(T("Preview").ToString(), "Preview", new { Model.Id }, new { @class = "button" }); } @Html.ActionLink(T("Close").ToString(), "Index", new { }, new { @class = "button" })
}