Compare commits
1 Commits
Author | SHA1 | Date |
---|---|---|
![]() |
ef9d748045 | 3 months ago |
@ -1,71 +0,0 @@
|
|||||||
kind: pipeline
|
|
||||||
name: CI
|
|
||||||
type: docker
|
|
||||||
|
|
||||||
trigger:
|
|
||||||
event:
|
|
||||||
- push
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: build
|
|
||||||
image: mcr.microsoft.com/dotnet/sdk:6.0
|
|
||||||
commands:
|
|
||||||
- cd WF-WebAdmin/WF-WebAdmin
|
|
||||||
- dotnet restore WF-WebAdmin.csproj
|
|
||||||
- dotnet build WF-WebAdmin.csproj -c Release --no-restore
|
|
||||||
- dotnet publish WF-WebAdmin.csproj -c Release --no-restore -o $CI_PROJECT_DIR/build/publish
|
|
||||||
|
|
||||||
- name: tests
|
|
||||||
image: mcr.microsoft.com/dotnet/sdk:6.0
|
|
||||||
commands:
|
|
||||||
- cd WF-WebAdmin/WF-WebAdmin
|
|
||||||
- dotnet restore WF-WebAdmin.csproj
|
|
||||||
- dotnet test WF-WebAdmin.csproj --no-restore
|
|
||||||
depends_on: [ build ]
|
|
||||||
|
|
||||||
- name: code-analysis
|
|
||||||
image: hub.codefirst.iut.uca.fr/marc.chevaldonne/codefirst-dronesonarplugin-dotnet8
|
|
||||||
commands:
|
|
||||||
- cd WF-WebAdmin/
|
|
||||||
- dotnet restore WF-WebAdmin.sln
|
|
||||||
- dotnet sonarscanner begin /k:$${project_key} /d:sonar.host.url=$${sonar_host} /d:sonar.coverageReportPaths="coveragereport/SonarQube.xml" /d:sonar.coverage.exclusions=$${coverage_exclusions} /d:sonar.login=$${sonar_token}
|
|
||||||
- dotnet build WF-WebAdmin.sln -c Release --no-restore
|
|
||||||
- dotnet test WF-WebAdmin.sln --logger trx --no-restore /p:CollectCoverage=true /p:CoverletOutputFormat=cobertura --collect "XPlat Code Coverage"
|
|
||||||
- reportgenerator -reports:"**/coverage.cobertura.xml" -reporttypes:SonarQube -targetdir:"coveragereport"
|
|
||||||
- dotnet publish WF-WebAdmin.sln -c Release --no-restore -o $CI_PROJECT_DIR/build/release
|
|
||||||
- dotnet sonarscanner end /d:sonar.login=$${sonar_token}
|
|
||||||
secrets: [ SECRET_SONAR_LOGIN ]
|
|
||||||
environment:
|
|
||||||
sonar_host: https://codefirst.iut.uca.fr/sonar/
|
|
||||||
sonar_token:
|
|
||||||
from_secret: sonar_token
|
|
||||||
project_key: web_admin
|
|
||||||
coverage_exclusions: "Tests/**"
|
|
||||||
depends_on: [ tests ]
|
|
||||||
|
|
||||||
- name: generate-and-deploy-docs
|
|
||||||
image: hub.codefirst.iut.uca.fr/thomas.bellembois/codefirst-docdeployer
|
|
||||||
failure: ignore
|
|
||||||
volumes:
|
|
||||||
- name: docs
|
|
||||||
path: /docs
|
|
||||||
commands:
|
|
||||||
- /entrypoint.sh
|
|
||||||
when:
|
|
||||||
branch:
|
|
||||||
- master
|
|
||||||
depends_on: [ build ]
|
|
||||||
|
|
||||||
- name: docker_build
|
|
||||||
image: plugins/docker
|
|
||||||
settings:
|
|
||||||
repo: hub.codefirst.iut.uca.fr/whatthefantasy/wf-webadmin
|
|
||||||
registry: hub.codefirst.iut.uca.fr
|
|
||||||
dockerfile: Docker/Dockerfile
|
|
||||||
tags:
|
|
||||||
- latest
|
|
||||||
username:
|
|
||||||
from_secret: docker_username
|
|
||||||
password:
|
|
||||||
from_secret: docker_password
|
|
||||||
depends_on: [ build, tests, code-analysis ]
|
|
@ -1,27 +0,0 @@
|
|||||||
# 1. Étape de build (SDK .NET 6)
|
|
||||||
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
|
|
||||||
WORKDIR /src
|
|
||||||
|
|
||||||
# Copier le csproj et restaurer les dépendances
|
|
||||||
COPY WF-WebAdmin/WF-WebAdmin/WF-WebAdmin.csproj ./
|
|
||||||
RUN dotnet restore WF-WebAdmin.csproj
|
|
||||||
|
|
||||||
# Copier le reste du code et compiler
|
|
||||||
COPY WF-WebAdmin/WF-WebAdmin/ ./
|
|
||||||
RUN dotnet publish WF-WebAdmin.csproj -c Release -o /app/publish
|
|
||||||
|
|
||||||
# 2. Étape finale (runtime .NET 6)
|
|
||||||
FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS final
|
|
||||||
WORKDIR /app
|
|
||||||
|
|
||||||
# Désactiver le rechargement de config pour éviter les erreurs inotify
|
|
||||||
ENV ASPNETCORE_HOSTBUILDER__RELOADCONFIGONCHANGE=false
|
|
||||||
|
|
||||||
# Copier les binaires publiés
|
|
||||||
COPY --from=build /app/publish ./
|
|
||||||
|
|
||||||
# Exposer le port HTTP (80) ; adapte si besoin
|
|
||||||
EXPOSE 80
|
|
||||||
|
|
||||||
# Lancement
|
|
||||||
ENTRYPOINT ["dotnet", "WF-WebAdmin.dll"]
|
|
@ -1,11 +0,0 @@
|
|||||||
namespace UnitTestWF
|
|
||||||
{
|
|
||||||
public class UnitTest1
|
|
||||||
{
|
|
||||||
[Fact]
|
|
||||||
public void Test1()
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,29 +0,0 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
|
||||||
|
|
||||||
<PropertyGroup>
|
|
||||||
<TargetFramework>net8.0</TargetFramework>
|
|
||||||
<ImplicitUsings>enable</ImplicitUsings>
|
|
||||||
<Nullable>enable</Nullable>
|
|
||||||
|
|
||||||
<IsPackable>false</IsPackable>
|
|
||||||
<IsTestProject>true</IsTestProject>
|
|
||||||
</PropertyGroup>
|
|
||||||
|
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="coverlet.collector" Version="6.0.4">
|
|
||||||
<PrivateAssets>all</PrivateAssets>
|
|
||||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
|
||||||
</PackageReference>
|
|
||||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.12.0" />
|
|
||||||
<PackageReference Include="xunit" Version="2.9.3" />
|
|
||||||
<PackageReference Include="xunit.runner.visualstudio" Version="3.0.2">
|
|
||||||
<PrivateAssets>all</PrivateAssets>
|
|
||||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
|
||||||
</PackageReference>
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
<ItemGroup>
|
|
||||||
<Using Include="Xunit" />
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
</Project>
|
|
@ -1,58 +0,0 @@
|
|||||||
@using WF_WebAdmin.Model;
|
|
||||||
|
|
||||||
@page "/add"
|
|
||||||
|
|
||||||
<h3>@Localizer["TitleAddQuiz"]</h3>
|
|
||||||
|
|
||||||
|
|
||||||
<EditForm Model="@_quizModel" OnValidSubmit="@HandleValidSubmit">
|
|
||||||
<DataAnnotationsValidator />
|
|
||||||
<ValidationSummary />
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<label for="display-quest">
|
|
||||||
@Localizer["TitleQuestion"]
|
|
||||||
<InputText id="display-quest" @bind-Value="_quizModel.Question" />
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<label for="display-a">
|
|
||||||
@Localizer["AnswerA"]
|
|
||||||
<InputText id="display-a" @bind-Value="_quizModel.AnswerA" />
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<label for="display-b">
|
|
||||||
@Localizer["AnswerB"]
|
|
||||||
<InputText id="display-b" @bind-Value="_quizModel.AnswerB" />
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<label for="display-c">
|
|
||||||
@Localizer["AnswerC"]
|
|
||||||
<InputText id="display-c" @bind-Value="_quizModel.AnswerC" />
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<label for="display-d">
|
|
||||||
@Localizer["AnswerD"]
|
|
||||||
<InputText id="display-d" @bind-Value="_quizModel.AnswerD" />
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<label for="cA">
|
|
||||||
@Localizer["GoodAnswer"]
|
|
||||||
<input name="cA" type="radio" @onchange="@(e => OnCAwnserChange("A"))" /> A
|
|
||||||
<input name="cA" type="radio" @onchange="@(e => OnCAwnserChange("B"))" /> B
|
|
||||||
<input name="cA" type="radio" @onchange="@(e => OnCAwnserChange("C"))" /> C
|
|
||||||
<input name="cA" type="radio" @onchange="@(e => OnCAwnserChange("D"))" /> D
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<button type="submit">@Localizer["Submit"]</button>
|
|
||||||
</EditForm>
|
|
@ -1,37 +0,0 @@
|
|||||||
@page "/commentary-chart"
|
|
||||||
|
|
||||||
<h1>Nombre de commentaires par mois</h1>
|
|
||||||
|
|
||||||
<MudChart ChartType="ChartType.Bar" ChartSeries="@Series" @bind-SelectedIndex="Index" LegendPosition="Position.Bottom" XAxisLabels="@XAxisLabels" Width="100%" Height="350px"></MudChart>
|
|
||||||
|
|
||||||
@code {
|
|
||||||
private int Index = -1;
|
|
||||||
private List<ChartSeries> Series = new();
|
|
||||||
private string[] XAxisLabels = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
|
|
||||||
|
|
||||||
[Inject] private WF_WebAdmin.Service.ICommentaryService CommentaryService { get; set; } = default!;
|
|
||||||
|
|
||||||
protected override async Task OnInitializedAsync()
|
|
||||||
{
|
|
||||||
var comments = await CommentaryService.GetCommentsAsync();
|
|
||||||
var groupedData = comments.GroupBy(c => c.DateCreation.Month)
|
|
||||||
.OrderBy(g => g.Key)
|
|
||||||
.Select(g => new { Month = g.Key - 1, Value = g.Count() })
|
|
||||||
.ToList();
|
|
||||||
|
|
||||||
double[] data = new double[12];
|
|
||||||
foreach (var item in groupedData)
|
|
||||||
{
|
|
||||||
data[item.Month] = item.Value;
|
|
||||||
}
|
|
||||||
|
|
||||||
Series = new List<ChartSeries>
|
|
||||||
{
|
|
||||||
new ChartSeries
|
|
||||||
{
|
|
||||||
Name = "",
|
|
||||||
Data = data
|
|
||||||
}
|
|
||||||
};
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,118 +1,45 @@
|
|||||||
@page "/deleteuser"
|
@page "/deleteuser"
|
||||||
@using WF_WebAdmin.Model
|
|
||||||
|
|
||||||
<PageTitle>Gestion utilisateur</PageTitle>
|
<PageTitle>Gestion utilisateur</PageTitle>
|
||||||
|
|
||||||
<h3>@Localizer["TitleUser"]</h3>
|
<h3>Gestion des utilisateurs</h3>
|
||||||
|
|
||||||
@if(_users == null)
|
|
||||||
{
|
|
||||||
<p><strong>@Localizer["UserNobody"]</strong></p>
|
|
||||||
}
|
|
||||||
|
|
||||||
else
|
|
||||||
{
|
|
||||||
<DataGrid TItem="User"
|
|
||||||
Data="@_users"
|
|
||||||
PageSize="@MaxValue"
|
|
||||||
ReadData="@OnReadData"
|
|
||||||
TotalItems="@_totalItem"
|
|
||||||
ShowPager
|
|
||||||
Responsive>
|
|
||||||
|
|
||||||
<DataGridColumn TItem="User" Field="@nameof(User.Id)" Caption="Id" />
|
|
||||||
<DataGridColumn TItem="User" Field="@nameof(User.IsAdmin)" Caption="Admin" />
|
|
||||||
<DataGridColumn TItem="User" Field="@nameof(User.Name)" Caption="Nom" />
|
|
||||||
<DataGridColumn TItem="User" Field="@nameof(User.Email)" Caption="Email" />
|
|
||||||
<DataGridColumn TItem="User" Field="@nameof(User.DateCreation)" Caption="Date de création"/>
|
|
||||||
</DataGrid>
|
|
||||||
|
|
||||||
<p>@Localizer["UserHere"]</p>
|
|
||||||
|
|
||||||
@foreach (var user in _users)
|
@if (users != null)
|
||||||
|
{
|
||||||
|
<p>Utilisateurs présents:</p>
|
||||||
|
@foreach (var user in users)
|
||||||
{
|
{
|
||||||
<div class="userDiv" id="@user.Id">
|
<div class="userDiv">
|
||||||
<img class="imgProfil" src="@user.Image" />
|
<img class="imgProfil" src="@user.Image" />
|
||||||
@if (user.IsAdmin)
|
<p class="idUser"><strong>Identifiant d'utilisateur :</strong> @user.Id</p>
|
||||||
{
|
<p class="pseudo"><strong>Nom d'utilisateur :</strong> @user.Name</p>
|
||||||
|
<p class="mail"><strong>Email de l'utilisateur :</strong> @user.Email</p>
|
||||||
<p class="pseudo"><strong>@Localizer["UserName"]</strong> @user.Name <strong>(@Localizer["UserAdmin"])</strong></p>
|
<p class="dateCrea"><strong>Date de création de l'utilisateur :</strong> @user.DateCreation.ToShortDateString()</p>
|
||||||
}
|
<button id="DeleteButton" @onclick="() => ShowConfirmation(user)">Supprimer l'utilisateur</button>
|
||||||
else
|
|
||||||
{
|
|
||||||
<p class="pseudo"><strong>@Localizer["UserName"]</strong> @user.Name</p>
|
|
||||||
}
|
|
||||||
|
|
||||||
<p class="mail"><strong>@Localizer["UserEmail"]</strong> @user.Email</p>
|
|
||||||
<p class="dateCrea"><strong>@Localizer["UserDate"]</strong> @user.DateCreation.ToShortDateString()</p>
|
|
||||||
|
|
||||||
@if(user.Comments != null)
|
|
||||||
{
|
|
||||||
<p class="titleComments"><strong>▶ @Localizer["UserComment"] @user.Name : </strong></p>
|
|
||||||
@foreach (var comment in user.Comments)
|
|
||||||
{
|
|
||||||
<p class="comments">@comment.DateCreation.ToShortDateString() - @comment.Text</p>
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
<p><i>@Localizer["UserNoComment"]</i></p>
|
|
||||||
}
|
|
||||||
|
|
||||||
<button id="ModifyButton" @onclick="() => ShowModifyConfirmation(user)">Modifier l'utilisateur</button>
|
|
||||||
<button id="DeleteButton" @onclick="() => ShowConfirmation(user)">@Localizer["UserDelete"]</button>
|
|
||||||
|
|
||||||
@if (!user.IsAdmin)
|
|
||||||
{
|
|
||||||
<button id="AdminButton" @onclick="() => ShowConfirmationAdmin(user)">@Localizer["UserAddAdmin"]</button>
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
<button id="AdminButton" @onclick="() => ShowConfirmationAdmin(user)">@Localizer["UserDeleteAdmin"]</button>
|
|
||||||
}
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- Fenêtre de confirmation de suppression -->
|
|
||||||
@if (_showPopupDelete)
|
|
||||||
{
|
|
||||||
<div class="divPopup">
|
|
||||||
<div class="contentPopup">
|
|
||||||
<p>@Localizer["UserPopupTitle"]</p>
|
|
||||||
<button @onclick="() => RemoveUser()">@Localizer["UserConfirmButton"]</button>
|
|
||||||
<button @onclick="ClosePopup">@Localizer["UserDeleteButton"]</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
@if (_showModifyPopup)
|
<!-- Fenêtre de confirmation -->
|
||||||
|
@if (showPopup)
|
||||||
{
|
{
|
||||||
<div class="divPopup">
|
<div class="divPopup">
|
||||||
<div class="contentPopup">
|
<div class="contentPopup">
|
||||||
<p>Modifier les informations de l'utilisateur :</p>
|
<p>Êtes-vous sûr de vouloir supprimer cet utilisateur ?</p>
|
||||||
<label>Nom d'utilisateur:</label>
|
<button @onclick="() => RemoveUser()">Confirmer</button>
|
||||||
<input type="text" @bind="_selectedUser.Name"/>
|
|
||||||
<label>Email:</label>
|
|
||||||
<input type="email" @bind="_selectedUser.Email" />
|
|
||||||
<label>Image:</label>
|
|
||||||
<input type="text" @bind="_selectedUser.Image" />
|
|
||||||
<button @onclick="ModifyUser">Sauvegarder</button>
|
|
||||||
<button @onclick="ClosePopup">Annuler</button>
|
<button @onclick="ClosePopup">Annuler</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
<p><strong>Aucun utilisateurs présents sur le site</strong></p>
|
||||||
}
|
}
|
||||||
|
|
||||||
<!-- Fenêtre de confirmation d'ajout admin-->
|
|
||||||
@if (_showPopupAdmin)
|
|
||||||
{
|
|
||||||
<div class="divPopup">
|
|
||||||
<div class="contentPopup">
|
|
||||||
<p>@Localizer["UserPopupTitle2"]</p>
|
|
||||||
<button @onclick="() => setAdmin()">@Localizer["UserConfirmButton"]</button>
|
|
||||||
<button @onclick="ClosePopup">@Localizer["UserDeleteButton"]</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
}
|
|
||||||
|
|
||||||
|
@code {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,48 +0,0 @@
|
|||||||
@using WF_WebAdmin.Model
|
|
||||||
@page "/edit/{Id:int}"
|
|
||||||
|
|
||||||
<h3>Editer</h3>
|
|
||||||
|
|
||||||
<EditForm Model="@_quoteModel" OnValidSubmit="@HandleValidSubmit">
|
|
||||||
<DataAnnotationsValidator />
|
|
||||||
<ValidationSummary />
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<label for="display-cit">
|
|
||||||
Citation:
|
|
||||||
<InputText id="display-cit" @bind-Value="_quoteModel.Content" />
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<label for="lang">
|
|
||||||
Langue:
|
|
||||||
<input name="lang" type="radio" @onchange="@(e => OnlangChange("fr"))" /> fr
|
|
||||||
<input name="lang" type="radio" @onchange="@(e => OnlangChange("en"))" /> en
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<label for="charac">
|
|
||||||
<InputSelect id="charac" @bind-Value="_quoteModel.Charac">
|
|
||||||
@foreach (Character display in _charac)
|
|
||||||
{
|
|
||||||
<option value="@display.caracter">@display.caracter (ID: @display.id_caracter)</option>
|
|
||||||
}
|
|
||||||
</InputSelect>
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<label for="src">
|
|
||||||
<InputSelect id="src" @bind-Value="_quoteModel.TitleSrc">
|
|
||||||
@foreach (Source display in _src)
|
|
||||||
{
|
|
||||||
<option value="@display.title">@display.title (ID: @display.id_source)</option>
|
|
||||||
}
|
|
||||||
</InputSelect>
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<button type="submit">Submit</button>
|
|
||||||
</EditForm>
|
|
@ -1,31 +0,0 @@
|
|||||||
@page "/login"
|
|
||||||
@using WF_WebAdmin.Model
|
|
||||||
@using System.Globalization
|
|
||||||
|
|
||||||
<h1>▶@Localizer["LoginTitle"]◀</h1>
|
|
||||||
|
|
||||||
<div class="login">
|
|
||||||
<EditForm Model="userLogin" OnValidSubmit="validlogin">
|
|
||||||
<DataAnnotationsValidator />
|
|
||||||
<ValidationSummary />
|
|
||||||
|
|
||||||
<label for="name"><strong>@Localizer["LoginId"]*</strong></label>
|
|
||||||
<InputText @bind-Value="userLogin.Name" id="name" placeholder="@Localizer["LoginEnterPseudo"]" class="connexion" required />
|
|
||||||
|
|
||||||
<label for="mdp">
|
|
||||||
<strong>@Localizer["LoginPassWd"]*</strong></label>
|
|
||||||
<InputText @bind-Value="@userLogin.Mdp" type="password" placeholder="@Localizer["LoginEnterPassWd"]" class="connexion" required />
|
|
||||||
|
|
||||||
|
|
||||||
<div class="buttonSubmitDiv">
|
|
||||||
<button class="buttonSudmite" type="submit">@Localizer["LoginConnexion"]</button>
|
|
||||||
</div>
|
|
||||||
<p class="ErrorMsg"><i>@ErrorConnexion</i></p>
|
|
||||||
</EditForm>
|
|
||||||
</div>
|
|
||||||
<p><i>Indice de connexion : admin / admin</i></p>
|
|
||||||
|
|
||||||
|
|
||||||
@code {
|
|
||||||
|
|
||||||
}
|
|
@ -1,31 +0,0 @@
|
|||||||
@page "/logs"
|
|
||||||
|
|
||||||
<h3>@Localizer["LogTitle"]</h3>
|
|
||||||
|
|
||||||
|
|
||||||
@if (logs is null)
|
|
||||||
{
|
|
||||||
<p>@Localizer["NotLog"]</p>
|
|
||||||
}
|
|
||||||
|
|
||||||
else
|
|
||||||
{
|
|
||||||
<p>@Localizer["Log"]</p>
|
|
||||||
<table>
|
|
||||||
<thead>
|
|
||||||
<tr>
|
|
||||||
<th>@Localizer["LogLvl"]</th>
|
|
||||||
<th>@Localizer["LogContent"]</th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
@foreach (var log in logs)
|
|
||||||
{
|
|
||||||
<tr>
|
|
||||||
<td>@log.LogLevel</td>
|
|
||||||
<td>@log.Message</td>
|
|
||||||
</tr>
|
|
||||||
}
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
}
|
|
@ -1,69 +0,0 @@
|
|||||||
@using WF_WebAdmin.Model
|
|
||||||
@page "/modifquiz"
|
|
||||||
|
|
||||||
<PageTitle>@Localizer["TitlePage"]</PageTitle>
|
|
||||||
|
|
||||||
<h3>@Localizer["TitlePage"]</h3>
|
|
||||||
|
|
||||||
<div>
|
|
||||||
<NavLink class="btn btn-primary" href="Add" Match="NavLinkMatch.All">
|
|
||||||
<i class="fa fa-plus"></i> @Localizer["Add"]
|
|
||||||
</NavLink>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<DataGrid TItem="Quiz"
|
|
||||||
Data="@quiz"
|
|
||||||
PageSize="@MaxValue"
|
|
||||||
ReadData="@OnReadData"
|
|
||||||
TotalItems="@totalItem"
|
|
||||||
ShowPager
|
|
||||||
Responsive>
|
|
||||||
|
|
||||||
<DataGridColumn TItem="Quiz" Field="@nameof(Quiz.Id)" Caption="@Localizer["Id"]" />
|
|
||||||
<DataGridColumn TItem="Quiz" Field="@nameof(Quiz.Question)" Caption="@Localizer["Question"]" />
|
|
||||||
<DataGridColumn TItem="Quiz" Field="@nameof(Quiz.AnswerA)" Caption="@Localizer["AnswerA"]" />
|
|
||||||
<DataGridColumn TItem="Quiz" Field="@nameof(Quiz.AnswerB)" Caption="@Localizer["AnswerB"]" />
|
|
||||||
<DataGridColumn TItem="Quiz" Field="@nameof(Quiz.AnswerC)" Caption="@Localizer["AnswerC"]" />
|
|
||||||
<DataGridColumn TItem="Quiz" Field="@nameof(Quiz.AnswerD)" Caption="@Localizer["AnswerD"]" />
|
|
||||||
<DataGridColumn TItem="Quiz" Field="@nameof(Quiz.CAnswer)" Caption="@Localizer["GoodAnswer"]" />
|
|
||||||
<DataGridColumn TItem="Quiz" Field="@nameof(Quiz.Id)" Caption="@Localizer["Action"]">
|
|
||||||
<DisplayTemplate>
|
|
||||||
<button type="button" class="btn btn-primary" @onclick="() => OnEditButtonClicked(context)"><i class="fa fa-edit"></i> @Localizer["Edit"]</button>
|
|
||||||
<button type="button" class="btn btn-primary" @onclick="() => OnDelete(context)"><i class="fa fa-trash"></i> @Localizer["Delete"]</button>
|
|
||||||
</DisplayTemplate>
|
|
||||||
</DataGridColumn>
|
|
||||||
</DataGrid>
|
|
||||||
|
|
||||||
@if (showEditQuiz && selectedQuiz != null)
|
|
||||||
{
|
|
||||||
<div class="divPopup">
|
|
||||||
<div class="contentPopup">
|
|
||||||
<p>@Localizer["ModifInfoUser"]</p>
|
|
||||||
<label>@Localizer["Question"]</label>
|
|
||||||
<input type="text" @bind="selectedQuiz.Question"/>
|
|
||||||
<label>@Localizer["AnswerA"]</label>
|
|
||||||
<input type="text" @bind="selectedQuiz.AnswerA" />
|
|
||||||
<label>@Localizer["AnswerB"]</label>
|
|
||||||
<input type="text" @bind="selectedQuiz.AnswerB" />
|
|
||||||
<label>@Localizer["AnswerC"]</label>
|
|
||||||
<input type="text" @bind="selectedQuiz.AnswerC" />
|
|
||||||
<label>@Localizer["AnswerD"]</label>
|
|
||||||
<input type="text" @bind="selectedQuiz.AnswerD" />
|
|
||||||
<label>@Localizer["GoodAnswer"]</label>
|
|
||||||
<input type="text" @bind="selectedQuiz.CAnswer" />
|
|
||||||
<button @onclick="EditQuiz">@Localizer["Save"] </button>
|
|
||||||
<button @onclick="ClosePopup">@Localizer["Delete"]</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
}
|
|
||||||
|
|
||||||
@if (showPopupDelete)
|
|
||||||
{
|
|
||||||
<div class="divPopup">
|
|
||||||
<div class="contentPopup">
|
|
||||||
<p>@Localizer["PopupQuestion"]</p>
|
|
||||||
<button @onclick="RemoveQuote">@Localizer["Yes"]</button>
|
|
||||||
<button @onclick="ClosePopup">@Localizer["Cancel"]</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
}
|
|
@ -1,162 +0,0 @@
|
|||||||
using Blazorise.DataGrid;
|
|
||||||
using Microsoft.AspNetCore.Components;
|
|
||||||
using Microsoft.Extensions.Localization;
|
|
||||||
using System.Security.Claims;
|
|
||||||
using WF_WebAdmin.Model;
|
|
||||||
using WF_WebAdmin.Service;
|
|
||||||
|
|
||||||
namespace WF_WebAdmin.Pages
|
|
||||||
{
|
|
||||||
public partial class ModifQuiz
|
|
||||||
{
|
|
||||||
private Quiz[] quiz;
|
|
||||||
|
|
||||||
private int MaxValue = 5;
|
|
||||||
|
|
||||||
private int totalItem;
|
|
||||||
|
|
||||||
private bool showEditQuiz = false;
|
|
||||||
|
|
||||||
private Quiz? selectedQuiz;
|
|
||||||
|
|
||||||
private bool showPopupDelete = false;
|
|
||||||
|
|
||||||
private int page = 1;
|
|
||||||
|
|
||||||
[Inject]
|
|
||||||
public ILogger<ModifQuiz>? Logger { get; set; }
|
|
||||||
|
|
||||||
[Inject]
|
|
||||||
public IStringLocalizer<ModifQuiz> Localizer { get; set; }
|
|
||||||
|
|
||||||
[Inject]
|
|
||||||
public IQuizService QuizService { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Handles the data reading event for a data grid, fetching quiz data based on the specified page and page size.
|
|
||||||
/// This method makes an asynchronous call to retrieve a specific page of quizzes and updates the `quiz` list and pagination details.
|
|
||||||
/// If the cancellation token is requested, it exits early without making further calls or updates.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="e">The event arguments containing pagination details such as page size and page number.</param>
|
|
||||||
private async Task OnReadData(DataGridReadDataEventArgs<Quiz> e)
|
|
||||||
{
|
|
||||||
// Check if the cancellation token has been requested
|
|
||||||
if (e.CancellationToken.IsCancellationRequested)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Fetch the quiz data for the specified page and page size
|
|
||||||
var response = await QuizService.getSommeQuiz(e.PageSize, e.Page);
|
|
||||||
|
|
||||||
// If cancellation hasn't been requested, process the data
|
|
||||||
if (!e.CancellationToken.IsCancellationRequested)
|
|
||||||
{
|
|
||||||
// Get the total number of quizzes for pagination purposes
|
|
||||||
totalItem = await QuizService.getNbQuiz();
|
|
||||||
|
|
||||||
// Update the quiz data for the current page
|
|
||||||
quiz = response.ToArray();
|
|
||||||
|
|
||||||
// Update the current page number
|
|
||||||
page = e.Page;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Handles the event when the "Edit" button is clicked for a quiz.
|
|
||||||
/// This method checks if a valid quiz is passed. If so, it sets the `selectedQuiz` to the clicked quiz and shows the quiz edit modal.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="quiz">The quiz object that was clicked for editing.</param>
|
|
||||||
private void OnEditButtonClicked(Quiz quiz)
|
|
||||||
{
|
|
||||||
// If the quiz is null, return early
|
|
||||||
if (quiz == null) return;
|
|
||||||
|
|
||||||
// Set the selected quiz to the one clicked by the user
|
|
||||||
selectedQuiz = quiz;
|
|
||||||
|
|
||||||
// Show the modal or UI for editing the quiz
|
|
||||||
showEditQuiz = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Closes the open popups and resets any related states.
|
|
||||||
/// This method hides the quiz edit popup, the delete confirmation popup, and resets the selected quiz to `null`.
|
|
||||||
/// </summary>
|
|
||||||
private void ClosePopup()
|
|
||||||
{
|
|
||||||
// Hide the edit quiz popup
|
|
||||||
showEditQuiz = false;
|
|
||||||
|
|
||||||
// Hide the delete confirmation popup
|
|
||||||
showPopupDelete = false;
|
|
||||||
|
|
||||||
// Reset the selected quiz to null
|
|
||||||
selectedQuiz = null;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Edits the selected quiz by updating it in the quiz service.
|
|
||||||
/// This method asynchronously sends the updated quiz data to the service for persistence.
|
|
||||||
/// After updating the quiz, it clears the selected quiz and closes any open popups.
|
|
||||||
/// </summary>
|
|
||||||
private async Task EditQuiz()
|
|
||||||
{
|
|
||||||
// Update the quiz in the service
|
|
||||||
LoggerSaveStub.Log(Logger, LogLevel.Information, $"Editing the question {selectedQuiz.Question}");
|
|
||||||
await QuizService.updateQuiz(selectedQuiz);
|
|
||||||
|
|
||||||
// Clear the selected quiz after successful update
|
|
||||||
selectedQuiz = null;
|
|
||||||
|
|
||||||
// Close the popups after the edit operation
|
|
||||||
ClosePopup();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Handles the event when the delete action is triggered for a quiz.
|
|
||||||
/// This method sets the selected quiz to the one passed as a parameter and shows the delete confirmation popup.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="q">The quiz to be deleted.</param>
|
|
||||||
private void OnDelete(Quiz q)
|
|
||||||
{
|
|
||||||
// Set the selected quiz to the one passed in
|
|
||||||
selectedQuiz = q;
|
|
||||||
|
|
||||||
// Show the delete confirmation popup
|
|
||||||
showPopupDelete = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Removes the selected quiz from the quiz service and updates the quiz list.
|
|
||||||
/// This method first checks if a quiz is selected, and if so, it deletes the quiz by calling the service.
|
|
||||||
/// After removal, it clears the `selectedQuiz`, updates the quiz list, and closes the delete confirmation popup.
|
|
||||||
/// </summary>
|
|
||||||
private async Task RemoveQuote()
|
|
||||||
{
|
|
||||||
// Check if a quiz is selected for deletion
|
|
||||||
if (selectedQuiz != null)
|
|
||||||
{
|
|
||||||
// Remove the selected quiz from the service by its ID
|
|
||||||
LoggerSaveStub.Log(Logger, LogLevel.Information, $"Delete the question {selectedQuiz.Question}");
|
|
||||||
await QuizService.removeQuiz(selectedQuiz.Id);
|
|
||||||
|
|
||||||
// Clear the selected quiz after successful removal
|
|
||||||
selectedQuiz = null;
|
|
||||||
|
|
||||||
// Update the quiz list by fetching the latest data
|
|
||||||
var response = await QuizService.getSommeQuiz(MaxValue, page);
|
|
||||||
quiz = response.ToArray();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Close the delete confirmation popup
|
|
||||||
showPopupDelete = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,58 +1,24 @@
|
|||||||
@using WF_WebAdmin.Model
|
@using WF_WebAdmin.Model
|
||||||
@page "/modifquote"
|
@page "/modifquote"
|
||||||
|
|
||||||
<PageTitle>@Localizer["TitlePage"]</PageTitle>
|
<PageTitle>Corection des citation</PageTitle>
|
||||||
|
|
||||||
<h3>@Localizer["TitlePage"]</h3>
|
<h3>Corection des citation</h3>
|
||||||
|
|
||||||
<DataGrid TItem="Quote"
|
<p>Ajouter une recherche</p>
|
||||||
Data="@quotes"
|
|
||||||
PageSize="@MaxValue"
|
|
||||||
ReadData="@OnReadData"
|
|
||||||
TotalItems="@totalItem"
|
|
||||||
ShowPager
|
|
||||||
Responsive>
|
|
||||||
|
|
||||||
<DataGridColumn TItem="Quote" Field="@nameof(Quote.Id)" Caption="@Localizer["Id"]" />
|
|
||||||
<DataGridColumn TItem="Quote" Field="@nameof(Quote.Content)" Caption="@Localizer["Quote"]" />
|
|
||||||
<DataGridColumn TItem="Quote" Field="@nameof(Quote.Charac)" Caption="@Localizer["Character"]" />
|
|
||||||
<DataGridColumn TItem="Quote" Field="@nameof(Quote.TitleSrc)" Caption="@Localizer["Source"]" />
|
|
||||||
<DataGridColumn TItem="Quote" Field="@nameof(Quote.Langue)" Caption="@Localizer["Language"]" />
|
|
||||||
<DataGridColumn TItem="Quote" Field="@nameof(Quote.DateSrc)" Caption="@Localizer["Date"]" DisplayFormat="{0:d}" DisplayFormatProvider="@System.Globalization.CultureInfo.GetCultureInfo("fr-FR")" />
|
|
||||||
<DataGridColumn TItem="Quote" Field="@nameof(Quote.Id)" Caption="@Localizer["Action"]">
|
|
||||||
<DisplayTemplate>
|
|
||||||
@* <button @onclick="() => OnEditButtonClicked(context) " style="background-color: lightgray; padding: 0">
|
|
||||||
<img alt="Bouton Modifier" src="edit.png" width="30" height="30"/>
|
|
||||||
</button> *@
|
|
||||||
<a href="Edit/@(context.Id)" class="btn btn-primary"><i class="fa fa-edit"></i> @Localizer["Edit"]</a>
|
|
||||||
<button type="button" class="btn btn-primary" @onclick="() => OnDelete(context)"><i class="fa fa-trash"></i> @Localizer["Delete"]</button>
|
|
||||||
</DisplayTemplate>
|
|
||||||
</DataGridColumn>
|
|
||||||
</DataGrid>
|
|
||||||
|
|
||||||
@* @if (showEditQuote && selectedQuote != null)
|
@if (quotes != null)
|
||||||
{
|
{
|
||||||
<div class="divPopup">
|
<DataGrid TItem="Quote"
|
||||||
<div class="contentPopup">
|
Data="@quotes"
|
||||||
<p>Modifier les informations de l'utilisateur :</p>
|
PageSize="int.MaxValue"
|
||||||
<label>Citation:</label>
|
Responsive>
|
||||||
<input type="text" @bind="selectedQuote.Content"/>
|
|
||||||
<label>Personnage:</label>
|
|
||||||
<input type="text" @bind="selectedQuote.Charac" />
|
|
||||||
<label>Source:</label>
|
|
||||||
<input type="text" @bind="selectedQuote.TitleSrc" />
|
|
||||||
<button @onclick="EditQuote">Sauvegarder </button>
|
|
||||||
<button @onclick="ClosePopup">Annuler</button>
|
|
||||||
</div>
|
|
||||||
</div> *@
|
|
||||||
|
|
||||||
@if (showPopupDelete)
|
<DataGridColumn TItem="Quote" Field="@nameof(Quote.Id)" Caption="Id"/>
|
||||||
{
|
<DataGridColumn TItem="Quote" Field="@nameof(Quote.Content)" Caption="Citation"/>
|
||||||
<div class="divPopup">
|
<DataGridColumn TItem="Quote" Field="@nameof(Quote.Charac)" Caption="Personage"/>
|
||||||
<div class="contentPopup">
|
<DataGridColumn TItem="Quote" Field="@nameof(Quote.TitleSrc)" Caption="Source" />
|
||||||
<p>@Localizer["PopupQuestion"]</p>
|
<DataGridColumn TItem="Quote" Field="@nameof(Quote.Langue)" Caption="Langue" />
|
||||||
<button @onclick="RemoveQuote">@Localizer["Yes"]</button>
|
<DataGridColumn TItem="Quote" Field="@nameof(Quote.DateSrc)" Caption="Date" DisplayFormat="{0:d}" DisplayFormatProvider="@System.Globalization.CultureInfo.GetCultureInfo("fr-FR")" />
|
||||||
<button @onclick="ClosePopup">@Localizer["Cancel"]</button>
|
</DataGrid>
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
}
|
}
|
@ -1,35 +1,48 @@
|
|||||||
@page "/ValidQuote"
|
@page "/ValidQuote"
|
||||||
@using WF_WebAdmin.Model
|
@using WF_WebAdmin.Model
|
||||||
|
|
||||||
<h3>@Localizer["TitleValid"]</h3>
|
<h3>Citations non validées</h3>
|
||||||
|
|
||||||
@if (quotes is null)
|
@if (quotes == null)
|
||||||
{
|
{
|
||||||
<p>@Localizer["LoginQuote"]</p>
|
<p> Chargement des quotes ... </p>
|
||||||
}
|
}
|
||||||
@* else if (quotes.Count == 0)
|
|
||||||
{
|
|
||||||
<p>Aucune citation en attente de validation.</p>
|
|
||||||
} *@
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
<p>@Localizer["QuoteValid"]</p>
|
<p> Quotes en attente de validation : </p>
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>#</th>
|
||||||
|
<th>citation</th>
|
||||||
|
<th>personnage</th>
|
||||||
|
<th>source</th>
|
||||||
|
<th>langue</th>
|
||||||
|
<th>date</th>
|
||||||
|
<th>actions</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
@foreach (var quote in quotes)
|
@foreach (var quote in quotes)
|
||||||
{
|
{
|
||||||
<div class="QuoteDiv">
|
<tr>
|
||||||
<p><strong>@Localizer["Id"]</strong> @quote.Id</p>
|
<td>@quote.Id</td>
|
||||||
<p><strong>@Localizer["Content"]</strong> @quote.Content</p>
|
<td>@quote.Content</td>
|
||||||
<p><strong>@Localizer["Language"]</strong> @quote.Langue</p>
|
<td>@quote.Charac</td>
|
||||||
|
<td>@quote.TitleSrc</td>
|
||||||
<p><strong>@Localizer["Character"]</strong> @quote.Charac</p>
|
<td>@quote.Langue</td>
|
||||||
<p><strong>@Localizer["Image"]</strong> @quote.ImgPath</p>
|
<td>@quote.DateSrc</td>
|
||||||
<p><strong>@Localizer["Source"]</strong> @quote.TitleSrc</p>
|
<div class="boutons">
|
||||||
<p><strong>@Localizer["Date"]</strong> @quote.DateSrc.ToShortDateString()</p>
|
<button style="background-color: darkseagreen" @onclick="() => OnValidButton(quote)">
|
||||||
<p><strong>@Localizer["User"]</strong> @quote.UserProposition</p>
|
<img alt="validate" src="check.png" />
|
||||||
|
</button>
|
||||||
@* <button @onclick="() => ValiderQuote(quote.Id)">Valider</button>
|
<button style="background-color: indianred" @onclick="() => OnRejectButton(quote)">
|
||||||
<button @onclick="() => RejeterQuote(quote.Id)">Rejeter</button> *@
|
<img alt="reject" src="cross.png" />
|
||||||
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
</tr>
|
||||||
}
|
}
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
}
|
}
|
||||||
|
@ -1,141 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="AccueilAddRandomQuote" xml:space="preserve">
|
|
||||||
<value>Put a New Random Quote</value>
|
|
||||||
</data>
|
|
||||||
<data name="AccueilCharacter" xml:space="preserve">
|
|
||||||
<value>Character:</value>
|
|
||||||
</data>
|
|
||||||
<data name="AccueilManualChange" xml:space="preserve">
|
|
||||||
<value>Changed Quote Manually</value>
|
|
||||||
</data>
|
|
||||||
<data name="AccueilNoQuote" xml:space="preserve">
|
|
||||||
<value>No Quote of the Day</value>
|
|
||||||
</data>
|
|
||||||
<data name="AccueilSrc" xml:space="preserve">
|
|
||||||
<value>Source:</value>
|
|
||||||
</data>
|
|
||||||
<data name="AccueilTitle" xml:space="preserve">
|
|
||||||
<value>Quote of the Day</value>
|
|
||||||
</data>
|
|
||||||
<data name="AccueilWelcome" xml:space="preserve">
|
|
||||||
<value>Welcome to the What the Fantasy Dashboard</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,141 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="AccueilAddRandomQuote" xml:space="preserve">
|
|
||||||
<value>Mettre une nouvellement citation aléatoire</value>
|
|
||||||
</data>
|
|
||||||
<data name="AccueilCharacter" xml:space="preserve">
|
|
||||||
<value>Personnage :</value>
|
|
||||||
</data>
|
|
||||||
<data name="AccueilManualChange" xml:space="preserve">
|
|
||||||
<value>Changement de la citation manuellement</value>
|
|
||||||
</data>
|
|
||||||
<data name="AccueilNoQuote" xml:space="preserve">
|
|
||||||
<value>Aucune citation du jour</value>
|
|
||||||
</data>
|
|
||||||
<data name="AccueilSrc" xml:space="preserve">
|
|
||||||
<value>Source :</value>
|
|
||||||
</data>
|
|
||||||
<data name="AccueilTitle" xml:space="preserve">
|
|
||||||
<value>Citation du jour</value>
|
|
||||||
</data>
|
|
||||||
<data name="AccueilWelcome" xml:space="preserve">
|
|
||||||
<value>Bienvenu sur le tableau de bord de What the Fantasy</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,144 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="AnswerA" xml:space="preserve">
|
|
||||||
<value>Answer A:</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerB" xml:space="preserve">
|
|
||||||
<value>Answer B:</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerC" xml:space="preserve">
|
|
||||||
<value>Answer C:</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerD" xml:space="preserve">
|
|
||||||
<value>Answer D:</value>
|
|
||||||
</data>
|
|
||||||
<data name="GoodAnswer" xml:space="preserve">
|
|
||||||
<value>Good answer:</value>
|
|
||||||
</data>
|
|
||||||
<data name="Submit" xml:space="preserve">
|
|
||||||
<value>Submit</value>
|
|
||||||
</data>
|
|
||||||
<data name="TitleAddQuiz" xml:space="preserve">
|
|
||||||
<value>Add a question</value>
|
|
||||||
</data>
|
|
||||||
<data name="TitleQuestion" xml:space="preserve">
|
|
||||||
<value>Question:</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,144 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="AnswerA" xml:space="preserve">
|
|
||||||
<value>Réponse A:</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerB" xml:space="preserve">
|
|
||||||
<value>Réponse B:</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerC" xml:space="preserve">
|
|
||||||
<value>Réponse C:</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerD" xml:space="preserve">
|
|
||||||
<value>Réponse D:</value>
|
|
||||||
</data>
|
|
||||||
<data name="GoodAnswer" xml:space="preserve">
|
|
||||||
<value>Bonne réponse:</value>
|
|
||||||
</data>
|
|
||||||
<data name="Submit" xml:space="preserve">
|
|
||||||
<value>Valider</value>
|
|
||||||
</data>
|
|
||||||
<data name="TitleAddQuiz" xml:space="preserve">
|
|
||||||
<value>Ajouter une Question</value>
|
|
||||||
</data>
|
|
||||||
<data name="TitleQuestion" xml:space="preserve">
|
|
||||||
<value>Question:</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,169 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="TitleUser" xml:space="preserve">
|
|
||||||
<value>User Management</value>
|
|
||||||
<comment>gestionaire user</comment>
|
|
||||||
</data>
|
|
||||||
<data name="UserAddAdmin" xml:space="preserve">
|
|
||||||
<value>Add as Admin</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserAdmin" xml:space="preserve">
|
|
||||||
<value>Administrator</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserComment" xml:space="preserve">
|
|
||||||
<value>Comment(s) Posted by</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserConfirmButton" xml:space="preserve">
|
|
||||||
<value>Confirm</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserDate" xml:space="preserve">
|
|
||||||
<value>Account Creation Date:</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserDelete" xml:space="preserve">
|
|
||||||
<value>Delete User</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserDeleteAdmin" xml:space="preserve">
|
|
||||||
<value>Remove as Admin</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserDeleteButton" xml:space="preserve">
|
|
||||||
<value>Cancel</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserEmail" xml:space="preserve">
|
|
||||||
<value>User Email:</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserHere" xml:space="preserve">
|
|
||||||
<value>Users present:</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserName" xml:space="preserve">
|
|
||||||
<value>Username</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserNobody" xml:space="preserve">
|
|
||||||
<value>No users present on the site</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserNoComment" xml:space="preserve">
|
|
||||||
<value>No comments on the site</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserPopupTitle" xml:space="preserve">
|
|
||||||
<value>Are you sure you want to delete this user?</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserPopupTitle2" xml:space="preserve">
|
|
||||||
<value>Are you sure you want to change this user's role?</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,169 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="TitleUser" xml:space="preserve">
|
|
||||||
<value>Gestionnaire des utilisateurs</value>
|
|
||||||
<comment>gestion user</comment>
|
|
||||||
</data>
|
|
||||||
<data name="UserAddAdmin" xml:space="preserve">
|
|
||||||
<value>Ajouter en tant qu'administrateur</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserAdmin" xml:space="preserve">
|
|
||||||
<value>Administrateur</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserComment" xml:space="preserve">
|
|
||||||
<value>Commentaire(s) posté(s) par </value>
|
|
||||||
</data>
|
|
||||||
<data name="UserConfirmButton" xml:space="preserve">
|
|
||||||
<value>Confirmer</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserDate" xml:space="preserve">
|
|
||||||
<value>Date de création du compte :</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserDelete" xml:space="preserve">
|
|
||||||
<value>Supprimer l'utilisateur</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserDeleteAdmin" xml:space="preserve">
|
|
||||||
<value>Retirer en tant qu'administrateur</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserDeleteButton" xml:space="preserve">
|
|
||||||
<value>Annuler</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserEmail" xml:space="preserve">
|
|
||||||
<value>Email de l'utilisateur :</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserHere" xml:space="preserve">
|
|
||||||
<value>Utilisateurs présents:</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserName" xml:space="preserve">
|
|
||||||
<value>Nom d'utilisateur :</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserNobody" xml:space="preserve">
|
|
||||||
<value>Aucun utilisateur présent sur le site</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserNoComment" xml:space="preserve">
|
|
||||||
<value>Aucun commentaire sur le site</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserPopupTitle" xml:space="preserve">
|
|
||||||
<value>Êtes-vous sûr de vouloir supprimer cet utilisateur ?</value>
|
|
||||||
</data>
|
|
||||||
<data name="UserPopupTitle2" xml:space="preserve">
|
|
||||||
<value>Êtes-vous sûr de vouloir changer le rôle de cet utilisateur ?</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,140 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="LoginConnexion" xml:space="preserve">
|
|
||||||
<value>Login</value>
|
|
||||||
</data>
|
|
||||||
<data name="LoginEnterPassWd" xml:space="preserve">
|
|
||||||
<value>Enter your password</value>
|
|
||||||
</data>
|
|
||||||
<data name="LoginEnterPseudo" xml:space="preserve">
|
|
||||||
<value>Enter your pseudo</value>
|
|
||||||
</data>
|
|
||||||
<data name="LoginId" xml:space="preserve">
|
|
||||||
<value>Pseudo</value>
|
|
||||||
<comment>id</comment>
|
|
||||||
</data>
|
|
||||||
<data name="LoginPassWd" xml:space="preserve">
|
|
||||||
<value>Password</value>
|
|
||||||
</data>
|
|
||||||
<data name="LoginTitle" xml:space="preserve">
|
|
||||||
<value>Login</value>
|
|
||||||
<comment>connexion</comment>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,140 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="LoginConnexion" xml:space="preserve">
|
|
||||||
<value>Se Connecter</value>
|
|
||||||
</data>
|
|
||||||
<data name="LoginEnterPassWd" xml:space="preserve">
|
|
||||||
<value>Entrez votre mot de passe</value>
|
|
||||||
</data>
|
|
||||||
<data name="LoginEnterPseudo" xml:space="preserve">
|
|
||||||
<value>Entrez votre pseudo</value>
|
|
||||||
</data>
|
|
||||||
<data name="LoginId" xml:space="preserve">
|
|
||||||
<value>Identifiant</value>
|
|
||||||
<comment>id</comment>
|
|
||||||
</data>
|
|
||||||
<data name="LoginPassWd" xml:space="preserve">
|
|
||||||
<value>Mot de passe</value>
|
|
||||||
</data>
|
|
||||||
<data name="LoginTitle" xml:space="preserve">
|
|
||||||
<value>Connexion</value>
|
|
||||||
<comment>connexion</comment>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,135 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="Log" xml:space="preserve">
|
|
||||||
<value>Current Logs</value>
|
|
||||||
</data>
|
|
||||||
<data name="LogContent" xml:space="preserve">
|
|
||||||
<value>Content</value>
|
|
||||||
</data>
|
|
||||||
<data name="LogLvl" xml:space="preserve">
|
|
||||||
<value>Type of Logs :</value>
|
|
||||||
</data>
|
|
||||||
<data name="LogTitle" xml:space="preserve">
|
|
||||||
<value>Logs</value>
|
|
||||||
</data>
|
|
||||||
<data name="NotLog" xml:space="preserve">
|
|
||||||
<value>No Log</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,135 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="Log" xml:space="preserve">
|
|
||||||
<value>Logs actuels</value>
|
|
||||||
</data>
|
|
||||||
<data name="LogContent" xml:space="preserve">
|
|
||||||
<value>Contenu</value>
|
|
||||||
</data>
|
|
||||||
<data name="LogLvl" xml:space="preserve">
|
|
||||||
<value>Type de Logs :</value>
|
|
||||||
</data>
|
|
||||||
<data name="LogTitle" xml:space="preserve">
|
|
||||||
<value>Logs</value>
|
|
||||||
</data>
|
|
||||||
<data name="NotLog" xml:space="preserve">
|
|
||||||
<value>Aucun Log</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,171 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="Action" xml:space="preserve">
|
|
||||||
<value>Action</value>
|
|
||||||
</data>
|
|
||||||
<data name="Add" xml:space="preserve">
|
|
||||||
<value>Add</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerA" xml:space="preserve">
|
|
||||||
<value>Answer A</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerB" xml:space="preserve">
|
|
||||||
<value>Answer B</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerC" xml:space="preserve">
|
|
||||||
<value>Answer C</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerD" xml:space="preserve">
|
|
||||||
<value>Answer D</value>
|
|
||||||
</data>
|
|
||||||
<data name="Cancel" xml:space="preserve">
|
|
||||||
<value>Cancel</value>
|
|
||||||
</data>
|
|
||||||
<data name="Delete" xml:space="preserve">
|
|
||||||
<value>Cancel</value>
|
|
||||||
</data>
|
|
||||||
<data name="Edit" xml:space="preserve">
|
|
||||||
<value>Edit</value>
|
|
||||||
</data>
|
|
||||||
<data name="GoodAnswer" xml:space="preserve">
|
|
||||||
<value>Good Answer</value>
|
|
||||||
</data>
|
|
||||||
<data name="Id" xml:space="preserve">
|
|
||||||
<value>ID</value>
|
|
||||||
</data>
|
|
||||||
<data name="ModifInfoUser" xml:space="preserve">
|
|
||||||
<value>Edit user information :</value>
|
|
||||||
</data>
|
|
||||||
<data name="PopupQuestion" xml:space="preserve">
|
|
||||||
<value>Are you sure you want to delete this quiz ?</value>
|
|
||||||
</data>
|
|
||||||
<data name="Question" xml:space="preserve">
|
|
||||||
<value>Question</value>
|
|
||||||
</data>
|
|
||||||
<data name="Save" xml:space="preserve">
|
|
||||||
<value>Save</value>
|
|
||||||
</data>
|
|
||||||
<data name="TitlePage" xml:space="preserve">
|
|
||||||
<value>Quiz Management</value>
|
|
||||||
</data>
|
|
||||||
<data name="Yes" xml:space="preserve">
|
|
||||||
<value>Confirm</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,171 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="Action" xml:space="preserve">
|
|
||||||
<value>Action</value>
|
|
||||||
</data>
|
|
||||||
<data name="Add" xml:space="preserve">
|
|
||||||
<value>Ajouter</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerA" xml:space="preserve">
|
|
||||||
<value>Réponse A</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerB" xml:space="preserve">
|
|
||||||
<value>Réponse B</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerC" xml:space="preserve">
|
|
||||||
<value>Réponse C</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerD" xml:space="preserve">
|
|
||||||
<value>Réponse D</value>
|
|
||||||
</data>
|
|
||||||
<data name="Cancel" xml:space="preserve">
|
|
||||||
<value>Annuler</value>
|
|
||||||
</data>
|
|
||||||
<data name="Delete" xml:space="preserve">
|
|
||||||
<value>Supprimer</value>
|
|
||||||
</data>
|
|
||||||
<data name="Edit" xml:space="preserve">
|
|
||||||
<value>Editer</value>
|
|
||||||
</data>
|
|
||||||
<data name="GoodAnswer" xml:space="preserve">
|
|
||||||
<value>Bonne réponse</value>
|
|
||||||
</data>
|
|
||||||
<data name="Id" xml:space="preserve">
|
|
||||||
<value>ID</value>
|
|
||||||
</data>
|
|
||||||
<data name="ModifInfoUser" xml:space="preserve">
|
|
||||||
<value>Modifier les informations de l'utilisateur :</value>
|
|
||||||
</data>
|
|
||||||
<data name="PopupQuestion" xml:space="preserve">
|
|
||||||
<value>Êtes-vous sûr de vouloir supprimer ce quiz ?</value>
|
|
||||||
</data>
|
|
||||||
<data name="Question" xml:space="preserve">
|
|
||||||
<value>Question</value>
|
|
||||||
</data>
|
|
||||||
<data name="Save" xml:space="preserve">
|
|
||||||
<value>Sauvegarder</value>
|
|
||||||
</data>
|
|
||||||
<data name="TitlePage" xml:space="preserve">
|
|
||||||
<value>Gestion des quiz</value>
|
|
||||||
</data>
|
|
||||||
<data name="Yes" xml:space="preserve">
|
|
||||||
<value>Confirmer</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,159 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="Action" xml:space="preserve">
|
|
||||||
<value>Action</value>
|
|
||||||
</data>
|
|
||||||
<data name="Cancel" xml:space="preserve">
|
|
||||||
<value>Cancel</value>
|
|
||||||
</data>
|
|
||||||
<data name="Character" xml:space="preserve">
|
|
||||||
<value>Character</value>
|
|
||||||
</data>
|
|
||||||
<data name="Date" xml:space="preserve">
|
|
||||||
<value>Date</value>
|
|
||||||
</data>
|
|
||||||
<data name="Delete" xml:space="preserve">
|
|
||||||
<value>Delete</value>
|
|
||||||
</data>
|
|
||||||
<data name="Edit" xml:space="preserve">
|
|
||||||
<value>Edit</value>
|
|
||||||
</data>
|
|
||||||
<data name="Id" xml:space="preserve">
|
|
||||||
<value>Id</value>
|
|
||||||
</data>
|
|
||||||
<data name="Language" xml:space="preserve">
|
|
||||||
<value>Language</value>
|
|
||||||
</data>
|
|
||||||
<data name="PopupQuestion" xml:space="preserve">
|
|
||||||
<value>Are you sure you want to delete this quote ?</value>
|
|
||||||
</data>
|
|
||||||
<data name="Quote" xml:space="preserve">
|
|
||||||
<value>Quote</value>
|
|
||||||
</data>
|
|
||||||
<data name="Source" xml:space="preserve">
|
|
||||||
<value>Source</value>
|
|
||||||
</data>
|
|
||||||
<data name="TitlePage" xml:space="preserve">
|
|
||||||
<value>Corrections of quotes</value>
|
|
||||||
</data>
|
|
||||||
<data name="Yes" xml:space="preserve">
|
|
||||||
<value>Confirm</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,159 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="Action" xml:space="preserve">
|
|
||||||
<value>Action</value>
|
|
||||||
</data>
|
|
||||||
<data name="Cancel" xml:space="preserve">
|
|
||||||
<value>Annuler</value>
|
|
||||||
</data>
|
|
||||||
<data name="Character" xml:space="preserve">
|
|
||||||
<value>Personage</value>
|
|
||||||
</data>
|
|
||||||
<data name="Date" xml:space="preserve">
|
|
||||||
<value>Date</value>
|
|
||||||
</data>
|
|
||||||
<data name="Delete" xml:space="preserve">
|
|
||||||
<value>Supprimer</value>
|
|
||||||
</data>
|
|
||||||
<data name="Edit" xml:space="preserve">
|
|
||||||
<value>Editer</value>
|
|
||||||
</data>
|
|
||||||
<data name="Id" xml:space="preserve">
|
|
||||||
<value>Id</value>
|
|
||||||
</data>
|
|
||||||
<data name="Language" xml:space="preserve">
|
|
||||||
<value>Langue</value>
|
|
||||||
</data>
|
|
||||||
<data name="PopupQuestion" xml:space="preserve">
|
|
||||||
<value>Êtes-vous sûr de vouloir supprimer cette citation ?</value>
|
|
||||||
</data>
|
|
||||||
<data name="Quote" xml:space="preserve">
|
|
||||||
<value>Citation</value>
|
|
||||||
</data>
|
|
||||||
<data name="Source" xml:space="preserve">
|
|
||||||
<value>Source</value>
|
|
||||||
</data>
|
|
||||||
<data name="TitlePage" xml:space="preserve">
|
|
||||||
<value>Correction des citations</value>
|
|
||||||
</data>
|
|
||||||
<data name="Yes" xml:space="preserve">
|
|
||||||
<value>Confirmer</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,153 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="Action" xml:space="preserve">
|
|
||||||
<value>Actions</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerA" xml:space="preserve">
|
|
||||||
<value>Answer A</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerB" xml:space="preserve">
|
|
||||||
<value>Answer B</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerC" xml:space="preserve">
|
|
||||||
<value>Answer C</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerD" xml:space="preserve">
|
|
||||||
<value>Answer D</value>
|
|
||||||
</data>
|
|
||||||
<data name="GoodAnswer" xml:space="preserve">
|
|
||||||
<value>Correct answer</value>
|
|
||||||
</data>
|
|
||||||
<data name="LoadQuiz" xml:space="preserve">
|
|
||||||
<value>Loading quizzes</value>
|
|
||||||
</data>
|
|
||||||
<data name="Question" xml:space="preserve">
|
|
||||||
<value>Question</value>
|
|
||||||
</data>
|
|
||||||
<data name="QuizAwait" xml:space="preserve">
|
|
||||||
<value>Quiz awaiting validation</value>
|
|
||||||
</data>
|
|
||||||
<data name="TitleQuiz" xml:space="preserve">
|
|
||||||
<value>Quiz to validate</value>
|
|
||||||
</data>
|
|
||||||
<data name="User" xml:space="preserve">
|
|
||||||
<value>User</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,153 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="Action" xml:space="preserve">
|
|
||||||
<value>Actions</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerA" xml:space="preserve">
|
|
||||||
<value>Réponse A </value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerB" xml:space="preserve">
|
|
||||||
<value>Réponse B</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerC" xml:space="preserve">
|
|
||||||
<value>Réponse C</value>
|
|
||||||
</data>
|
|
||||||
<data name="AnswerD" xml:space="preserve">
|
|
||||||
<value>Réponse D</value>
|
|
||||||
</data>
|
|
||||||
<data name="GoodAnswer" xml:space="preserve">
|
|
||||||
<value>Réponse Correcte</value>
|
|
||||||
</data>
|
|
||||||
<data name="LoadQuiz" xml:space="preserve">
|
|
||||||
<value>Chargement des quiz ...</value>
|
|
||||||
</data>
|
|
||||||
<data name="Question" xml:space="preserve">
|
|
||||||
<value>Question</value>
|
|
||||||
</data>
|
|
||||||
<data name="QuizAwait" xml:space="preserve">
|
|
||||||
<value>Quizs en attente de validation :</value>
|
|
||||||
</data>
|
|
||||||
<data name="TitleQuiz" xml:space="preserve">
|
|
||||||
<value>Quiz à valider</value>
|
|
||||||
</data>
|
|
||||||
<data name="User" xml:space="preserve">
|
|
||||||
<value>Utilisateur</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,153 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="Character" xml:space="preserve">
|
|
||||||
<value>Character :</value>
|
|
||||||
</data>
|
|
||||||
<data name="Content" xml:space="preserve">
|
|
||||||
<value>Content :</value>
|
|
||||||
</data>
|
|
||||||
<data name="Date" xml:space="preserve">
|
|
||||||
<value>Source date</value>
|
|
||||||
</data>
|
|
||||||
<data name="Id" xml:space="preserve">
|
|
||||||
<value>ID :</value>
|
|
||||||
</data>
|
|
||||||
<data name="Image" xml:space="preserve">
|
|
||||||
<value>Image :</value>
|
|
||||||
</data>
|
|
||||||
<data name="Language" xml:space="preserve">
|
|
||||||
<value>Language :</value>
|
|
||||||
</data>
|
|
||||||
<data name="LoginQuote" xml:space="preserve">
|
|
||||||
<value>Loading quotes</value>
|
|
||||||
</data>
|
|
||||||
<data name="QuoteValid" xml:space="preserve">
|
|
||||||
<value>Quotes awaiting validation</value>
|
|
||||||
</data>
|
|
||||||
<data name="Source" xml:space="preserve">
|
|
||||||
<value>Source :</value>
|
|
||||||
</data>
|
|
||||||
<data name="TitleValid" xml:space="preserve">
|
|
||||||
<value>Unvalidated quotes</value>
|
|
||||||
</data>
|
|
||||||
<data name="User" xml:space="preserve">
|
|
||||||
<value>User :</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,153 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<root>
|
|
||||||
<!--
|
|
||||||
Microsoft ResX Schema
|
|
||||||
|
|
||||||
Version 2.0
|
|
||||||
|
|
||||||
The primary goals of this format is to allow a simple XML format
|
|
||||||
that is mostly human readable. The generation and parsing of the
|
|
||||||
various data types are done through the TypeConverter classes
|
|
||||||
associated with the data types.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
... ado.net/XML headers & schema ...
|
|
||||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
|
||||||
<resheader name="version">2.0</resheader>
|
|
||||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
|
||||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
|
||||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
|
||||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
|
||||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
|
||||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
|
||||||
</data>
|
|
||||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
|
||||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
|
||||||
<comment>This is a comment</comment>
|
|
||||||
</data>
|
|
||||||
|
|
||||||
There are any number of "resheader" rows that contain simple
|
|
||||||
name/value pairs.
|
|
||||||
|
|
||||||
Each data row contains a name, and value. The row also contains a
|
|
||||||
type or mimetype. Type corresponds to a .NET class that support
|
|
||||||
text/value conversion through the TypeConverter architecture.
|
|
||||||
Classes that don't support this are serialized and stored with the
|
|
||||||
mimetype set.
|
|
||||||
|
|
||||||
The mimetype is used for serialized objects, and tells the
|
|
||||||
ResXResourceReader how to depersist the object. This is currently not
|
|
||||||
extensible. For a given mimetype the value must be set accordingly:
|
|
||||||
|
|
||||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
|
||||||
that the ResXResourceWriter will generate, however the reader can
|
|
||||||
read any of the formats listed below.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.binary.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.soap.base64
|
|
||||||
value : The object must be serialized with
|
|
||||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
|
|
||||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
|
||||||
value : The object must be serialized into a byte array
|
|
||||||
: using a System.ComponentModel.TypeConverter
|
|
||||||
: and then encoded with base64 encoding.
|
|
||||||
-->
|
|
||||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
|
||||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
|
||||||
<xsd:element name="root" msdata:IsDataSet="true">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:choice maxOccurs="unbounded">
|
|
||||||
<xsd:element name="metadata">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="assembly">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:attribute name="alias" type="xsd:string" />
|
|
||||||
<xsd:attribute name="name" type="xsd:string" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="data">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
|
||||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
|
||||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
|
||||||
<xsd:attribute ref="xml:space" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="resheader">
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:sequence>
|
|
||||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
|
||||||
</xsd:sequence>
|
|
||||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:choice>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
</xsd:schema>
|
|
||||||
<resheader name="resmimetype">
|
|
||||||
<value>text/microsoft-resx</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="version">
|
|
||||||
<value>2.0</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="reader">
|
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<resheader name="writer">
|
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
|
||||||
</resheader>
|
|
||||||
<data name="Character" xml:space="preserve">
|
|
||||||
<value>Personnage :</value>
|
|
||||||
</data>
|
|
||||||
<data name="Content" xml:space="preserve">
|
|
||||||
<value>Contenu :</value>
|
|
||||||
</data>
|
|
||||||
<data name="Date" xml:space="preserve">
|
|
||||||
<value>Date de la source :</value>
|
|
||||||
</data>
|
|
||||||
<data name="Id" xml:space="preserve">
|
|
||||||
<value>ID :</value>
|
|
||||||
</data>
|
|
||||||
<data name="Image" xml:space="preserve">
|
|
||||||
<value>Image :</value>
|
|
||||||
</data>
|
|
||||||
<data name="Language" xml:space="preserve">
|
|
||||||
<value>Langue :</value>
|
|
||||||
</data>
|
|
||||||
<data name="LoginQuote" xml:space="preserve">
|
|
||||||
<value>Chargement des citations...</value>
|
|
||||||
</data>
|
|
||||||
<data name="QuoteValid" xml:space="preserve">
|
|
||||||
<value>Citations en attente de validation :</value>
|
|
||||||
</data>
|
|
||||||
<data name="Source" xml:space="preserve">
|
|
||||||
<value>Source :</value>
|
|
||||||
</data>
|
|
||||||
<data name="TitleValid" xml:space="preserve">
|
|
||||||
<value>Citations non validées</value>
|
|
||||||
</data>
|
|
||||||
<data name="User" xml:space="preserve">
|
|
||||||
<value>Utilisateur :</value>
|
|
||||||
</data>
|
|
||||||
</root>
|
|
@ -1,26 +0,0 @@
|
|||||||
using WF_WebAdmin.Model;
|
|
||||||
|
|
||||||
namespace WF_WebAdmin.Service
|
|
||||||
{
|
|
||||||
public interface IQuizService
|
|
||||||
{
|
|
||||||
public Task addQuiz(Quiz quiz);
|
|
||||||
|
|
||||||
public Task updateQuiz(Quiz quiz);
|
|
||||||
|
|
||||||
public Task removeQuiz(int id);
|
|
||||||
|
|
||||||
public Task validateQuiz(int id);
|
|
||||||
|
|
||||||
public Task<List<Quiz>> getQuizzes();
|
|
||||||
|
|
||||||
public Task<List<Quiz>> getQuizzesToValidate();
|
|
||||||
|
|
||||||
public Task<Quiz> getQuiz(int id);
|
|
||||||
|
|
||||||
public Task<List<Quiz>> getSommeQuiz(int nb, int page);
|
|
||||||
|
|
||||||
public Task<int> getNbQuiz();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -0,0 +1,25 @@
|
|||||||
|
using WF_WebAdmin.Model;
|
||||||
|
|
||||||
|
namespace WF_WebAdmin.Service;
|
||||||
|
|
||||||
|
public class QuizService
|
||||||
|
{
|
||||||
|
public List<Quiz> GetQuizToConfirm()
|
||||||
|
{
|
||||||
|
var res = new List<Quiz>();
|
||||||
|
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool AddQuiz(Quiz quiz)
|
||||||
|
{
|
||||||
|
var res = false;
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool RemoveQuiz(Quiz quiz)
|
||||||
|
{
|
||||||
|
var res = false;
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
}
|
@ -1,202 +0,0 @@
|
|||||||
using System.Text.Json;
|
|
||||||
using WF_WebAdmin.Model;
|
|
||||||
|
|
||||||
namespace WF_WebAdmin.Service;
|
|
||||||
|
|
||||||
public class QuizServiceStub: IQuizService
|
|
||||||
{
|
|
||||||
private readonly string _jsonFilePath = Path.Combine(Environment.CurrentDirectory, "wwwroot", "fake_data_quiz.json");
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously saves a list of quiz objects to a JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="quizzes">A list of <see cref="Quiz"/> objects to be serialized and saved.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method serializes the list of quizzes to a well-formatted JSON string and saves it
|
|
||||||
/// to a specified file path. The <paramref name="quizzes"/> list is serialized using
|
|
||||||
/// <see cref="JsonSerializer"/> with indented formatting to make the JSON human-readable.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task saveQuizJson(List<Quiz> quizzes)
|
|
||||||
{
|
|
||||||
var json = JsonSerializer.Serialize(quizzes, new JsonSerializerOptions { WriteIndented = true });
|
|
||||||
await File.WriteAllTextAsync(_jsonFilePath, json);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously adds a new quiz to the list of quizzes and saves the updated list to a JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="quiz">The <see cref="Quiz"/> object to be added to the list of quizzes.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves the current list of quizzes using <see cref="getQuizzes"/>, assigns a unique ID to the
|
|
||||||
/// new quiz (based on the highest existing ID), and adds the new quiz to the list. Afterward, the updated list
|
|
||||||
/// of quizzes is saved back to the JSON file using <see cref="saveQuizJson"/>. The new quiz will have an ID
|
|
||||||
/// that's one greater than the highest existing ID or 1 if no quizzes exist.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task addQuiz(Quiz quiz)
|
|
||||||
{
|
|
||||||
var data = await getQuizzes();
|
|
||||||
quiz.Id = data.Count > 0 ? data.Max(p => p.Id) + 1 : 1;
|
|
||||||
data.Add(quiz);
|
|
||||||
await saveQuizJson(data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously updates an existing quiz in the list of quizzes and saves the updated list to a JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="quiz">The <see cref="Quiz"/> object containing the updated data.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves the current list of quizzes using <see cref="getQuizzes"/>, searches for the quiz
|
|
||||||
/// with the same ID as the one provided, and updates its properties with the new values from the given quiz object.
|
|
||||||
/// If the quiz is found, the updated list is saved back to the JSON file using <see cref="saveQuizJson"/>.
|
|
||||||
/// If no quiz with the matching ID is found, no update is performed.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task updateQuiz(Quiz quiz)
|
|
||||||
{
|
|
||||||
var data = await getQuizzes();
|
|
||||||
var existingQuiz = data.FirstOrDefault(q => q.Id == quiz.Id);
|
|
||||||
if (existingQuiz != null)
|
|
||||||
{
|
|
||||||
existingQuiz.Question = quiz.Question;
|
|
||||||
existingQuiz.AnswerA = quiz.AnswerA;
|
|
||||||
existingQuiz.AnswerB = quiz.AnswerB;
|
|
||||||
existingQuiz.AnswerC = quiz.AnswerC;
|
|
||||||
existingQuiz.AnswerD = quiz.AnswerD;
|
|
||||||
existingQuiz.CAnswer = quiz.CAnswer;
|
|
||||||
existingQuiz.IsValid = quiz.IsValid;
|
|
||||||
existingQuiz.UserProposition = quiz.UserProposition;
|
|
||||||
await saveQuizJson(data);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously removes a quiz from the list of quizzes by its ID and saves the updated list to a JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="id">The ID of the <see cref="Quiz"/> to be removed.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves the current list of quizzes using <see cref="getQuizzes"/>, searches for the quiz
|
|
||||||
/// with the specified ID, and removes it from the list if found. After removal, the updated list of quizzes is
|
|
||||||
/// saved back to the JSON file using <see cref="saveQuizJson"/>. If no quiz with the matching ID is found,
|
|
||||||
/// no changes are made.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task removeQuiz(int id)
|
|
||||||
{
|
|
||||||
var data = await getQuizzes();
|
|
||||||
var quiz = data.FirstOrDefault(q => q.Id == id);
|
|
||||||
if (quiz != null)
|
|
||||||
{
|
|
||||||
data.Remove(quiz);
|
|
||||||
await saveQuizJson(data);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public Task validateQuiz(int id)
|
|
||||||
{
|
|
||||||
throw new NotImplementedException();
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously retrieves the list of quizzes from a JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <returns>A task representing the asynchronous operation, with a <see cref="List{Quiz}"/> result containing the quizzes.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method checks if the JSON file exists at the specified file path. If the file does not exist, it logs a
|
|
||||||
/// message to the console and returns an empty list of quizzes. If the file exists, it reads the JSON content,
|
|
||||||
/// deserializes it into a list of <see cref="Quiz"/> objects, and returns the list. If the deserialization is
|
|
||||||
/// unsuccessful or the file is empty, it returns an empty list instead.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task<List<Quiz>> getQuizzes()
|
|
||||||
{
|
|
||||||
if (!File.Exists(_jsonFilePath))
|
|
||||||
{
|
|
||||||
Console.Out.WriteLine($"{_jsonFilePath} not found");
|
|
||||||
return new List<Quiz>();
|
|
||||||
}
|
|
||||||
|
|
||||||
var json = await File.ReadAllTextAsync(_jsonFilePath);
|
|
||||||
return JsonSerializer.Deserialize<List<Quiz>>(json) ?? new List<Quiz>();
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously retrieves the list of quizzes that are marked as invalid and need validation.
|
|
||||||
/// </summary>
|
|
||||||
/// <returns>A task representing the asynchronous operation, with a <see cref="List{Quiz}"/> result containing quizzes that are not valid.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves the full list of quizzes using <see cref="getQuizzes"/> and filters it to return only those
|
|
||||||
/// quizzes where the <see cref="Quiz.IsValid"/> property is set to <c>false</c>. The filtered list is then returned.
|
|
||||||
/// If no quizzes are invalid, an empty list will be returned.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task<List<Quiz>> getQuizzesToValidate()
|
|
||||||
{
|
|
||||||
var quizzes = await getQuizzes();
|
|
||||||
return quizzes.Where(quiz => !quiz.IsValid).ToList();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously retrieves a specific quiz by its ID from the list of quizzes.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="id">The ID of the <see cref="Quiz"/> to retrieve.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation, with a <see cref="Quiz"/> result containing the matching quiz, or <c>null</c> if not found.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves the full list of quizzes using <see cref="getQuizzes"/> and searches for a quiz with
|
|
||||||
/// the specified ID. If a quiz with the matching ID is found, it is returned; otherwise, the method returns <c>null</c>.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task<Quiz> getQuiz(int id)
|
|
||||||
{
|
|
||||||
var data = await getQuizzes();
|
|
||||||
var q = data.FirstOrDefault(p => p.Id == id);
|
|
||||||
if (q == null)
|
|
||||||
{
|
|
||||||
throw new KeyNotFoundException($"Quiz with ID {id} not found.");
|
|
||||||
}
|
|
||||||
return q;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously retrieves a paginated list of quizzes, returning a specific number of quizzes for the given page.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="nb">The number of quizzes to retrieve per page.</param>
|
|
||||||
/// <param name="page">The page number to retrieve, where the first page is 1.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation, with a <see cref="List{Quiz}"/> result containing the quizzes for the specified page.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves the full list of quizzes using <see cref="getQuizzes"/> and returns a subset of quizzes based
|
|
||||||
/// on the specified page number and the number of quizzes per page. If the requested page exceeds the available quizzes,
|
|
||||||
/// the method returns the last page with the remaining quizzes. If the number of quizzes requested per page exceeds the
|
|
||||||
/// total number of quizzes, the method will return all quizzes available.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task<List<Quiz>> getSommeQuiz(int nb, int page)
|
|
||||||
{
|
|
||||||
var data = await getQuizzes();
|
|
||||||
if ((page - 1) * nb + nb > data.Count)
|
|
||||||
{
|
|
||||||
if (nb > data.Count)
|
|
||||||
{
|
|
||||||
return data.GetRange(0, data.Count - 1);
|
|
||||||
}
|
|
||||||
return data.GetRange(data.Count - nb, nb);
|
|
||||||
}
|
|
||||||
return data.GetRange((page - 1) * nb, nb);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously retrieves the total number of quizzes in the list.
|
|
||||||
/// </summary>
|
|
||||||
/// <returns>A task representing the asynchronous operation, with an <see cref="int"/> result containing the total number of quizzes.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves the full list of quizzes using <see cref="getQuizzes"/> and returns the count of quizzes in the list.
|
|
||||||
/// It simply returns the number of quizzes available in the data source.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task<int> getNbQuiz()
|
|
||||||
{
|
|
||||||
var data = await getQuizzes();
|
|
||||||
return data.Count;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,293 +0,0 @@
|
|||||||
using System.Text.Json;
|
|
||||||
using WF_WebAdmin.Model;
|
|
||||||
|
|
||||||
namespace WF_WebAdmin.Service;
|
|
||||||
|
|
||||||
public class QuoteServiceStub : IQuoteService
|
|
||||||
{
|
|
||||||
private readonly string _jsonFilePath = Path.Combine(Environment.CurrentDirectory, "wwwroot", "fake-dataQuote.json");
|
|
||||||
private readonly string _char = Path.Combine(Environment.CurrentDirectory, "wwwroot", "fake-dataCaracter.json");
|
|
||||||
private readonly string _src = Path.Combine(Environment.CurrentDirectory, "wwwroot", "fake-dataSource.json");
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously saves a list of quotes to a JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="quotes">The list of <see cref="Quote"/> objects to be serialized and saved to the file.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation of saving the quotes to the file.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method serializes the provided list of <see cref="Quote"/> objects into JSON format using <see cref="JsonSerializer"/>.
|
|
||||||
/// The serialized JSON is then saved to the file path specified in the <see cref="_jsonFilePath"/> field. The JSON is written
|
|
||||||
/// with indentation for better readability.
|
|
||||||
/// If the file does not already exist, it will be created.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task saveQuoteJson(List<Quote> quotes)
|
|
||||||
{
|
|
||||||
var json = JsonSerializer.Serialize(quotes, new JsonSerializerOptions { WriteIndented = true });
|
|
||||||
await File.WriteAllTextAsync(_jsonFilePath, json);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously adds a new quote to the list and saves it to a JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="quote">The <see cref="Quote"/> object to be added to the list.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation of adding the quote and saving the updated list to the file.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves the current list of quotes using the <see cref="getAllQuote"/> method, assigns a new ID to the
|
|
||||||
/// provided quote (incremented from the maximum existing ID), and adds the quote to the list. After updating the list,
|
|
||||||
/// the method saves the updated list back to the JSON file using <see cref="saveQuoteJson"/>.
|
|
||||||
/// If the list is empty, the new quote is assigned an ID of 1.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task addQuote(Quote quote)
|
|
||||||
{
|
|
||||||
var data = await getAllQuote();
|
|
||||||
quote.Id = data.Count > 0 ? data.Max(p => p.Id) + 1 : 1;
|
|
||||||
data.Add(quote);
|
|
||||||
await saveQuoteJson(data);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously removes a quote from the list and saves the updated list to a JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="quote">The <see cref="Quote"/> object to be removed from the list.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation of removing the quote and saving the updated list to the file.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves the current list of quotes using the <see cref="getAllQuote"/> method.
|
|
||||||
/// It searches for the provided quote by its `Id` and, if found, removes it from the list.
|
|
||||||
/// After removing the quote, the method saves the updated list back to the JSON file using <see cref="saveQuoteJson"/>.
|
|
||||||
/// If the quote is not found in the list, no action is taken.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task removeQuote(Quote quote)
|
|
||||||
{
|
|
||||||
var data = await getAllQuote();
|
|
||||||
var q = data.FirstOrDefault(p => p.Id == quote.Id);
|
|
||||||
if (q != null)
|
|
||||||
{
|
|
||||||
data.Remove(q);
|
|
||||||
await saveQuoteJson(data);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public Task validQuote(Quote? quote)
|
|
||||||
{
|
|
||||||
throw new NotImplementedException();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously updates the details of an existing quote and saves the updated list to a JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="quote">The <see cref="Quote"/> object containing the updated details of the quote.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation of updating the quote and saving the updated list to the file.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves the current list of quotes using the <see cref="getAllQuote"/> method.
|
|
||||||
/// It searches for the quote with the provided `Id` and, if found, updates its properties (e.g., content, character, image path, etc.)
|
|
||||||
/// with the values from the provided `quote` object. After updating the quote, the method saves the updated list back to the JSON file
|
|
||||||
/// using <see cref="saveQuoteJson"/>. If the quote with the specified `Id` is not found, no action is taken.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task updateQuote(Quote? quote)
|
|
||||||
{
|
|
||||||
var data = await getAllQuote();
|
|
||||||
var q = data.FirstOrDefault(p => p.Id == quote.Id);
|
|
||||||
if (q != null)
|
|
||||||
{
|
|
||||||
q.Content = quote.Content;
|
|
||||||
q.Charac = quote.Charac;
|
|
||||||
q.ImgPath = quote.ImgPath;
|
|
||||||
q.TitleSrc = quote.TitleSrc;
|
|
||||||
q.DateSrc = quote.DateSrc;
|
|
||||||
q.Langue = quote.Langue;
|
|
||||||
await saveQuoteJson(data);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously retrieves all quotes from a JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <returns>A task representing the asynchronous operation, with a result of a list of <see cref="Quote"/> objects.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method checks if the JSON file exists at the specified file path (<see cref="_jsonFilePath"/>).
|
|
||||||
/// If the file does not exist, it logs a message and returns an empty list of quotes.
|
|
||||||
/// If the file exists, it reads the JSON content, deserializes it into a list of <see cref="Quote"/> objects,
|
|
||||||
/// and returns that list. If the deserialization results in a null value, an empty list is returned.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task<List<Quote>> getAllQuote()
|
|
||||||
{
|
|
||||||
if (!File.Exists(_jsonFilePath))
|
|
||||||
{
|
|
||||||
Console.Out.WriteLine($"{_jsonFilePath} not found");
|
|
||||||
return new List<Quote>();
|
|
||||||
}
|
|
||||||
|
|
||||||
var json = await File.ReadAllTextAsync(_jsonFilePath);
|
|
||||||
return JsonSerializer.Deserialize<List<Quote>>(json) ?? new List<Quote>();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously retrieves a subset of quotes based on the specified page number and the number of quotes per page.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="nb">The number of quotes to retrieve per page.</param>
|
|
||||||
/// <param name="page">The page number for pagination.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation, with a result of a list of <see cref="Quote"/> objects for the specified page.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves all quotes using the <see cref="getAllQuote"/> method and then calculates the range of quotes
|
|
||||||
/// to be returned based on the provided `nb` (number of quotes per page) and `page` (the page number). It ensures that
|
|
||||||
/// the returned subset does not exceed the total number of quotes available.
|
|
||||||
///
|
|
||||||
/// If the calculated range is larger than the available quotes, it returns a subset of quotes from the end of the list.
|
|
||||||
/// If the requested page number exceeds the total number of pages, the method will return the last available page of quotes.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task<List<Quote>> getSomeQuote(int nb, int page)
|
|
||||||
{
|
|
||||||
var quotes = await getAllQuote();
|
|
||||||
if ((page - 1) * nb + nb > quotes.Count())
|
|
||||||
{
|
|
||||||
if (nb > quotes.Count())
|
|
||||||
{
|
|
||||||
return quotes.GetRange(0, quotes.Count());
|
|
||||||
}
|
|
||||||
return quotes.GetRange(quotes.Count() - nb, nb);
|
|
||||||
}
|
|
||||||
return quotes.GetRange((page - 1) * nb, nb);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously retrieves a single quote based on its ID.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="id">The unique identifier of the <see cref="Quote"/> to be retrieved.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation, with a result of the <see cref="Quote"/> object if found, otherwise null.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves all quotes using the <see cref="getAllQuote"/> method and searches for the quote that matches the provided `id`.
|
|
||||||
/// If a matching quote is found, it returns that quote; otherwise, it returns `null`.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task<Quote?> getOnequote(int id)
|
|
||||||
{
|
|
||||||
var data = await getAllQuote();
|
|
||||||
var q = data.FirstOrDefault(p => p.Id == id);
|
|
||||||
if (q == null)
|
|
||||||
{
|
|
||||||
throw new KeyNotFoundException($"Quote with ID {id} not found.");
|
|
||||||
}
|
|
||||||
return q;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public Task<List<Quote>> reserchQuote(string reserch, List<string> argument)
|
|
||||||
{
|
|
||||||
throw new NotImplementedException();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously retrieves all invalid quotes from the list.
|
|
||||||
/// </summary>
|
|
||||||
/// <returns>A task representing the asynchronous operation, with a result of a list of invalid <see cref="Quote"/> objects.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves all quotes using the <see cref="getAllQuote"/> method and filters them by the `IsValid` property.
|
|
||||||
/// It returns only those quotes where `IsValid` is set to `false`.
|
|
||||||
/// If no invalid quotes are found, an empty list is returned.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task<List<Quote>> getAllQuoteInvalid()
|
|
||||||
{
|
|
||||||
var quotes = await getAllQuote();
|
|
||||||
quotes = quotes.Where(q => !q.IsValid).ToList();
|
|
||||||
return quotes;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously retrieves a subset of invalid quotes based on the specified page number and the number of quotes per page.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="nb">The number of invalid quotes to retrieve per page.</param>
|
|
||||||
/// <param name="page">The page number for pagination.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation, with a result of a list of invalid <see cref="Quote"/> objects for the specified page.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves all invalid quotes using the <see cref="getAllQuoteInvalid"/> method and then calculates the range of invalid quotes
|
|
||||||
/// to be returned based on the provided `nb` (number of quotes per page) and `page` (the page number). It ensures that
|
|
||||||
/// the returned subset does not exceed the total number of invalid quotes available.
|
|
||||||
///
|
|
||||||
/// If the calculated range is larger than the available invalid quotes, it returns a subset of quotes from the end of the list.
|
|
||||||
/// If the requested page number exceeds the total number of pages, the method will return the last available page of invalid quotes.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task<List<Quote>> getSomeQuoteInvalid(int nb, int page)
|
|
||||||
{
|
|
||||||
var quotes = await getAllQuoteInvalid();
|
|
||||||
if ((page - 1) * nb + nb > quotes.Count)
|
|
||||||
{
|
|
||||||
if (nb > quotes.Count)
|
|
||||||
{
|
|
||||||
return quotes.GetRange(0, quotes.Count);
|
|
||||||
}
|
|
||||||
return quotes.GetRange(quotes.Count - nb, nb);
|
|
||||||
}
|
|
||||||
return quotes.GetRange((page - 1) * nb, nb);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously retrieves the total number of quotes.
|
|
||||||
/// </summary>
|
|
||||||
/// <returns>A task representing the asynchronous operation, with a result of the total number of <see cref="Quote"/> objects.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves all quotes using the <see cref="getAllQuote"/> method and returns the count of quotes.
|
|
||||||
/// It provides the total number of quotes currently available in the data source.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task<int> getNbQuote()
|
|
||||||
{
|
|
||||||
var data = await getAllQuote();
|
|
||||||
return data.Count;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously retrieves a list of characters from a JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <returns>A task representing the asynchronous operation, with a result of a list of <see cref="Character"/> objects.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method checks if the JSON file containing character data exists at the specified file path (`_char`).
|
|
||||||
/// If the file does not exist, it logs a message to the console and returns an empty list of characters.
|
|
||||||
/// If the file exists, it reads the JSON content, deserializes it into a list of <see cref="Character"/> objects,
|
|
||||||
/// and returns that list. If the deserialization results in a null value, an empty list is returned.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task<List<Character>> getChar()
|
|
||||||
{
|
|
||||||
if (!File.Exists(_char))
|
|
||||||
{
|
|
||||||
Console.Out.WriteLine($"{_char} not found");
|
|
||||||
return new List<Character>();
|
|
||||||
}
|
|
||||||
|
|
||||||
var json = await File.ReadAllTextAsync(_char);
|
|
||||||
return JsonSerializer.Deserialize<List<Character>>(json) ?? new List<Character>();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously retrieves a list of sources from a JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <returns>A task representing the asynchronous operation, with a result of a list of <see cref="Source"/> objects.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method checks if the JSON file containing source data exists at the specified file path (`_src`).
|
|
||||||
/// If the file does not exist, it logs a message to the console and returns an empty list of sources.
|
|
||||||
/// If the file exists, it reads the JSON content, deserializes it into a list of <see cref="Source"/> objects,
|
|
||||||
/// and returns that list. If the deserialization results in a null value, an empty list is returned.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task<List<Source>> getSrc()
|
|
||||||
{
|
|
||||||
if (!File.Exists(_src))
|
|
||||||
{
|
|
||||||
Console.Out.WriteLine($"{_src} not found");
|
|
||||||
return new List<Source>();
|
|
||||||
}
|
|
||||||
|
|
||||||
var json = await File.ReadAllTextAsync(_src);
|
|
||||||
return JsonSerializer.Deserialize<List<Source>>(json) ?? new List<Source>();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,193 +0,0 @@
|
|||||||
using System.Text.Json;
|
|
||||||
using WF_WebAdmin.Model;
|
|
||||||
|
|
||||||
namespace WF_WebAdmin.Service;
|
|
||||||
|
|
||||||
public class UserServiceStub : IUserService
|
|
||||||
{
|
|
||||||
private readonly string _jsonFilePath = Path.Combine(Environment.CurrentDirectory, "wwwroot", "fake_data_users.json");
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously saves a list of users to a JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="users">The list of <see cref="User"/> objects to be saved to the file.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method serializes the provided list of <see cref="User"/> objects into a JSON format using the `JsonSerializer`.
|
|
||||||
/// It then writes the serialized JSON string to the file specified by the `_jsonFilePath`. The JSON is written with indentation for readability.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task saveUsersJson(List<User> users)
|
|
||||||
{
|
|
||||||
var json = JsonSerializer.Serialize(users, new JsonSerializerOptions { WriteIndented = true });
|
|
||||||
await File.WriteAllTextAsync(_jsonFilePath, json);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously removes a user from the list of users and saves the updated list to a JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="user">The <see cref="User"/> object to be removed from the list.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves the list of all users using the <see cref="getAllUser"/> method,
|
|
||||||
/// then searches for the specified user by their `Id`. If a matching user is found,
|
|
||||||
/// they are removed from the list, and the updated list is saved back to the JSON file using the <see cref="saveUsersJson"/> method.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task removeUser(User user)
|
|
||||||
{
|
|
||||||
var data = await getAllUser();
|
|
||||||
var u = data.FirstOrDefault(p => p.Id == user.Id);
|
|
||||||
if (u != null)
|
|
||||||
{
|
|
||||||
data.Remove(u);
|
|
||||||
await saveUsersJson(data);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously updates the role of a user, setting the user as an administrator.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="user">The <see cref="User"/> object whose role is to be updated.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation of updating the user's role.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method updates the `IsAdmin` property of the specified user to `true`, indicating that the user is an administrator.
|
|
||||||
/// It then calls the <see cref="updateUser"/> method to persist the updated user information.
|
|
||||||
/// </remarks>
|
|
||||||
public Task updateRole(User? user)
|
|
||||||
{
|
|
||||||
user.IsAdmin = true;
|
|
||||||
return updateUser(user);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously downgrades the role of a user, removing their administrator privileges.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="user">The <see cref="User"/> object whose role is to be downgraded.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation of downgrading the user's role.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method updates the `IsAdmin` property of the specified user to `false`, removing their administrator status.
|
|
||||||
/// It then calls the <see cref="updateUser"/> method to persist the updated user information.
|
|
||||||
/// </remarks>
|
|
||||||
public Task downgradeRole(User? user)
|
|
||||||
{
|
|
||||||
user.IsAdmin = false;
|
|
||||||
return updateUser(user);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously retrieves a list of all users from a JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <returns>A task representing the asynchronous operation, with a result of a list of <see cref="User"/> objects.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method checks if the JSON file containing user data exists at the specified file path (`_jsonFilePath`).
|
|
||||||
/// If the file does not exist, it logs a message to the console and returns an empty list of users.
|
|
||||||
/// If the file exists, it reads the JSON content, deserializes it into a list of <see cref="User"/> objects,
|
|
||||||
/// and returns that list. If the deserialization results in a null value, an empty list is returned.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task<List<User>> getAllUser()
|
|
||||||
{
|
|
||||||
if (!File.Exists(_jsonFilePath))
|
|
||||||
{
|
|
||||||
Console.Out.WriteLine($"{_jsonFilePath} not found");
|
|
||||||
return new List<User>();
|
|
||||||
}
|
|
||||||
|
|
||||||
var json = await File.ReadAllTextAsync(_jsonFilePath);
|
|
||||||
return JsonSerializer.Deserialize<List<User>>(json) ?? new List<User>();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously retrieves a paginated list of users from a JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="nb">The number of users to retrieve per page.</param>
|
|
||||||
/// <param name="page">The page number for the data to retrieve.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation, with a result of a list of <see cref="User"/> objects.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves all users using the <see cref="getAllUser"/> method, then calculates the range of users to return
|
|
||||||
/// based on the specified page number and the number of users per page (`nb`).
|
|
||||||
/// It returns the corresponding subset of users for the given page. If the page exceeds the available number of users,
|
|
||||||
/// it returns the last `nb` users available.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task<List<User>?> getSomeUser(int nb, int page)
|
|
||||||
{
|
|
||||||
var users = await getAllUser();
|
|
||||||
if ((page - 1) * nb + nb > users.Count)
|
|
||||||
{
|
|
||||||
return users.GetRange(users.Count - nb, nb);
|
|
||||||
}
|
|
||||||
return users.GetRange((page - 1) * nb, nb);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously retrieves a single user by their ID from the JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="id">The ID of the user to retrieve.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation, with a result of the <see cref="User"/> object if found, otherwise null.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves all users using the <see cref="getAllUser"/> method,
|
|
||||||
/// then searches for the user with the specified `id`. If a user with the given ID is found,
|
|
||||||
/// the user is returned. Otherwise, it returns null.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task<User> getOneUser(int id)
|
|
||||||
{
|
|
||||||
var data = await getAllUser();
|
|
||||||
var user = data.FirstOrDefault(p => p.Id == id);
|
|
||||||
|
|
||||||
if (user == null)
|
|
||||||
{
|
|
||||||
throw new KeyNotFoundException($"User with ID {id} not found.");
|
|
||||||
}
|
|
||||||
|
|
||||||
return user;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public Task<List<User>> reserchUsers(string reserch, List<string> args)
|
|
||||||
{
|
|
||||||
throw new NotImplementedException();
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously retrieves the total number of users from the JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <returns>A task representing the asynchronous operation, with a result of the total number of users.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves all users using the <see cref="getAllUser"/> method and returns the count of users in the list.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task<int> getNbUser()
|
|
||||||
{
|
|
||||||
var data = await getAllUser();
|
|
||||||
return data.Count;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Asynchronously updates the details of a user in the JSON file.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="user">The <see cref="User"/> object containing the updated user details.</param>
|
|
||||||
/// <returns>A task representing the asynchronous operation of updating the user.</returns>
|
|
||||||
/// <remarks>
|
|
||||||
/// This method retrieves all users using the <see cref="getAllUser"/> method, then searches for the user with the specified ID.
|
|
||||||
/// If a user with the given ID is found, it updates their details (Name, Email, Image, IsAdmin) based on the provided `user` object.
|
|
||||||
/// After updating the user, the modified list of users is saved back to the JSON file using the <see cref="saveUsersJson"/> method.
|
|
||||||
/// </remarks>
|
|
||||||
public async Task updateUser(User? user)
|
|
||||||
{
|
|
||||||
var data = await getAllUser();
|
|
||||||
var person = data.FirstOrDefault(p => p.Id == user.Id);
|
|
||||||
if (person != null)
|
|
||||||
{
|
|
||||||
person.Name = user.Name;
|
|
||||||
person.Email = user.Email;
|
|
||||||
person.Image = user.Image;
|
|
||||||
person.IsAdmin = user.IsAdmin;
|
|
||||||
await saveUsersJson(data);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,54 +0,0 @@
|
|||||||
@using System.Globalization
|
|
||||||
@inject NavigationManager NavigationManager
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<label>
|
|
||||||
Select your locale:
|
|
||||||
<select @bind="Culture">
|
|
||||||
@foreach (var culture in supportedCultures)
|
|
||||||
{
|
|
||||||
<option value="@culture">@culture.DisplayName</option>
|
|
||||||
}
|
|
||||||
</select>
|
|
||||||
</label>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
@code
|
|
||||||
{
|
|
||||||
private CultureInfo[] supportedCultures = new[]
|
|
||||||
{
|
|
||||||
new CultureInfo("en-US"),
|
|
||||||
new CultureInfo("fr-FR")
|
|
||||||
};
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Gets or sets the current culture for the application, triggering a navigation to set the culture cookie when changed.
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// The getter retrieves the current culture of the application using <see cref="CultureInfo.CurrentCulture"/>.
|
|
||||||
/// The setter checks if the current UI culture matches the provided value. If they are the same, no action is taken.
|
|
||||||
/// If the cultures differ, it constructs a query string that includes the new culture and a redirect URI,
|
|
||||||
/// and then navigates to a "/Culture/SetCulture" endpoint to set the culture cookie.
|
|
||||||
/// The user is redirected to the same page with the new culture applied after the redirect.
|
|
||||||
/// </remarks>
|
|
||||||
private CultureInfo Culture
|
|
||||||
{
|
|
||||||
get => CultureInfo.CurrentCulture;
|
|
||||||
set
|
|
||||||
{
|
|
||||||
if (CultureInfo.CurrentUICulture == value)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
var culture = value.Name.ToLower(CultureInfo.InvariantCulture);
|
|
||||||
|
|
||||||
var uri = new Uri(this.NavigationManager.Uri).GetComponents(UriComponents.PathAndQuery, UriFormat.Unescaped);
|
|
||||||
var query = $"?culture={Uri.EscapeDataString(culture)}&" + $"redirectUri={Uri.EscapeDataString(uri)}";
|
|
||||||
|
|
||||||
// Redirect the user to the culture controller to set the cookie
|
|
||||||
this.NavigationManager.NavigateTo("/Culture/SetCulture" + query, forceLoad: true);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
Before Width: | Height: | Size: 13 KiB |
@ -1,5 +0,0 @@
|
|||||||
{
|
|
||||||
"version": "3.0",
|
|
||||||
"defaultProvider": "cdnjs",
|
|
||||||
"libraries": []
|
|
||||||
}
|
|
Before Width: | Height: | Size: 9.9 KiB |
@ -1,8 +0,0 @@
|
|||||||
[
|
|
||||||
{
|
|
||||||
"users": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"users": 4
|
|
||||||
}
|
|
||||||
]
|
|
@ -1,702 +0,0 @@
|
|||||||
[
|
|
||||||
{
|
|
||||||
"id_comment": 1,
|
|
||||||
"quote": 19,
|
|
||||||
"users": 29,
|
|
||||||
"dateC": "2024-01-22",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 2,
|
|
||||||
"quote": 6,
|
|
||||||
"users": 18,
|
|
||||||
"dateC": "2024-01-20",
|
|
||||||
"comment": "Paroles sages."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 3,
|
|
||||||
"quote": 2,
|
|
||||||
"users": 8,
|
|
||||||
"dateC": "2024-01-25",
|
|
||||||
"comment": "Citation puissante."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 4,
|
|
||||||
"quote": 11,
|
|
||||||
"users": 31,
|
|
||||||
"dateC": "2024-01-01",
|
|
||||||
"comment": "Très poétique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 5,
|
|
||||||
"quote": 8,
|
|
||||||
"users": 6,
|
|
||||||
"dateC": "2024-02-06",
|
|
||||||
"comment": "Belle pensée."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 6,
|
|
||||||
"quote": 13,
|
|
||||||
"users": 37,
|
|
||||||
"dateC": "2024-02-01",
|
|
||||||
"comment": "Citation exceptionnelle."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 7,
|
|
||||||
"quote": 2,
|
|
||||||
"users": 33,
|
|
||||||
"dateC": "2024-02-11",
|
|
||||||
"comment": "Belle pensée."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 8,
|
|
||||||
"quote": 7,
|
|
||||||
"users": 28,
|
|
||||||
"dateC": "2024-02-07",
|
|
||||||
"comment": "Très émouvant."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 9,
|
|
||||||
"quote": 1,
|
|
||||||
"users": 48,
|
|
||||||
"dateC": "2024-03-05",
|
|
||||||
"comment": "Très motivant."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 10,
|
|
||||||
"quote": 16,
|
|
||||||
"users": 14,
|
|
||||||
"dateC": "2024-03-13",
|
|
||||||
"comment": "Très motivant."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 11,
|
|
||||||
"quote": 10,
|
|
||||||
"users": 9,
|
|
||||||
"dateC": "2024-03-13",
|
|
||||||
"comment": "Très touchant."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 12,
|
|
||||||
"quote": 4,
|
|
||||||
"users": 44,
|
|
||||||
"dateC": "2024-03-01",
|
|
||||||
"comment": "Très touchant."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 13,
|
|
||||||
"quote": 9,
|
|
||||||
"users": 8,
|
|
||||||
"dateC": "2024-04-04",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 14,
|
|
||||||
"quote": 3,
|
|
||||||
"users": 49,
|
|
||||||
"dateC": "2024-04-18",
|
|
||||||
"comment": "Très émouvant."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 15,
|
|
||||||
"quote": 19,
|
|
||||||
"users": 3,
|
|
||||||
"dateC": "2024-04-07",
|
|
||||||
"comment": "Très motivant."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 16,
|
|
||||||
"quote": 4,
|
|
||||||
"users": 9,
|
|
||||||
"dateC": "2024-04-25",
|
|
||||||
"comment": "Très motivant."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 17,
|
|
||||||
"quote": 17,
|
|
||||||
"users": 40,
|
|
||||||
"dateC": "2024-05-04",
|
|
||||||
"comment": "Très émouvant."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 18,
|
|
||||||
"quote": 6,
|
|
||||||
"users": 21,
|
|
||||||
"dateC": "2024-05-11",
|
|
||||||
"comment": "Très poétique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 19,
|
|
||||||
"quote": 16,
|
|
||||||
"users": 3,
|
|
||||||
"dateC": "2024-05-08",
|
|
||||||
"comment": "Citation exceptionnelle."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 20,
|
|
||||||
"quote": 1,
|
|
||||||
"users": 17,
|
|
||||||
"dateC": "2024-05-04",
|
|
||||||
"comment": "Très touchant."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 21,
|
|
||||||
"quote": 14,
|
|
||||||
"users": 34,
|
|
||||||
"dateC": "2024-06-01",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 22,
|
|
||||||
"quote": 12,
|
|
||||||
"users": 23,
|
|
||||||
"dateC": "2024-06-03",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 23,
|
|
||||||
"quote": 11,
|
|
||||||
"users": 47,
|
|
||||||
"dateC": "2024-06-05",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 24,
|
|
||||||
"quote": 16,
|
|
||||||
"users": 28,
|
|
||||||
"dateC": "2024-06-07",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 25,
|
|
||||||
"quote": 19,
|
|
||||||
"users": 39,
|
|
||||||
"dateC": "2024-07-01",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 26,
|
|
||||||
"quote": 13,
|
|
||||||
"users": 31,
|
|
||||||
"dateC": "2024-07-02",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 27,
|
|
||||||
"quote": 1,
|
|
||||||
"users": 33,
|
|
||||||
"dateC": "2024-07-03",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 28,
|
|
||||||
"quote": 17,
|
|
||||||
"users": 20,
|
|
||||||
"dateC": "2024-07-04",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 29,
|
|
||||||
"quote": 13,
|
|
||||||
"users": 29,
|
|
||||||
"dateC": "2024-08-01",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 30,
|
|
||||||
"quote": 11,
|
|
||||||
"users": 27,
|
|
||||||
"dateC": "2024-08-02",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 31,
|
|
||||||
"quote": 18,
|
|
||||||
"users": 35,
|
|
||||||
"dateC": "2024-08-03",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 32,
|
|
||||||
"quote": 13,
|
|
||||||
"users": 32,
|
|
||||||
"dateC": "2024-08-04",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 33,
|
|
||||||
"quote": 13,
|
|
||||||
"users": 3,
|
|
||||||
"dateC": "2024-09-01",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 34,
|
|
||||||
"quote": 15,
|
|
||||||
"users": 43,
|
|
||||||
"dateC": "2024-09-02",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 35,
|
|
||||||
"quote": 11,
|
|
||||||
"users": 15,
|
|
||||||
"dateC": "2024-09-03",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 36,
|
|
||||||
"quote": 10,
|
|
||||||
"users": 22,
|
|
||||||
"dateC": "2024-09-04",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 37,
|
|
||||||
"quote": 17,
|
|
||||||
"users": 23,
|
|
||||||
"dateC": "2024-10-01",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 38,
|
|
||||||
"quote": 14,
|
|
||||||
"users": 40,
|
|
||||||
"dateC": "2024-10-02",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 39,
|
|
||||||
"quote": 15,
|
|
||||||
"users": 41,
|
|
||||||
"dateC": "2024-10-03",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 40,
|
|
||||||
"quote": 16,
|
|
||||||
"users": 42,
|
|
||||||
"dateC": "2024-10-04",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 41,
|
|
||||||
"quote": 10,
|
|
||||||
"users": 39,
|
|
||||||
"dateC": "2024-11-01",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 42,
|
|
||||||
"quote": 17,
|
|
||||||
"users": 43,
|
|
||||||
"dateC": "2024-11-02",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 43,
|
|
||||||
"quote": 13,
|
|
||||||
"users": 27,
|
|
||||||
"dateC": "2024-11-03",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 44,
|
|
||||||
"quote": 12,
|
|
||||||
"users": 29,
|
|
||||||
"dateC": "2024-11-04",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 45,
|
|
||||||
"quote": 11,
|
|
||||||
"users": 32,
|
|
||||||
"dateC": "2024-12-01",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 46,
|
|
||||||
"quote": 15,
|
|
||||||
"users": 31,
|
|
||||||
"dateC": "2024-12-02",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 47,
|
|
||||||
"quote": 18,
|
|
||||||
"users": 33,
|
|
||||||
"dateC": "2024-12-03",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 48,
|
|
||||||
"quote": 14,
|
|
||||||
"users": 34,
|
|
||||||
"dateC": "2024-12-04",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 49,
|
|
||||||
"quote": 19,
|
|
||||||
"users": 35,
|
|
||||||
"dateC": "2024-12-05",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 50,
|
|
||||||
"quote": 17,
|
|
||||||
"users": 36,
|
|
||||||
"dateC": "2024-12-06",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 51,
|
|
||||||
"quote": 16,
|
|
||||||
"users": 37,
|
|
||||||
"dateC": "2024-12-07",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 52,
|
|
||||||
"quote": 13,
|
|
||||||
"users": 38,
|
|
||||||
"dateC": "2024-12-08",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 53,
|
|
||||||
"quote": 12,
|
|
||||||
"users": 39,
|
|
||||||
"dateC": "2024-12-09",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 54,
|
|
||||||
"quote": 11,
|
|
||||||
"users": 40,
|
|
||||||
"dateC": "2024-12-10",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 55,
|
|
||||||
"quote": 10,
|
|
||||||
"users": 41,
|
|
||||||
"dateC": "2024-12-11",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 56,
|
|
||||||
"quote": 9,
|
|
||||||
"users": 42,
|
|
||||||
"dateC": "2024-12-12",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 57,
|
|
||||||
"quote": 8,
|
|
||||||
"users": 43,
|
|
||||||
"dateC": "2024-12-13",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 58,
|
|
||||||
"quote": 7,
|
|
||||||
"users": 44,
|
|
||||||
"dateC": "2024-12-14",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 59,
|
|
||||||
"quote": 6,
|
|
||||||
"users": 45,
|
|
||||||
"dateC": "2024-12-15",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 60,
|
|
||||||
"quote": 5,
|
|
||||||
"users": 46,
|
|
||||||
"dateC": "2024-12-16",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 61,
|
|
||||||
"quote": 4,
|
|
||||||
"users": 47,
|
|
||||||
"dateC": "2024-12-17",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 62,
|
|
||||||
"quote": 3,
|
|
||||||
"users": 48,
|
|
||||||
"dateC": "2024-12-18",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 63,
|
|
||||||
"quote": 2,
|
|
||||||
"users": 49,
|
|
||||||
"dateC": "2024-12-19",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 64,
|
|
||||||
"quote": 1,
|
|
||||||
"users": 50,
|
|
||||||
"dateC": "2024-12-20",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 65,
|
|
||||||
"quote": 19,
|
|
||||||
"users": 1,
|
|
||||||
"dateC": "2024-12-21",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 66,
|
|
||||||
"quote": 18,
|
|
||||||
"users": 2,
|
|
||||||
"dateC": "2024-12-22",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 67,
|
|
||||||
"quote": 17,
|
|
||||||
"users": 3,
|
|
||||||
"dateC": "2024-12-23",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 68,
|
|
||||||
"quote": 16,
|
|
||||||
"users": 4,
|
|
||||||
"dateC": "2024-12-24",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 69,
|
|
||||||
"quote": 15,
|
|
||||||
"users": 5,
|
|
||||||
"dateC": "2024-12-25",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 70,
|
|
||||||
"quote": 14,
|
|
||||||
"users": 6,
|
|
||||||
"dateC": "2024-12-26",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 71,
|
|
||||||
"quote": 13,
|
|
||||||
"users": 7,
|
|
||||||
"dateC": "2024-12-27",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 72,
|
|
||||||
"quote": 12,
|
|
||||||
"users": 8,
|
|
||||||
"dateC": "2024-12-28",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 73,
|
|
||||||
"quote": 11,
|
|
||||||
"users": 9,
|
|
||||||
"dateC": "2024-01-01",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 74,
|
|
||||||
"quote": 10,
|
|
||||||
"users": 10,
|
|
||||||
"dateC": "2024-01-02",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 75,
|
|
||||||
"quote": 9,
|
|
||||||
"users": 11,
|
|
||||||
"dateC": "2024-01-03",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 76,
|
|
||||||
"quote": 8,
|
|
||||||
"users": 12,
|
|
||||||
"dateC": "2024-01-04",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 77,
|
|
||||||
"quote": 7,
|
|
||||||
"users": 13,
|
|
||||||
"dateC": "2024-01-05",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 78,
|
|
||||||
"quote": 6,
|
|
||||||
"users": 14,
|
|
||||||
"dateC": "2024-01-06",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 79,
|
|
||||||
"quote": 5,
|
|
||||||
"users": 15,
|
|
||||||
"dateC": "2024-01-07",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 80,
|
|
||||||
"quote": 4,
|
|
||||||
"users": 16,
|
|
||||||
"dateC": "2024-01-08",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 81,
|
|
||||||
"quote": 3,
|
|
||||||
"users": 17,
|
|
||||||
"dateC": "2024-01-09",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 82,
|
|
||||||
"quote": 2,
|
|
||||||
"users": 18,
|
|
||||||
"dateC": "2024-01-10",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 83,
|
|
||||||
"quote": 15,
|
|
||||||
"users": 33,
|
|
||||||
"dateC": "2024-06-24",
|
|
||||||
"comment": "Citation exceptionnelle."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 84,
|
|
||||||
"quote": 19,
|
|
||||||
"users": 15,
|
|
||||||
"dateC": "2024-03-11",
|
|
||||||
"comment": "Citation merveilleuse."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 85,
|
|
||||||
"quote": 4,
|
|
||||||
"users": 16,
|
|
||||||
"dateC": "2024-01-19",
|
|
||||||
"comment": "Citation merveilleuse."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 86,
|
|
||||||
"quote": 10,
|
|
||||||
"users": 20,
|
|
||||||
"dateC": "2024-01-15",
|
|
||||||
"comment": "Très émouvant."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 87,
|
|
||||||
"quote": 3,
|
|
||||||
"users": 33,
|
|
||||||
"dateC": "2024-12-17",
|
|
||||||
"comment": "Très touchant."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 88,
|
|
||||||
"quote": 5,
|
|
||||||
"users": 8,
|
|
||||||
"dateC": "2024-07-01",
|
|
||||||
"comment": "Citation exceptionnelle."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 89,
|
|
||||||
"quote": 13,
|
|
||||||
"users": 28,
|
|
||||||
"dateC": "2024-02-20",
|
|
||||||
"comment": "Citation merveilleuse."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 90,
|
|
||||||
"quote": 18,
|
|
||||||
"users": 24,
|
|
||||||
"dateC": "2024-09-16",
|
|
||||||
"comment": "Citation merveilleuse."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 91,
|
|
||||||
"quote": 17,
|
|
||||||
"users": 43,
|
|
||||||
"dateC": "2024-06-20",
|
|
||||||
"comment": "Très réfléchi."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 92,
|
|
||||||
"quote": 13,
|
|
||||||
"users": 36,
|
|
||||||
"dateC": "2024-11-08",
|
|
||||||
"comment": "Super citation !"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 93,
|
|
||||||
"quote": 19,
|
|
||||||
"users": 41,
|
|
||||||
"dateC": "2024-01-20",
|
|
||||||
"comment": "Super citation !"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 94,
|
|
||||||
"quote": 13,
|
|
||||||
"users": 10,
|
|
||||||
"dateC": "2024-05-03",
|
|
||||||
"comment": "Citation magnifique."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 95,
|
|
||||||
"quote": 4,
|
|
||||||
"users": 49,
|
|
||||||
"dateC": "2024-07-01",
|
|
||||||
"comment": "Citation profonde."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 96,
|
|
||||||
"quote": 16,
|
|
||||||
"users": 21,
|
|
||||||
"dateC": "2024-11-08",
|
|
||||||
"comment": "Citation merveilleuse."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 97,
|
|
||||||
"quote": 14,
|
|
||||||
"users": 27,
|
|
||||||
"dateC": "2024-11-20",
|
|
||||||
"comment": "Citation puissante."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 98,
|
|
||||||
"quote": 4,
|
|
||||||
"users": 39,
|
|
||||||
"dateC": "2024-12-11",
|
|
||||||
"comment": "Très motivant."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 99,
|
|
||||||
"quote": 9,
|
|
||||||
"users": 26,
|
|
||||||
"dateC": "2024-09-27",
|
|
||||||
"comment": "Paroles sages."
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_comment": 100,
|
|
||||||
"quote": 3,
|
|
||||||
"users": 42,
|
|
||||||
"dateC": "2024-02-12",
|
|
||||||
"comment": "Citation merveilleuse."
|
|
||||||
}
|
|
||||||
]
|
|
@ -1,14 +0,0 @@
|
|||||||
[
|
|
||||||
{
|
|
||||||
"Id": 11,
|
|
||||||
"Content": "Vous ne pouvez pas vivre sans causer de dommages \u00E0 quelqu\u0027un d\u0027autre.",
|
|
||||||
"Like": 110,
|
|
||||||
"Langue": "fr",
|
|
||||||
"Charac": "test",
|
|
||||||
"ImgPath": "http://thematrix.com",
|
|
||||||
"TitleSrc": "The Matrix",
|
|
||||||
"DateSrc": "2025-01-21T00:00:00",
|
|
||||||
"UserProposition": "user11",
|
|
||||||
"IsValid": false
|
|
||||||
}
|
|
||||||
]
|
|
@ -1,6 +0,0 @@
|
|||||||
[
|
|
||||||
{
|
|
||||||
"users":1,
|
|
||||||
"quote":1
|
|
||||||
}
|
|
||||||
]
|
|
@ -1,82 +0,0 @@
|
|||||||
[
|
|
||||||
{
|
|
||||||
"id_img": 1,
|
|
||||||
"imgPath": "https://tse4.mm.bing.net/th/id/OIP.fc5TQflh0cbxB1GUeOdk6gHaK8?w=123&h=180&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 2,
|
|
||||||
"imgPath": "https://tse2.mm.bing.net/th/id/OIP.MMpXBB5RDRYQm05FJmevGAHaKl?w=137&h=195&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 3,
|
|
||||||
"imgPath": "https://tse1.mm.bing.net/th/id/OIP._uHLsNbgnf1m1vK3ZWE2UAHaEo?w=217&h=180&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 4,
|
|
||||||
"imgPath": "https://tse4.mm.bing.net/th/id/OIP.QzDh_d2T5aADiDJ7uMFU6gHaHa?w=157&h=180&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 5,
|
|
||||||
"imgPath": "https://tse2.mm.bing.net/th/id/OIP.CthWIxuLm0a8THOguTDB_AAAAA?w=157&h=207&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 6,
|
|
||||||
"imgPath": "https://tse4.mm.bing.net/th/id/OIP.XNQPKwc1OUfvnSO9MsxDYgHaE7?w=202&h=180&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 7,
|
|
||||||
"imgPath": "https://tse1.mm.bing.net/th/id/OIP.luN_zVQJt2Kyf7H_kSrPyQHaJD?w=115&h=180&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 8,
|
|
||||||
"imgPath": "https://tse1.mm.bing.net/th/id/OIP.GPIbva8dEP6Kllx-sj5ysAHaK-?w=115&h=180&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 9,
|
|
||||||
"imgPath": "https://tse4.mm.bing.net/th/id/OIP.loqNhw71Vk_C-TiyWQJoKAHaKK?w=95&h=180&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 10,
|
|
||||||
"imgPath": "https://tse2.mm.bing.net/th/id/OIP._OiJHgI7cal4cWNHcCE9zAHaM2?w=115&h=180&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 11,
|
|
||||||
"imgPath": "https://tse2.mm.bing.net/th/id/OIP.B9RbuWnpmV-7fI8v-H0G8gHaEK?w=290&h=180&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 12,
|
|
||||||
"imgPath": "https://tse2.mm.bing.net/th/id/OIP.RrJkua2jY_o24eUG7wmk8QHaE-?w=232&h=180&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 13,
|
|
||||||
"imgPath": "https://tse3.mm.bing.net/th/id/OIP.-1Ds-2D5GPiu9uejDdmgNgHaH3?w=124&h=180&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 14,
|
|
||||||
"imgPath": "https://tse3.mm.bing.net/th/id/OIP.BeQYJEP1pQKzHDLGhTLBtgHaFj?w=243&h=182&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 15,
|
|
||||||
"imgPath": "https://tse3.mm.bing.net/th/id/OIP.lDzxwo1weGaA-hRMfV6bYwHaGp?w=194&h=174&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 16,
|
|
||||||
"imgPath": "https://tse2.mm.bing.net/th/id/OIP.3vXkEUJ9J8s-GsnBC6I3KAHaF0?w=185&h=180&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 17,
|
|
||||||
"imgPath": "https://tse4.mm.bing.net/th/id/OIP.omU-pPTNgHJEiTKJUpB1MAHaIw?w=114&h=180&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 18,
|
|
||||||
"imgPath": "https://tse2.mm.bing.net/th/id/OIP.Qoh2doQIigxyiOBuhgRx9gHaM7?w=115&h=186&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 19,
|
|
||||||
"imgPath": "https://tse3.mm.bing.net/th/id/OIP.hyDe8SvEEvDhmKfsQBqWEwHaJ8?w=194&h=261&c=7&r=0&o=5&pid=1.7"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id_img": 20,
|
|
||||||
"imgPath": "https://tse3.mm.bing.net/th/id/OIP.S4q6m2na1Rxkc7xZ1lcfKQHaJe?w=135&h=180&c=7&r=0&o=5&pid=1.7"
|
|
||||||
}
|
|
||||||
]
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue