blog index
This commit is contained in:
@ -1,8 +1,37 @@
|
||||
@model IEnumerable<IGrouping<string,Blog>>
|
||||
@model IEnumerable<IGrouping<BlogIndexKey,Blog>>
|
||||
@{
|
||||
ViewData["Title"] = "Blogs, l'index";
|
||||
// Regroup!?!
|
||||
@foreach (var group in Model) {
|
||||
}
|
||||
}
|
||||
@section header {
|
||||
<style>
|
||||
.collapsed {
|
||||
height: 1em;
|
||||
}
|
||||
.sametitle {
|
||||
overflow: hidden;
|
||||
transition: height 1s;
|
||||
}
|
||||
td {
|
||||
transition: height 1s;
|
||||
}
|
||||
</style>
|
||||
}
|
||||
@section scripts {
|
||||
<script>
|
||||
$(document).ready(function () {
|
||||
$(".sametitle").addClass("collapsed")
|
||||
.on("mouseover",function(){
|
||||
$(this).removeClass("collapsed")
|
||||
}).on("mouseout",function(){
|
||||
$(this).addClass("collapsed")
|
||||
});
|
||||
}
|
||||
)
|
||||
</script>
|
||||
}
|
||||
|
||||
<h2>@ViewData["Title"]</h2>
|
||||
<p class="text-success">@ViewData["StatusMessage"]</p>
|
||||
@if (User.IsSignedIn()) {
|
||||
@ -23,49 +52,68 @@
|
||||
}
|
||||
<table class="table">
|
||||
<tr>
|
||||
<th colspan="3">
|
||||
<th>
|
||||
@SR["Title"]
|
||||
</th>
|
||||
<th>
|
||||
apperçu
|
||||
</th>
|
||||
</tr>
|
||||
|
||||
|
||||
@foreach (var group in Model) {
|
||||
var title = group.Key;
|
||||
@foreach (var item in group) {
|
||||
var trclass = (item.Visible)?"visiblepost":"hiddenpost";
|
||||
<tr class="@trclass">
|
||||
<td><a asp-action="Details" asp-route-id="@item.Id" class="bloglink">
|
||||
<img src="@item.Photo" class="smalltofhol"></a>
|
||||
<a asp-action="Title" asp-route-id="@item.Title">
|
||||
<markdown>@item.Title</markdown></a>
|
||||
var title = group.Key.Title;
|
||||
string secondclass="";
|
||||
var first = group.First();
|
||||
string trclass = (first.Visible) ? "visiblepost" : "hiddenpost";
|
||||
<tr class="@trclass">
|
||||
<td><a asp-action="Details" asp-route-id="@first.Id" class="bloglink">
|
||||
<img src="@first.Photo" class="smalltofhol"></a>
|
||||
<a asp-action="Title" asp-route-id="@title">
|
||||
<markdown>@first.Title</markdown></a>
|
||||
</td>
|
||||
<td>
|
||||
<markdown>@((item.Content?.Length > 120) ? item.Content.Substring(0, 120) + " ..." : item.Content)</markdown>
|
||||
<span style="font-size:x-small;">(@item.Author.UserName </span>,
|
||||
<markdown>@((first.Content?.Length > 120) ? first.Content.Substring(0, 120) + " ..." : first.Content)</markdown>
|
||||
<span style="font-size:x-small;">(@first.Author.UserName </span>,
|
||||
<span style="font-size:xx-small;">
|
||||
posté le @item.DateCreated.ToString("dddd d MMM yyyy à H:mm")
|
||||
@if ((item.DateModified - item.DateCreated).Minutes > 0){
|
||||
@:- Modifié le @item.DateModified.ToString("dddd d MMM yyyy à H:mm")
|
||||
posté le @first.DateCreated.ToString("dddd d MMM yyyy à H:mm")
|
||||
@if ((first.DateModified - first.DateCreated).Minutes > 0){
|
||||
@:- Modifié le @first.DateModified.ToString("dddd d MMM yyyy à H:mm")
|
||||
})
|
||||
</span>
|
||||
|
||||
@if (group.Count()>1) {
|
||||
<div class="sametitle">
|
||||
Au même titre:
|
||||
<table>
|
||||
|
||||
@foreach (var item in group.Skip(1)) {
|
||||
trclass = ((item.Visible)?"visiblepost":"hiddenpost");
|
||||
|
||||
<tr class="@trclass"><td>le @item.DateModified.ToString("dddd d MMM yyyy à H:mm")</td>
|
||||
<td><markdown>@((item.Content?.Length > 120) ? item.Content.Substring(0, 120) + " ..." : item.Content)</markdown>
|
||||
</td>
|
||||
<td> <a asp-action="Details" asp-route-id="@item.Id" class="btn btn-lg">Details</a>
|
||||
</td></tr>
|
||||
} </table></div>
|
||||
}
|
||||
</td>
|
||||
<td>
|
||||
<ul class="actiongroup">
|
||||
@if (await AuthorizationService.AuthorizeAsync(User, item, new ViewRequirement())) {
|
||||
@if (await AuthorizationService.AuthorizeAsync(User, first, new ViewRequirement())) {
|
||||
<li>
|
||||
<a asp-action="Details" asp-route-id="@item.Id" class="btn btn-lg">Details</a>
|
||||
<a asp-action="Details" asp-route-id="@first.Id" class="btn btn-lg">Details</a>
|
||||
</li>
|
||||
}
|
||||
@if (await AuthorizationService.AuthorizeAsync(User, item, new EditRequirement())) {
|
||||
<li><a asp-action="Edit" asp-route-id="@item.Id" class="btn btn-default">@SR["Edit"]</a>
|
||||
@if (await AuthorizationService.AuthorizeAsync(User, first, new EditRequirement())) {
|
||||
<li><a asp-action="Edit" asp-route-id="@first.Id" class="btn btn-default">@SR["Edit"]</a>
|
||||
</li>
|
||||
<li><a asp-action="Delete" asp-route-id="@item.Id" class="btn btn-danger">@SR["Delete"]</a>
|
||||
<li><a asp-action="Delete" asp-route-id="@first.Id" class="btn btn-danger">@SR["Delete"]</a>
|
||||
</li>
|
||||
}
|
||||
</ul>
|
||||
</td>
|
||||
</tr>
|
||||
}
|
||||
}
|
||||
</table>
|
||||
|
||||
|
||||
|
@ -30,10 +30,12 @@
|
||||
@using Yavsc.ViewModels.Administration;
|
||||
@using Yavsc.ViewModels.Relationship;
|
||||
@using Yavsc.ViewModels.Workflow;
|
||||
@using Yavsc.ViewModels.Blogspot;
|
||||
|
||||
@inject IViewLocalizer LocString
|
||||
@addTagHelper "*, Microsoft.AspNet.Mvc.TagHelpers"
|
||||
@addTagHelper "*, Yavsc"
|
||||
|
||||
@inject IStringLocalizer<Yavsc.Resources.YavscLocalisation> SR
|
||||
@inject IAuthorizationService AuthorizationService
|
||||
@inject IOptions<GoogleAuthSettings> GoogleSettings
|
||||
|
Reference in New Issue
Block a user