Estimate managment from PostIt #53
7 changed files with 55 additions and 31 deletions
commit
827cf7d2a3
|
|
@ -33,7 +33,7 @@ jobs:
|
||||||
run: |
|
run: |
|
||||||
set -e
|
set -e
|
||||||
cd /src
|
cd /src
|
||||||
git clone https://forgejo.pschneider.fr/notazof/yavsc.git _src
|
git clone "${FORGEJO_SERVER_URL}/${FORGEJO_REPOSITORY}.git" _src
|
||||||
cd _src
|
cd _src
|
||||||
if [ -n "${GITHUB_REF:-}" ]; then
|
if [ -n "${GITHUB_REF:-}" ]; then
|
||||||
git fetch origin "$GITHUB_REF"
|
git fetch origin "$GITHUB_REF"
|
||||||
|
|
|
||||||
|
|
@ -69,7 +69,7 @@ jobs:
|
||||||
cd /src
|
cd /src
|
||||||
|
|
||||||
if [[ ! -d _src/.git ]]; then
|
if [[ ! -d _src/.git ]]; then
|
||||||
git clone --depth=1 https://forgejo.pschneider.fr/notazof/yavsc.git _src
|
git clone --depth=1 "${FORGEJO_SERVER_URL}/${FORGEJO_REPOSITORY}.git" _src
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cd _src
|
cd _src
|
||||||
|
|
|
||||||
|
|
@ -4,22 +4,19 @@
|
||||||
<IdentityServer8Version>8.1.0-pazofrc007</IdentityServer8Version>
|
<IdentityServer8Version>8.1.0-pazofrc007</IdentityServer8Version>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<PackageVersion Include="DotMarkdown" Version="0.3.0" />
|
||||||
|
<PackageVersion Include="Markdig" Version="1.3.2" />
|
||||||
<PackageVersion Include="System.Security.Cryptography.Pkcs" Version="10.0.9" />
|
<PackageVersion Include="System.Security.Cryptography.Pkcs" Version="10.0.9" />
|
||||||
|
|
||||||
<PackageVersion Include="HigginsSoft.IdentityServer8" Version="$(IdentityServer8Version)" />
|
<PackageVersion Include="HigginsSoft.IdentityServer8" Version="$(IdentityServer8Version)" />
|
||||||
<PackageVersion Include="HigginsSoft.IdentityServer8.AspNetIdentity" Version="$(IdentityServer8Version)" />
|
<PackageVersion Include="HigginsSoft.IdentityServer8.AspNetIdentity" Version="$(IdentityServer8Version)" />
|
||||||
<PackageVersion Include="HigginsSoft.IdentityServer8.EntityFramework" Version="$(IdentityServer8Version)" />
|
<PackageVersion Include="HigginsSoft.IdentityServer8.EntityFramework" Version="$(IdentityServer8Version)" />
|
||||||
<PackageVersion Include="HigginsSoft.IdentityServer8.EntityFramework.Storage" Version="$(IdentityServer8Version)" />
|
<PackageVersion Include="HigginsSoft.IdentityServer8.EntityFramework.Storage" Version="$(IdentityServer8Version)" />
|
||||||
<PackageVersion Include="HigginsSoft.IdentityServer8.Security" Version="$(IdentityServer8Version)" />
|
<PackageVersion Include="HigginsSoft.IdentityServer8.Security" Version="$(IdentityServer8Version)" />
|
||||||
<PackageVersion Include="HigginsSoft.IdentityServer8.Storage" Version="$(IdentityServer8Version)" />
|
<PackageVersion Include="HigginsSoft.IdentityServer8.Storage" Version="$(IdentityServer8Version)" />
|
||||||
|
|
||||||
<PackageVersion Include="AsciiDocSharp" Version="0.1.0" />
|
<PackageVersion Include="AsciiDocSharp" Version="0.1.0" />
|
||||||
<PackageVersion Include="AsciiDocSharp.Converters.Html" Version="0.1.0" />
|
<PackageVersion Include="AsciiDocSharp.Converters.Html" Version="0.1.0" />
|
||||||
|
|
||||||
<PackageVersion Include="BouncyCastle.Cryptography" Version="2.6.2" />
|
<PackageVersion Include="BouncyCastle.Cryptography" Version="2.6.2" />
|
||||||
|
|
||||||
<PackageVersion Include="Google.Apis.Compute.v1" Version="1.74.0.4138" />
|
<PackageVersion Include="Google.Apis.Compute.v1" Version="1.74.0.4138" />
|
||||||
|
|
||||||
<PackageVersion Include="Microsoft.AspNetCore.Antiforgery" Version="2.3.11" />
|
<PackageVersion Include="Microsoft.AspNetCore.Antiforgery" Version="2.3.11" />
|
||||||
<PackageVersion Include="Microsoft.AspNetCore.Authentication.Google" Version="10.0.9" />
|
<PackageVersion Include="Microsoft.AspNetCore.Authentication.Google" Version="10.0.9" />
|
||||||
<PackageVersion Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" Version="10.0.9" />
|
<PackageVersion Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" Version="10.0.9" />
|
||||||
|
|
@ -37,13 +34,9 @@
|
||||||
<PackageVersion Include="Microsoft.Extensions.Logging" Version="10.0.9" />
|
<PackageVersion Include="Microsoft.Extensions.Logging" Version="10.0.9" />
|
||||||
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="18.7.0" />
|
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="18.7.0" />
|
||||||
<PackageVersion Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="10.0.2" />
|
<PackageVersion Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="10.0.2" />
|
||||||
|
|
||||||
<PackageVersion Include="Swashbuckle.AspNetCore" Version="10.2.2" />
|
<PackageVersion Include="Swashbuckle.AspNetCore" Version="10.2.2" />
|
||||||
|
|
||||||
<PackageVersion Include="coverlet.collector" Version="10.0.1" />
|
<PackageVersion Include="coverlet.collector" Version="10.0.1" />
|
||||||
|
|
||||||
<PackageVersion Include="IdentityModel.OidcClient" Version="6.0.0" />
|
<PackageVersion Include="IdentityModel.OidcClient" Version="6.0.0" />
|
||||||
|
|
||||||
<PackageVersion Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="10.0.9" />
|
<PackageVersion Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="10.0.9" />
|
||||||
<PackageVersion Include="Microsoft.IdentityModel.Tokens" Version="8.2.1" />
|
<PackageVersion Include="Microsoft.IdentityModel.Tokens" Version="8.2.1" />
|
||||||
<PackageVersion Include="System.IdentityModel.Tokens.Jwt" Version="8.2.1" />
|
<PackageVersion Include="System.IdentityModel.Tokens.Jwt" Version="8.2.1" />
|
||||||
|
|
@ -53,4 +46,4 @@
|
||||||
<PackageVersion Include="xunit.v3.extensibility.core" Version="3.2.2" />
|
<PackageVersion Include="xunit.v3.extensibility.core" Version="3.2.2" />
|
||||||
<PackageVersion Include="YamlDotNet" Version="18.1.0" />
|
<PackageVersion Include="YamlDotNet" Version="18.1.0" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
34
src/Yavsc.Org.Tests/MarkdownTests.cs
Normal file
34
src/Yavsc.Org.Tests/MarkdownTests.cs
Normal file
|
|
@ -0,0 +1,34 @@
|
||||||
|
using DotMarkdown.Linq;
|
||||||
|
using Markdig;
|
||||||
|
using Xunit;
|
||||||
|
using static DotMarkdown.Linq.MFactory;
|
||||||
|
|
||||||
|
|
||||||
|
public class MarkdownTests
|
||||||
|
{
|
||||||
|
[Fact]
|
||||||
|
public void TestMarkdownRendering()
|
||||||
|
{
|
||||||
|
MDocument document = Document(
|
||||||
|
Heading1("Markdown Sample"),
|
||||||
|
Heading2("Bullet List"),
|
||||||
|
BulletList(
|
||||||
|
"text",
|
||||||
|
Bold("bold text")),
|
||||||
|
HorizontalRule(),
|
||||||
|
Heading2("IndentedCodeBlock"),
|
||||||
|
IndentedCodeBlock("string s = null;"));
|
||||||
|
|
||||||
|
Console.WriteLine(document.ToString());
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
[Fact]
|
||||||
|
public void TestAnotherMarkdownRendering()
|
||||||
|
{
|
||||||
|
var result = Markdown.ToHtml("This is a text with some *emphasis*");
|
||||||
|
|
||||||
|
|
||||||
|
Console.WriteLine(result);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,13 +1,12 @@
|
||||||
|
|
||||||
using System.Web;
|
using System.Web;
|
||||||
using AsciiDocSharp;
|
using Markdig;
|
||||||
using AsciiDocSharp.Converters.Html;
|
|
||||||
using Microsoft.AspNetCore.Html;
|
using Microsoft.AspNetCore.Html;
|
||||||
using Microsoft.AspNetCore.Razor.TagHelpers;
|
using Microsoft.AspNetCore.Razor.TagHelpers;
|
||||||
|
|
||||||
namespace Yavsc.Helpers
|
namespace Yavsc.Helpers
|
||||||
{
|
{
|
||||||
public class AsciidocTagHelper : TagHelper
|
public class MarkdownTagHelper : TagHelper
|
||||||
{
|
{
|
||||||
public override async Task ProcessAsync(TagHelperContext context, TagHelperOutput output)
|
public override async Task ProcessAsync(TagHelperContext context, TagHelperOutput output)
|
||||||
{
|
{
|
||||||
|
|
@ -18,6 +17,7 @@ namespace Yavsc.Helpers
|
||||||
|
|
||||||
if (string.IsNullOrWhiteSpace(text)) return;
|
if (string.IsNullOrWhiteSpace(text)) return;
|
||||||
|
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (context.AllAttributes.ContainsName("summary"))
|
if (context.AllAttributes.ContainsName("summary"))
|
||||||
|
|
@ -34,16 +34,10 @@ namespace Yavsc.Helpers
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
var processor = new AsciiDocProcessor(
|
var pipeline = new MarkdownPipelineBuilder().UseAdvancedExtensions().Build();
|
||||||
|
var result = Markdown.ToHtml(text, pipeline);
|
||||||
);
|
|
||||||
var htmlConverter = new HtmlDocumentConverter();
|
|
||||||
|
|
||||||
var document = processor.ParseFromText(text);
|
output.Content.AppendHtml(result);
|
||||||
var htmlResult = processor.ConvertDocument(document, htmlConverter);
|
|
||||||
|
|
||||||
|
|
||||||
output.Content.AppendHtml(htmlResult);
|
|
||||||
}
|
}
|
||||||
catch (ArgumentException ex)
|
catch (ArgumentException ex)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -7,12 +7,12 @@
|
||||||
|
|
||||||
**Version de Development**
|
**Version de Development**
|
||||||
|
|
||||||
<asciidoc>
|
<markdown>
|
||||||
== L'objectif
|
## L'objectif
|
||||||
|
|
||||||
Cette application est construite pour mettre en relation des artistes du domaine musical avec leur public.
|
Cette application est construite pour mettre en relation des artistes du domaine musical avec leur public.
|
||||||
|
|
||||||
== Le fonctionnement
|
## Le fonctionnement
|
||||||
|
|
||||||
Les utilisateurs du site sont soit artiste, soit client, soit administrateur. ils ont tous droit à leur blog.
|
Les utilisateurs du site sont soit artiste, soit client, soit administrateur. ils ont tous droit à leur blog.
|
||||||
Pour les artistes, c'est un moyen de promouvoir leur activité.
|
Pour les artistes, c'est un moyen de promouvoir leur activité.
|
||||||
|
|
@ -45,7 +45,7 @@ Une fois sa prestation associée exécutée, les paiements relatifs sont effectu
|
||||||
|
|
||||||
Pour un contrat exécuté et non honoré par le client, le processus de poursuite en recouvrement est engagé, sinon, le contrat est archivé, des attestations de paiement sont disponibles pour l'artiste et la facture est marquée payée, puis repostée au client.
|
Pour un contrat exécuté et non honoré par le client, le processus de poursuite en recouvrement est engagé, sinon, le contrat est archivé, des attestations de paiement sont disponibles pour l'artiste et la facture est marquée payée, puis repostée au client.
|
||||||
|
|
||||||
=== Pour l'artiste
|
## Pour l'artiste
|
||||||
|
|
||||||
L'artiste choisit plusieurs paramètres qui vont faire son profil :
|
L'artiste choisit plusieurs paramètres qui vont faire son profil :
|
||||||
|
|
||||||
|
|
@ -55,19 +55,20 @@ L'artiste choisit plusieurs paramètres qui vont faire son profil :
|
||||||
* Un agenda Google optionnel, à consulter pour établir sa disponibilité
|
* Un agenda Google optionnel, à consulter pour établir sa disponibilité
|
||||||
* Des paramètres supplémentaires en fonctions de son type d'activité par exemple, pour les ensembles, leur taille, le cas échéant, leur répertoire ou des indications sur le style de leur musique)
|
* Des paramètres supplémentaires en fonctions de son type d'activité par exemple, pour les ensembles, leur taille, le cas échéant, leur répertoire ou des indications sur le style de leur musique)
|
||||||
|
|
||||||
=== Pour le client
|
## Pour le client
|
||||||
|
|
||||||
Il choisit un lieu et une date pour déclarer un événement avenir (il peut bien-sûr en programmer autant qu'il le veut).
|
Il choisit un lieu et une date pour déclarer un événement avenir (il peut bien-sûr en programmer autant qu'il le veut).
|
||||||
|
|
||||||
|
|
||||||
Il peut, parcourir les publications des artistes, et entamer, sur la base d'un de ses projets événementiel, la négociation d'un contrat de prestation.
|
Il peut, parcourir les publications des artistes, et entamer, sur la base d'un de ses projets événementiel, la négociation d'un contrat de prestation.
|
||||||
|
|
||||||
Il a accès à la connaissance des journées connues comme libres des artistes par le système.
|
Il a accès à la connaissance des journées connues comme libres des artistes par le système.
|
||||||
|
|
||||||
== La confidentialité
|
## La confidentialité
|
||||||
|
|
||||||
À aucun moment, aucune adresse postale, aucune adresse e-mail ni aucun numéro de téléphone ne sont transmis ni aux clients, ni aux artistes. Seul le système a accès à ces informations.
|
À aucun moment, aucune adresse postale, aucune adresse e-mail ni aucun numéro de téléphone ne sont transmis ni aux clients, ni aux artistes. Seul le système a accès à ces informations.
|
||||||
|
|
||||||
De plus, le droit de retrait est permanent et sa mise en oeuvre immédiate.
|
De plus, le droit de retrait est permanent et sa mise en oeuvre immédiate.
|
||||||
Les artistes comme les clients peuvent demander leur désinscription, qui désactive immédiatement les publications associées à leurs informations, et programme la suppression complète de ces dites informations dans les quinze jours à compter de la demande, sauf demande contradictoire.
|
Les artistes comme les clients peuvent demander leur désinscription, qui désactive immédiatement les publications associées à leurs informations, et programme la suppression complète de ces dites informations dans les quinze jours à compter de la demande, sauf demande contradictoire.
|
||||||
L'opération est annulable, jusqu'à deux semaines après sa programmation.
|
L'opération est annulable, jusqu'à deux semaines après sa programmation.
|
||||||
</asciidoc>
|
</markdown>
|
||||||
|
|
|
||||||
|
|
@ -13,12 +13,14 @@
|
||||||
<Version>1.1.0-feat-sign-estimate.1</Version>
|
<Version>1.1.0-feat-sign-estimate.1</Version>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<PackageReference Include="DotMarkdown" />
|
||||||
<PackageReference Include="HigginsSoft.IdentityServer8" />
|
<PackageReference Include="HigginsSoft.IdentityServer8" />
|
||||||
<PackageReference Include="HigginsSoft.IdentityServer8.AspNetIdentity" />
|
<PackageReference Include="HigginsSoft.IdentityServer8.AspNetIdentity" />
|
||||||
<PackageReference Include="HigginsSoft.IdentityServer8.EntityFramework" />
|
<PackageReference Include="HigginsSoft.IdentityServer8.EntityFramework" />
|
||||||
<PackageReference Include="HigginsSoft.IdentityServer8.EntityFramework.Storage" />
|
<PackageReference Include="HigginsSoft.IdentityServer8.EntityFramework.Storage" />
|
||||||
<PackageReference Include="HigginsSoft.IdentityServer8.Security" />
|
<PackageReference Include="HigginsSoft.IdentityServer8.Security" />
|
||||||
<PackageReference Include="HigginsSoft.IdentityServer8.Storage" />
|
<PackageReference Include="HigginsSoft.IdentityServer8.Storage" />
|
||||||
|
<PackageReference Include="Markdig" />
|
||||||
<PackageReference Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" />
|
<PackageReference Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" />
|
||||||
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" />
|
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" />
|
||||||
<PackageReference Include="Microsoft.AspNetCore.Identity.UI" />
|
<PackageReference Include="Microsoft.AspNetCore.Identity.UI" />
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue