Blog Post Id

This commit is contained in:
Paul Schneider 2026-09-19 21:08:10 +01:00
commit 67da921bce
Signed by: notazof
GPG key ID: 1DD5D838E5343B06
22 changed files with 4869 additions and 96 deletions

View file

@ -3,7 +3,7 @@
ViewBag.Title=Model.Title;
}
@section scripts {
<script src="~/js/comment.js" asp-append-version="true"></script>
<script>
$.psc.blogcomment.prototype.options.lang = '@System.Globalization.CultureInfo.CurrentUICulture.Name';
@ -18,8 +18,8 @@
type: 'POST',
method: 'POST',
contentType: "application/json",
data: JSON.stringify({
Article: $('#Comment').val(),
data: JSON.stringify({
Article: $('#Comment').val(),
ReceiverId: @Model.Id
}),
error: function(xhr,data) {
@ -36,7 +36,7 @@ $('#commentValidation').html(
)
}
}
},
success: function (data) {
var comment = $('#Comment').val();
@ -65,12 +65,12 @@ $('#commentValidation').html(
<div class="float-left">
<img class="photo" src="@Model.Photo" >
</div>
<h1 ismarkdown>@Model.Title</h1>
@Html.DisplayFor(m=>m.Author)
<asciidoc>@Html.DisplayFor(m=>m.Article)</asciidoc>
<markdown>@Html.DisplayFor(m=>m.Article)</markdown>
</div>
<div id="comments">
@ -89,7 +89,7 @@ $('#commentValidation').html(
<input type="button" value="Comment" class="btn btn-secondary"
data-receiverId="@Model.Id" id="cmtBtn"
/>
</span>
</span>
</div>
<span asp-validation-for="Article" class="text-danger" ></span>
</div>
@ -97,7 +97,7 @@ $('#commentValidation').html(
else {
<p><i>Vous devez être identifié pour commenter.</i> </p>
}
@if ((await AuthorizationService.AuthorizeAsync(User, Model, new EditPermission())).Succeeded) {
<a asp-action="Edit" asp-route-id="@Model.Id" class="btn btn-link">Edit</a>
}

View file

@ -58,11 +58,11 @@
</a>
<div>
<a asp-action="Details" asp-route-id="@post.Id">
<asciidoc summary="@maxTextLen">@post.Article</asciidoc></a>
<markdown summary="@maxTextLen">@post.Article</markdown></a>
<span style="font-size:x-small;">@Html.DisplayFor(m => post.Author)</span>
<span style="font-size:xx-small;">
posté le @post.DateCreated.ToString("dddd d MMM yyyy à H:mm")
@if ((post.DateModified - post.DateCreated).Minutes > 0){ 
@if ((post.DateModified - post.DateCreated).Minutes > 0){
@:- Modifié le @post.DateModified.ToString("dddd d MMM yyyy à H:mm")
}
</span>

View file

@ -8,23 +8,23 @@
</p>
<table class="table">
@foreach (var item in Model) {
<tr>
<td><a asp-action="Details" asp-route-id="@item.Id" class="bloglink">
<img src="@item.Photo" class="blogphoto"></a>
</td>
<td>
<asciidoc>@((item.Article?.Length > 256) ? item.Article.Substring(0, 256) + " ..." : item.Article)</asciidoc>
<markdown>@((item.Article?.Length > 256) ? item.Article.Substring(0, 256) + " ..." : item.Article)</markdown>
<span style="font-size:x-small;">(@item.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){ 
@if ((item.DateModified - item.DateCreated).Minutes > 0){
@:- Modifié le @item.DateModified.ToString("dddd d MMM yyyy à H:mm")
})
</span>
</td>
<td>
<td>
<ul class="actiongroup">
@if ((await AuthorizationService.AuthorizeAsync(User, item, new ReadPermission())).Succeeded) {
<li>

View file

@ -1,13 +1,13 @@
@{
@{
ViewBag.Title = "Conditions Générales de Vente";
}
<h2>@ViewBag.Title</h2>
<asciidoc>
<markdown>
Le paiement intervient à la commande, quelque soit la date d'intervention.
Vous pouvez annuler votre commande depuis la [liste de vos commande en cours](/HairCutCommand/),
Vous pouvez demander le remboursement d'un paiement, dans le cadre d'une réclamation sur l'execution
Vous pouvez annuler votre commande depuis la [liste de vos commande en cours](/HairCutCommand/),
Vous pouvez demander le remboursement d'un paiement, dans le cadre d'une réclamation sur l'execution
de votre commande, en nous contactant via courrier éléctronique ou postal, [que vour retrouverez sur la page de contact](/Home/Contact), votre demande sera rapidement traitée.
</asciidoc>
</markdown>

View file

@ -5,7 +5,7 @@
<h1>@SiteSettings.Value.Title - objetivo</h1>
<environment names="freefield,Development">
<asciidoc>
<markdown>
= O objetivo
Esta aplicação é construída para conectar artistas
@ -87,51 +87,51 @@ que imediatamente desativa as publicações associadas às suas informações,
e planeia a eliminação completa desta informação no prazo de quinze dias
do aplicativo, a menos que seja um pedido contraditório.
A operação é anulável até duas semanas após a sua programação.
</asciidoc>
</markdown>
</environment>
<environment names="Lua,Development">
<asciidoc>Este é o meu site perso, uma configuração de _Yavsc_ (outro negócio muito pequeno).
<markdown>Este é o meu site perso, uma configuração de _Yavsc_ (outro negócio muito pequeno).
* [README](https://forgejo.pschneider.fr/notazof/yavsc/blob/vnext/README.md)
* [licença: GNU GPL v3](https://forgejo.pschneider.fr/notazof/yavsc/blob/vnext/LICENSE)
Outras instalações:
</asciidoc>
<asciidoc>
</markdown>
<markdown>
* [Coiffure](http://coiffure.pschneider.fr)
* [ZicMoove](http://linkmuse.pschneider.fr)
* [Yavsc](http://yavsc.pschneider.fr)
</asciidoc>
</markdown>
</environment>
<environment names="Yavsc">
<asciidoc>
<markdown>
Yet Another Very Small Company ...
* [README](https://forgejo.pschneider.fr/notazof/yavsc/blob/vnext/README.md)
* [license: GNU FPL v3](https://forgejo.pschneider.fr/notazof/yavsc/blob/vnext/LICENSE)
</asciidoc>
</markdown>
</environment>
<environment names="YavscPre">
<asciidoc>
## Yet Another Very Small Company :
<markdown>
## Yet Another Very Small Company :
* [README](https://forgejo.pschneider.fr/notazof/yavsc/blob/vnext/README.md)
* [license: GNU FPL v3](https://forgejo.pschneider.fr/notazof/yavsc/blob/vnext/LICENSE)
En production:
* [Lua](https://lua.pschneider.fr)
* [Yavsc](https://yavsc.pschneider.fr)
</asciidoc>
</markdown>
</environment>
<environment names="coiffure">
<asciidoc>
<markdown>
Você está no site da ordem em cabeleireiro em casa de Soraya Boudjouraf,
um ás de cabeleireiro, que trabalha na região de Paris.
@ -139,11 +139,11 @@ Ao validar um formulário de pedido aqui, é para ela que você notifica sua sol
Você pode [Deixe-lhe o seu número de telefone] (/ HairCutCommand / HairCut? ActivityCode = Brush & performerId = 1bd841ab-c305-4971-940d-7ddca818310c)
e / ou detalhes sobre o seu pedido,
ela vai ligar de volta.</asciidoc>
ela vai ligar de volta.</markdown>
</environment>
<environment names="Development">
<asciidoc>
<markdown>
## Este é um site de desenvolvimento.
Este recurso só diz respeito ao desenvolvimento do software que o implementa.
@ -156,7 +156,7 @@ A "pré-produção" exibe os seguintes sites:
* [Yavsc](https://yavsc.pschneider.fr)
* [Lua](https://lua.pschneider.fr)
</asciidoc>
</markdown>
</environment>
<p>@Model</p>

View file

@ -3,13 +3,13 @@
}
<h1>@ViewBag.Title</h1>
<asciidoc>
<markdown>
# Blog et fichiers utilisateurs
Par défaut, un envoi à destination du serveur est privé, visible seulement pour son possesseur (et l'administration).
L'utilisateur peu publier chacun de ces derniers à l'adresse :
L'utilisateur peu publier chacun de ces derniers à l'adresse :
* de tout le monde,
* ou d'une liste de cercles d'utilisateurs,
@ -17,8 +17,8 @@ L'utilisateur peu publier chacun de ces derniers à l'adresse :
Quand il s'agit d'un fichier, son adresse permanente relative à la racine du serveur web est: `/UserFiles/(Nom Utilisateur)/(cheminVersLeFichier)`
Les restrictions d'accès à ce fichier sont celles associées à tous les fichiers du même dossier.
Il n'y a pas de regle assiciée à chaque fichier individuellement,
Les restrictions d'accès à ce fichier sont celles associées à tous les fichiers du même dossier.
Il n'y a pas de regle assiciée à chaque fichier individuellement,
elles appartiennent au dossier qui les contient.
Les billet de blog sont regroupés par utilisateur, à l'Url
@ -35,6 +35,6 @@ Et ils possèdent une addresse permanente de la forme :
</asciidoc>
</markdown>

View file

@ -3,7 +3,7 @@
}
<h1>@ViewBag.Title</h1>
<asciidoc>
<markdown>
Quelques extensions à un Markdown de base :
* les video et audio: `![video: Ep. 28 - La France en commun - Une invitation à écrire un nouveau projet d'émancipation humaine](/images/testVideo.mp4)`
@ -16,4 +16,4 @@ Quelques extensions à un Markdown de base :
* le tag "Titre d'article": "#1_great_title"
* le tag "User" = "@@(John Doe)" ou "@@jdoe"
</asciidoc>
</markdown>

View file

@ -1,13 +1,13 @@
@{
@{
ViewBag.Title = "Conditions Générales de Vente";
}
<h2>@ViewBag.Title</h2>
<asciidoc>
<markdown>
Le paiement intervient à la commande, quelque soit la date d'intervention.
Vous pouvez annuler votre commande depuis la [liste de vos commande en cours](/HairCutCommand/),
Vous pouvez demander le remboursement d'un paiement, dans le cadre d'une réclamation sur l'execution
Vous pouvez annuler votre commande depuis la [liste de vos commande en cours](/HairCutCommand/),
Vous pouvez demander le remboursement d'un paiement, dans le cadre d'une réclamation sur l'execution
de votre commande, en nous contactant via courrier éléctronique ou postal, [que vour retrouverez sur la page de contact](/Home/Contact), votre demande sera rapidement traitée.
</asciidoc>
</markdown>

View file

@ -2,9 +2,9 @@
ViewBag.Title = Localizer["Home"];
}
<asciidoc>
<markdown>
= La confidentialité
:hide-uri-scheme:
:hide-uri-scheme:
xref:Contact[Get Report]
@ -13,4 +13,4 @@ ne sont transmis à personne. Seul le système et son link:Contact[possesseur] o
De plus, le droit de retrait est permanent et sa mise en oeuvre link:/Account/Delete[immédiate].
</asciidoc>
</markdown>

View file

@ -4,14 +4,14 @@
<h1>@ViewBag.Title</h1>
<em>Linkmuse(trox)</em>
<asciidoc>
<markdown>
Les tags.
La librairie, les lives.
</asciidoc>
</markdown>
@{
ViewBag.Title = @Localizer["TODO"];
}
<h1>@ViewBag.Title</h1>
<em>Faster, stronger, shorter</em>
<asciidoc>
</asciidoc>
<markdown>
</markdown>

View file

@ -1,12 +1,12 @@
@model Comment
<div data-type="blogcomment" data-id="@Model.Id" data-receiver-id="@Model.ReceiverId" data-allow-edit="@(User.GetUserId()==Model.AuthorId?"true":"false")"
<div data-type="blogcomment" data-id="@Model.Id" data-receiver-id="@Model.ReceiverId" data-allow-edit="@(User.GetUserId()==Model.AuthorId?"true":"false")"
data-allow-moderate="@ViewBag.moderatoFlag" data-date="@Model.DateCreated.ToString("yyyy-MM-dd hh:mm:ss")" data-username="@Model.Author.UserName" >
<asciidoc>@Model.Article</asciidoc>
<markdown>@Model.Article</markdown>
@if (Model.Children!=null) {
<div class="subcomments">
@foreach (var comment in Model.Children)
@foreach (var comment in Model.Children)
{
@await this.Component.InvokeAsync("Comment", new { id = comment.Id});
}

View file

@ -31,7 +31,7 @@
<h2 markdown="@n.title"></h2>
<a class="close" data-dismiss="alert" aria-label="close" onclick="notifClick(@n.Id)">@((n.click_action == null) ?
Localizer["Fermer"] : Localizer[n.click_action])</a>
<asciidoc>@n.body</asciidoc>
<markdown>@n.body</markdown>
</div>
}
}