yavsc/Yavsc/Views/Blogspot/Index.cshtml

129 lines
4.1 KiB
Plaintext

@model IEnumerable<IGrouping<string,BlogPost>>
@{
8 years ago
ViewData["Title"] = "Blogs, l'index";
8 years ago
}
@section header {
<style>
.collapsed {
height: 1em;
}
7 years ago
.sametitlegrip {
text-decoration: underline;
cursor: pointer;
}
8 years ago
.sametitle {
overflow: hidden;
transition: height 1s;
}
td {
transition: height 1s;
}
7 years ago
div.row {
border-bottom: dashed black 1px;
7 years ago
}
8 years ago
</style>
}
@section scripts {
<script>
$(document).ready(function () {
$(".sametitle").addClass("collapsed")
.on("mouseover",function(){
$(this).removeClass("collapsed")
}).on("mouseout",function(){
$(this).addClass("collapsed")
});
}
)
</script>
}
8 years ago
<h2>@ViewData["Title"]</h2>
<p class="text-success">@ViewData["StatusMessage"]</p>
@if (User.IsSignedIn()) {
<label>
<input type="checkbox" id="cbv" checked/>Invisibles, posts privés</label>
8 years ago
<script>
$("#cbv").change(function() {
if (this.checked) {
$("tr.hiddenpost").removeClass("hidden");
} else {
$("tr.hiddenpost").addClass("hidden");
}
});
</script>
<p>
8 years ago
<a asp-action="Create">@SR["Create a new article"]</a>
</p>
8 years ago
}
7 years ago
<div class="container">
8 years ago
8 years ago
@foreach (var group in Model) {
var title = group.Key;
8 years ago
string secondclass="";
var first = group.First();
string trclass = (first.Visible) ? "visiblepost" : "hiddenpost";
7 years ago
<div class="row @trclass">
<div class="col-xs-10">
<a asp-action="Title" asp-route-id="@title" >
@if (first.Photo==null) { }
else {<img src="@first.Photo" class="smallphoto" alt="@first.Title">}
<markdown>@first.Title</markdown>
</a>
7 years ago
8 years ago
<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;">
8 years ago
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",System.Globalization.CultureInfo.CurrentUICulture)
})
8 years ago
</span>
8 years ago
7 years ago
</div>
<div class="col-xs-2">
<ul class="actiongroup">
8 years ago
@if (await AuthorizationService.AuthorizeAsync(User, first, new ViewRequirement())) {
<li>
8 years ago
<a asp-action="Details" asp-route-id="@first.Id" class="btn btn-lg">Details</a>
</li>
}
8 years ago
@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>
8 years ago
<li><a asp-action="Delete" asp-route-id="@first.Id" class="btn btn-danger">@SR["Delete"]</a>
</li>
}
</ul>
7 years ago
</div>
</div>
long gcount = group.Count();
@if (gcount>1) {
<div class="sametitle">
7 years ago
<div class="sametitlegrip">@(gcount-1) autre@(gcount>2?"s":"") au même titre:</div>
7 years ago
@foreach (var item in group.Skip(1)) {
trclass = ((item.Visible)?"visiblepost":"hiddenpost");
<div class="row @trclass">
<div class="col-xs-10">
<markdown>
@((item.Content?.Length > 120) ? item.Content.Substring(0, 120) + "..." : item.Content)
</markdown>
</div>
<div class="col-xs-2">
<a asp-action="Details" asp-route-id="@item.Id" class="btn btn-lg">
le @item.DateModified.ToString("dddd d MMM yyyy à H:mm",System.Globalization.CultureInfo.CurrentUICulture)
7 years ago
</a>
</div>
</div>
}
</div>
}
}
7 years ago
</div>