frontend: registration is Ok

This commit is contained in:
nemunaire 2018-12-02 02:12:53 +01:00
parent 7b0e8195ff
commit 024d34f0e4
3 changed files with 32 additions and 25 deletions

View file

@ -491,23 +491,23 @@ angular.module("FICApp", ["ngRoute", "ngSanitize"])
});
};
})
.controller("RegisterController", function($scope, $rootScope, $location, $http) {
.controller("RegisterController", function($scope, $rootScope, $location, $http, $interval) {
$rootScope.current_theme = 0;
$rootScope.current_exercice = 0;
$rootScope.current_tag = undefined;
$rootScope.title = "Bienvenue au challenge forensic !";
$rootScope.authors = null;
$scope.members = [{}];
$scope.form = {"teamName": "", "members": [{}]};
$scope.AddMember = function() {
$scope.members.push({});
$scope.form.members.push({});
}
$scope.RemoveMember = function(k) {
$scope.members.splice(k, 1);
$scope.form.members.splice(k, 1);
}
$scope.Validate = function() {
if ($scope.teamName.length <= 3) {
if ($scope.form.teamName.length <= 3) {
$('#teamName').addClass("is-invalid")
return;
} else {
@ -522,32 +522,32 @@ angular.module("FICApp", ["ngRoute", "ngSanitize"])
return $scope.Validate();
// Remove empty members
$scope.members = $scope.members.filter(function(m) {
$scope.form.members = $scope.form.members.filter(function(m) {
return ((m.lastname != undefined && m.lastname != "") || (m.firstname != undefined && m.firstname != "") || (m.nickname != undefined && m.nickname != ""));
});
if ($scope.members.length == 0) {
if ($scope.form.members.length == 0) {
$scope.messageClass = {"text-danger": true};
$scope.message = "Veuillez ajouter au moins un membre dans votre équipe !";
$scope.members.push({});
$scope.form.members.push({});
return;
}
$http({
url: "/registration",
method: "POST",
data: {
teamName: $scope.teamName,
members: $scope.members,
}
}).then(function(response, status, header, config) {
data: $scope.form
}).then(function(response) {
$scope.messageClass = {"text-success": true};
$scope.message = response.data.errmsg;
$interval(function(){
$http.get("/my.json").then(function(response) {
$rootScope.refresh();
if ($scope.my)
$location.url("/");
});
}, 1500);
}, function(response) {
$scope.messageClass = {"text-danger": true};
if (response.data && response.data.errmsg)
@ -557,9 +557,10 @@ angular.module("FICApp", ["ngRoute", "ngSanitize"])
});
}
if ($scope.my) {
$scope.$watch("my", function(my){
if (my)
$location.url("/");
}
});
})
.controller("TagController", function($scope, $rootScope, $routeParams) {
$rootScope.current_theme = 0;

View file

@ -1,12 +1,18 @@
<div class="alert alert-danger" ng-if="!(my.team_id)">
<div class="alert alert-danger" ng-if="my && !(my.team_id)">
<strong>Attention&nbsp;:</strong> puisqu'il s'agit de captures effectuées dans le but de découvrir si des actes malveillants ont été commis sur différents systèmes d'information, les contenus qui sont téléchargeables <em>peuvent</em> contenir du contenu malveillant&nbsp;!
</div>
<div class="alert text-justify" ng-if="(my.team_id)" style="background-color: #4eaee6;">
<strong>Félicitations <span ng-repeat="member in my.members"><span ng-if="$last && !$first"> et </span><span ng-if="$middle">, </span>{{ member.firstname | capitalize }} {{ member.lastname | capitalize }}</span>&nbsp;!</strong> vous êtes maintenant connecté à l'espace de votre équipe <em>{{ teams[my.team_id].name }}</em>. Vous pouvez changer ce nom dès maintenant en vous rendant sur la page de <a href="/edit">votre équipe</a>.
<strong>Félicitations <span ng-repeat="member in my.members"><span ng-if="$last && !$first"> et </span><span ng-if="$middle">, </span>{{ member.firstname | capitalize }} {{ member.lastname | capitalize }}</span> !</strong> vous êtes maintenant connecté à l'espace de votre équipe <em>{{ teams[my.team_id].name }}</em>. Vous pouvez changer ce nom dès maintenant en vous rendant sur la page de <a href="/edit">votre équipe</a>.
</div>
<div class="alert alert-warning text-justify" ng-if="(my.team_id && !my.members.length)">
<strong>Les membres de votre équipes ne sont pas encore enregistrés.</strong> Passez voir l'équipe serveur pour corriger cela.
</div>
<div class="alert alert-warning text-justify" ng-if="!my && settings.allowRegistration">
<strong>Votre équipe n'est pas encore enregistrée.</strong> Rendez-vous sur <a href="/register">cette page</a> pour procéder à votre inscription.
</div>
<div class="alert alert-danger text-justify" ng-if="!my && !settings.allowRegistration">
<strong>Il semblerait qu'il y ait eu un problème lors de l'attribution de votre certificat.</strong> Veuillez vous signaler auprès de notre équipe afin de corriger ce problème.
</div>
<div class="card-columns">
<div class="card niceborder" ng-repeat="(k,theme) in themes">

View file

@ -1,4 +1,4 @@
<div class="jumbotron" style="text-indent: 1em" ng-if="!settings.allowRegistration">
<div class="jumbotron niceborder" style="text-indent: 1em" ng-if="!settings.allowRegistration">
<p>
Félicitations&nbsp;! vous êtes maintenant authentifié auprès de notre
serveur&nbsp;!
@ -9,7 +9,7 @@
</div>
</div>
<div class="jumbotron" style="text-indent: 1em" ng-if="settings.allowRegistration">
<div class="jumbotron niceborder" style="text-indent: 1em" ng-if="settings.allowRegistration">
<p>
<strong>Félicitations&nbsp;! vous êtes maintenant authentifié auprès de
notre serveur&nbsp;!</strong>
@ -25,7 +25,7 @@
<label for="teamName" class="col col-form-label">Nom d'équipe</label>
<div class="col-sm-10">
<div class="input-group">
<input type="text" class="form-control" id="teamName" ng-model="teamName" placeholder="" autofocus required>
<input type="text" class="form-control" id="teamName" ng-model="form.teamName" placeholder="" autofocus required>
<span class="input-group-btn" id="vldBtn">
<button class="btn btn-info" type="button" ng-click="Validate()">Valider</button>
</span>
@ -44,7 +44,7 @@
</button>
</h4>
<p ng-if="message" ng-class="messageClass" ng-bind="message"></p>
<div class="row form-group" ng-repeat="(mid, member) in members">
<div class="row form-group" ng-repeat="(mid, member) in form.members">
<div class="col-sm">
<input type="text" class="form-control" ng-model="member.lastname" placeholder="Nom" autofocus>
</div>