fix : conflit et acces a ajouter

Multiplayer_Php
Maxence GUITARD 1 year ago
commit a602557620

@ -19,14 +19,15 @@ steps:
commands:
- cd Blazor/
- dotnet restore Blazor.sln
- dotnet test Blazor.sln --no-restore
- dotnet sonarscanner begin /k:MuscuMaths /d:sonar.host.url=$${PLUGIN_SONAR_HOST} /d:sonar.login=$${PLUGIN_SONAR_TOKEN}
- dotnet test Blazor.sln --logger trx --no-restore /p:CollectCoverage=true /p:CoverletOutputFormat=cobertura --collect "XPlat Code Coverage"
- reportgenerator -reports:"/coverage.cobertura.xml" -reporttypes:SonarQube -targetdir:"coveragereport" -verbosity:Verbose
depends_on: [build]
- name: code-analysis
image: hub.codefirst.iut.uca.fr/marc.chevaldonne/codefirst-dronesonarplugin-dotnet7
commands:
- echo $$PLUGIN_SONAR_TOKEN
- echo $$PLUGIN_SONAR_HOST
- cd Blazor/
- dotnet restore Blazor.sln
- dotnet sonarscanner begin /k:MuscuMaths /d:sonar.host.url=$${PLUGIN_SONAR_HOST} /d:sonar.login=$${PLUGIN_SONAR_TOKEN}

@ -15,10 +15,10 @@ namespace Blazor.Components
public Question question = new();
private List<Answer> answers = new();
public List<Question> questions;
public List<Question> questions = new();
[Inject]
public HttpClient Http { get; set; }
public required HttpClient Http { get; set; }
protected override async Task OnInitializedAsync()
{

@ -9,22 +9,14 @@ namespace Blazor.Modals
public partial class DeleteConfirmation
{
[CascadingParameter]
public BlazoredModalInstance ModalInstance { get; set; }
public required BlazoredModalInstance ModalInstance { get; set; }
[Inject]
public IDataService DataService { get; set; }
public required IDataService DataService { get; set; }
[Parameter]
public int Id { get; set; }
//private Chapter chapter = new Chapter();
//protected override async Task OnInitializedAsync()
// // Get the chapter
// chapter = await DataService.GetById(Id);
//}
void ConfirmDelete()
{
ModalInstance.CloseAsync(ModalResult.Ok(true));

@ -8,8 +8,8 @@ namespace Blazor.Models;
public class AdministratorModel
{
public int Id { get; set; }
public string Username { get; set; }
public string HashedPassword { get; set; }
public required string Username { get; set; }
public required string HashedPassword { get; set; }
public void HashPassword(string password)
{

@ -4,8 +4,8 @@ public class AnswerModel
{
public int Id { get; set; }
public string Content { get; set; }
public int IdQuestion { get; set; }
public string? Content { get; set; }
public int? IdQuestion { get; set; }
public AnswerModel(int id)
{
Id = id;

@ -8,6 +8,6 @@ namespace Blazor.Models
[Required(ErrorMessage = "Name is required")]
[StringLength(50, ErrorMessage = "Name is too long.")]
public string Name { get; set; }
public required string Name { get; set; }
}
}

@ -7,8 +7,8 @@ namespace Blazor.Models;
public class PlayerModel
{
public int Id { get; set; }
public string Nickname { get; set; }
public string HashedPassword { get; set; }
public required string Nickname { get; set; }
public required string HashedPassword { get; set; }
public void HashPassword(string password)
{

@ -3,13 +3,12 @@
public class QuestionModel
{
public int Id { get; set; }
public string Content { get; set; }
public required string Content { get; set; }
public int IdChapter { get; set; }
public int? IdAnswerGood { get; set; }
public int IdAnswerGood { get; set; }
public int Difficulty { get; set; }
public int NbFails { get; set; }
public void addFails(int nb) { NbFails += nb; }
public void removeFails(int nb) { NbFails -= nb; }
}

@ -2,7 +2,6 @@
@using Blazor.Models
<h3>AddAdministrator</h3>
<EditForm Model="@administratorModel" OnValidSubmit="@HandleValidSubmit">
<DataAnnotationsValidator />
<ValidationSummary />

@ -6,19 +6,21 @@ namespace Blazor.Pages.Admins
{
public partial class AddAdministrator
{
private AdministratorModel administratorModel = new();
private AdministratorModel? administratorModel;
[Inject]
public IDataService DataService { get; set; }
public required IDataService DataService { get; set; }
[Inject]
public NavigationManager NavigationManager { get; set; }
public required NavigationManager NavigationManager { get; set; }
[Inject]
public ILogger<AddAdministrator> Logger { get; set; }
public required ILogger<AddAdministrator> Logger { get; set; }
private async Task HandleValidSubmit()
{
if (administratorModel != null)
{
administratorModel.HashPassword(administratorModel.HashedPassword);
@ -50,3 +52,4 @@ namespace Blazor.Pages.Admins
}
}
}
}

@ -11,26 +11,26 @@ namespace Blazor.Pages.Admins;
public partial class Administrators
{
public List<Administrator> administrators;
public List<Administrator> administrators = new();
private int totalItem;
[CascadingParameter]
public IModalService Modal { get; set; }
public required IModalService Modal { get; set; }
[Inject]
public IDataService DataService { get; set; }
public required IDataService DataService { get; set; }
[Inject]
public IWebHostEnvironment WebHostEnvironment { get; set; }
public required IWebHostEnvironment WebHostEnvironment { get; set; }
[Inject]
public ILocalStorageService LocalStorage { get; set; }
public required ILocalStorageService LocalStorage { get; set; }
[Inject]
public HttpClient Http { get; set; }
public required HttpClient Http { get; set; }
[Inject]
public NavigationManager NavigationManager { get; set; }
public required NavigationManager NavigationManager { get; set; }
private async Task OnReadData(DataGridReadDataEventArgs<Administrator> e)
{
@ -41,7 +41,7 @@ public partial class Administrators
var response = Http.GetFromJsonAsync<Administrator[]>(API.API_URL+"administrators/"+API.TOKEN).Result;
if (!e.CancellationToken.IsCancellationRequested)
if (!e.CancellationToken.IsCancellationRequested && response != null)
{
administrators = new List<Administrator>(response); // an actual data for the current page
totalItem = administrators.Count;

@ -10,21 +10,21 @@ namespace Blazor.Pages.Admins
[Parameter]
public int Id { get; set; }
private AdministratorModel administratorModel = new();
private AdministratorModel? administratorModel;
[Inject]
public IDataService DataService { get; set; }
public required IDataService DataService { get; set; }
[Inject]
public NavigationManager NavigationManager { get; set; }
public required NavigationManager NavigationManager { get; set; }
[Inject]
public IWebHostEnvironment WebHostEnvironment { get; set; }
public required IWebHostEnvironment WebHostEnvironment { get; set; }
[Inject]
public ILogger<EditAdministrator> Logger { get; set; }
public required ILogger<EditAdministrator> Logger { get; set; }
private string OldAdminName { get; set; }
private string OldAdminName { get; set; } = "";
protected override async Task OnInitializedAsync()
{
@ -40,6 +40,8 @@ namespace Blazor.Pages.Admins
}
private async Task HandleValidSubmit()
{
if (administratorModel != null)
{
administratorModel.HashPassword(administratorModel.HashedPassword);
@ -71,3 +73,4 @@ namespace Blazor.Pages.Admins
}
}
}
}

@ -6,20 +6,22 @@ namespace Blazor.Pages.Chapters;
public partial class AddChapter
{
private ChapterModel chapterModel = new();
private ChapterModel? chapterModel;
[Inject]
public IDataService DataService { get; set; }
public required IDataService DataService { get; set; }
[Inject]
public NavigationManager NavigationManager { get; set; }
public required NavigationManager NavigationManager { get; set; }
[Inject]
public ILogger<AddChapter> Logger { get; set; }
public required ILogger<AddChapter> Logger { get; set; }
private async Task HandleValidSubmit()
{
if (chapterModel != null)
{
var formData = new List<KeyValuePair<string, string>>();
formData.Add(new KeyValuePair<string, string>("name", chapterModel.Name));
@ -46,7 +48,7 @@ public partial class AddChapter
Logger.LogInformation("Chapter '{chapterModelName}' added", chapterModel.Name);
NavigationManager.NavigateTo("chapters");
}
}
}

@ -9,7 +9,7 @@ public partial class EditChapter
[Parameter]
public int Id { get; set; }
private ChapterModel chapterModel = new();
private ChapterModel? chapterModel;
[Inject]
public IDataService DataService { get; set; }

@ -6,16 +6,18 @@ namespace Blazor.Pages.Players
{
public partial class AddPlayer
{
private PlayerModel playerModel = new();
private PlayerModel? playerModel;
[Inject]
public IDataService DataService { get; set; }
public required IDataService DataService { get; set; }
[Inject]
public NavigationManager NavigationManager { get; set; }
public required NavigationManager NavigationManager { get; set; }
private async Task HandleValidSubmit()
{
if (playerModel != null)
{
playerModel.HashPassword(playerModel.HashedPassword);
@ -44,3 +46,4 @@ namespace Blazor.Pages.Players
}
}
}
}

@ -10,16 +10,16 @@ namespace Blazor.Pages.Players
[Parameter]
public int Id { get; set; }
private PlayerModel playerModel = new();
private PlayerModel? playerModel;
[Inject]
public IDataService DataService { get; set; }
public required IDataService DataService { get; set; }
[Inject]
public NavigationManager NavigationManager { get; set; }
public required NavigationManager NavigationManager { get; set; }
[Inject]
public IWebHostEnvironment WebHostEnvironment { get; set; }
public required IWebHostEnvironment WebHostEnvironment { get; set; }
protected override async Task OnInitializedAsync()
{

@ -17,23 +17,24 @@ public partial class Players
private int totalPlayer;
[Inject]
public NavigationManager NavigationManager { get; set; }
public required NavigationManager NavigationManager { get; set; }
[CascadingParameter]
public IModalService Modal { get; set; }
public required IModalService Modal { get; set; }
[Inject]
public IDataService DataService { get; set; }
public IWebHostEnvironment WebHostEnvironment { get; set; }
public required IDataService DataService { get; set; }
[Inject]
public required IWebHostEnvironment WebHostEnvironment { get; set; }
[Inject]
public HttpClient Http { get; set; }
public required HttpClient Http { get; set; }
[Inject]
public ILocalStorageService LocalStorage { get; set; }
public required ILocalStorageService LocalStorage { get; set; }
[Inject]
public IJSRuntime IJSRuntime { get; set; }
public required IJSRuntime IJSRuntime { get; set; }
private async void OnDelete(int id)
{

@ -9,13 +9,13 @@ namespace Blazor.Pages.Questions
{
public partial class AddQuestion
{
private QuestionModel questionModel = new();
private QuestionModel? questionModel;
public List<Chapter> chapters;
public List<Chapter> chapters = new();
private List<AnswerModel> answerModels;
private List<AnswerModel> answerModels = new();
private List<Checkbox> checkboxs;
public List<Checkbox> checkboxs = new();
[Inject]
public required IDataService DataService { get; set; }
@ -24,10 +24,10 @@ namespace Blazor.Pages.Questions
public required NavigationManager NavigationManager { get; set; }
[Inject]
public HttpClient Http { get; set; }
public required HttpClient Http { get; set; }
[Inject]
public ILogger<AddAdministrator> Logger { get; set; }
public required ILogger<AddAdministrator> Logger { get; set; }
public class Checkbox
{
public int Id { get; set; }
@ -50,9 +50,17 @@ namespace Blazor.Pages.Questions
checkboxs.Add(new Checkbox(i));
}
}
private async void HandleValidSubmit()
{
protected override async Task OnInitializedAsync()
{
var response = Http.GetFromJsonAsync<Chapter[]>(API.API_URL + "chapters/" + API.TOKEN).Result;
if (response == null) chapters = new List<Chapter>();
else chapters = new List<Chapter>(response);
}
private async Task HandleValidSubmit()
{
if (questionModel != null)
{
await DataService.Add(questionModel);
var formData = new List<KeyValuePair<string, string>>();
@ -95,3 +103,4 @@ namespace Blazor.Pages.Questions
}
}
}
}

@ -11,7 +11,7 @@ namespace Blazor.Pages.Questions
[Parameter]
public int Id { get; set; }
private QuestionModel questionModel = new();
private QuestionModel? questionModel;
[Inject]
public required IDataService DataService { get; set; }

Loading…
Cancel
Save