Commit c4638a75 authored by El-gitano's avatar El-gitano

Ajout de la documentation

Supressions des drapeaux en local
Passage du token par le header ac_token
parent f196fa57
......@@ -4,25 +4,35 @@ Rajouter export CSV
=== JOUEURS & JOUEURS ÉQUIPES & ÉQUIPES ===
Vérifier les suppression/ajouts/édition après appel à l'API
Ajouter les photos des joueurs (dans les formulaires et via un bouton sur une ligne du tableau)
=== MODALS ===
Restreindre la date du calendrier
=== GENERAL ===
Fonctionnalité de vérification du tournois avant lancement
Différence entre phase init. et phase competition
Faire la documentation
Faire des tests
Supprimer chargement-ligne
Faire la page d'accueil
Documentation utilisateur
Manuel de reprise du code
Finir triage
Trouver une manière + élégante de gérer les modifications de entrées du tableau
Informations classement (non obligatoire)
Différencier affichage des stats selon le public
Grand écran pour l'affichage des stats et matchs (x4)
Corriger la création de la documentation
=== AUTH ===
Remettre l'authentification quand nécessaire
=== Informer ===
Faire une animation plus jolie (réduction de height au fur et à mesure de la suppression)
=== TABLEAU ===
Simplifier le passage de paramètre
Faire la documentation
=== EQUIPES & TABLEAU ===
Classer les équipes par idTeam
......@@ -21,7 +21,7 @@
<![endif]-->
<!-- Add your site or application content here -->
<div class="container-fluid" ng-controller="HeadercontrollerCtrl">
<div class="container-fluid" ng-controller="HeaderCtrl">
<div class="header">
<ul class="nav nav-pills pull-right">
<li ng-class="{ active: estActive('/accueil')}"><a ng-href="#/accueil">Accueil</a></li>
......@@ -92,14 +92,13 @@
<script src="scripts/filters/slice.js"></script>
<script src="scripts/services/constantes.js"></script>
<script src="scripts/directives/focuson.js"></script>
<script src="scripts/directives/chargementligne.js"></script>
<script src="scripts/services/intercepteurhttpreponses.js"></script>
<script src="scripts/directives/tableau.js"></script>
<script src="scripts/controllers/modal/modalinstance.js"></script>
<script src="scripts/controllers/modal/editjoueur.js"></script>
<script src="scripts/services/valeurs.js"></script>
<script src="scripts/filters/assocfilter.js"></script>
<script src="scripts/controllers/headercontroller.js"></script>
<script src="scripts/controllers/header.js"></script>
<script src="scripts/services/pays.js"></script>
<script src="scripts/directives/flagselector.js"></script>
<script src="scripts/services/informer.js"></script>
......
'use strict';
/**
* @ngdoc function
* @ngdoc controller
* @name panelAdminApp.controller:AuthentificationCtrl
* @description
* # AuthentificationCtrl
* Controller of the panelAdminApp
* Contrôleur de la page d'authentification
*/
angular.module('panelAdminApp')
.controller('AuthentificationCtrl', ['$scope', '$log', '$window', 'apicall', 'infosConnexion', 'informer', function ($scope, $log, $window, apicall, infosConnexion, informer) {
$scope.lancerConnexion = function(){
$log.info('Tentative de connexion');
......
'use strict';
/**
* @ngdoc function
* @ngdoc controller
* @name panelAdminApp.controller:EquipesCtrl
* @description
* # EquipesCtrl
* Controller of the panelAdminApp
* Contrôleur de la page gérant les équipes
*/
var app = angular.module('panelAdminApp');
......@@ -41,32 +40,6 @@ app.controller('EquipesCtrl', ['$scope', '$location', '$log', '$modal', 'apicall
}*/
];
$scope.fonctionAjout = function(){
var dialogue = $modal.open({
templateUrl: 'views/modal/ajoutEquipe.html',
controller: 'AjoutEquipeCtrl'
});
dialogue.result.then(function(equipe) {
apicall.addEquipe(equipe).success(function(data){
$log.info(data);
$scope.chargerJoueurs();
}).error(function(){
$scope.alertes.push({type : 'danger', msg: 'Impossible de modifier un joueur (cliquer pour essayer de recharger)'}); // TODO
});
}, function () {
$log.info('Annulation de l\'action');
});
};
$scope.boutonsEdition = [
{
......@@ -159,7 +132,9 @@ app.controller('EquipesCtrl', ['$scope', '$location', '$log', '$modal', 'apicall
apicall.delEquipe(infosEquipe.entree).success(function(){
informer.success('Équipe réinitialisée avec succès');
//$scope.chargerEquipes();
infosEquipe.entree.URL = null;
infosEquipe.entree.CompleteName = null;
}).error(function(){
......
'use strict';
/**
* @ngdoc function
* @name panelAdminApp.controller:HeadercontrollerCtrl
* @ngdoc controller
* @name panelAdminApp.controller:HeaderCtrl
* @description
* # HeadercontrollerCtrl
* Controller of the panelAdminApp
* Contrôleur du header de l'application (utilisé pour actualiser l'affichage de l'onglet actif)
*/
angular.module('panelAdminApp')
.controller('HeadercontrollerCtrl', ['$scope', '$location', function ($scope, $location) {
.controller('HeaderCtrl', ['$scope', '$location', function ($scope, $location) {
$scope.estActive = function (lienVue) {
......
......@@ -81,8 +81,7 @@ app.controller('JoueursCtrl', ['$scope', 'apicall', '$modal', '$log', 'informer'
informer.success('Joueur ajouté avec succès');
joueur.IdPlayer = data.playerId;
ajouterEntree(joueur);
ajouterEntree(joueur);
},
function(){
......@@ -187,15 +186,15 @@ app.controller('JoueursCtrl', ['$scope', 'apicall', '$modal', '$log', 'informer'
}
];
$scope.entrees = [];
$scope.joueurs = [];
var ajouterEntree = function(entree){
$scope.entrees.push(entree);
$scope.joueurs.push(entree);
};
var supprimerEntree = function(entree){
$scope.entrees.splice($scope.entrees.indexOf(entree), 1);
$scope.joueurs.splice($scope.joueurs.indexOf(entree), 1);
};
}]);
'use strict';
/**
* @ngdoc function
* @ngdoc controller
* @name panelAdminApp.controller:JoueursEquipeCtrl
* @description
* # JoueursEquipeCtrl
* Controller of the panelAdminApp
* Contrôleur de la page gérant les joueurs d'une équipe
*/
var app = angular.module('panelAdminApp');
......
'use strict';
/**
* @ngdoc function
* @ngdoc controller
* @name panelAdminApp.controller:MainCtrl
* @description
* # MainCtrl
* Controller of the panelAdminApp
* Contrôleur de la page d'accueil
*/
angular.module('panelAdminApp')
.controller('MainCtrl', function(){
......
'use strict';
/**
* @ngdoc controller
* @name panelAdminApp.controller:AjoutEquipeCtrl
* @description
* Contrôleur la fenêtre modal servant à saisir les informations nécessaires à l'ajout d'une équipe
*/
var app = angular.module('panelAdminApp');
......
'use strict';
/**
* @ngdoc controller
* @name panelAdminApp.controller:AjoutJoueurCtrl
* @description
* Contrôleur de fenêtre modal servant à saisir les informations nécessaires à l'ajout d'un joueur
*/
var app = angular.module('panelAdminApp');
......
'use strict';
/**
* @ngdoc controller
* @name panelAdminApp.controller:AjoutJoueurEquipeCtrl
* @description
* Contrôleur de fenêtre modal servant à saisir les informations nécessaires à l'ajout d'un joueur dans une équipe
*/
var app = angular.module('panelAdminApp');
app.controller('AjoutJoueurEquipeCtrl', ['$scope','$modalInstance','$log', '$filter', 'donnees', function ($scope, $modalInstance, $log, $filter, donnees) {
......
'use strict';
/**
* @ngdoc controller
* @name panelAdminApp.controller:EditerEquipeCtrl
* @description
* Contrôleur de fenêtre modal servant à éditer une équipe
*/
var app = angular.module('panelAdminApp');
app.controller('EditerEquipeCtrl', ['$scope','$modalInstance', '$log', 'donnees', function ($scope, $modalInstance, $log, donnees) {
......
'use strict';
/**
* @ngdoc function
* @name panelAdminApp.controller:EditjoueurctrlCtrl
* @ngdoc controller
* @name panelAdminApp.controller:EditerEquipeCtrl
* @description
* # EditjoueurctrlCtrl
* Controller of the panelAdminApp
* Contrôleur de fenêtre modal servant à éditer une équipe
*/
angular.module('panelAdminApp')
.controller('EditJoueurCtrl', ['$scope', '$log', '$modalInstance', '$filter', 'apicall', 'donnees', function ($scope, $log, $modalInstance, $filter, apicall, donnees) {
......
'use strict';
/**
* @ngdoc function
* @name panelAdminApp.controller:ModalinstanceCtrl
* @ngdoc controller
* @name panelAdminApp.controller:ModalInstanceCtrl
* @description
* # ModalinstanceCtrl
* Controller of the panelAdminApp
* Contrôleur de fenêtre modal servant à lancer une fenêtre modal sans interaction particulière
*/
angular.module('panelAdminApp')
.controller('ModalInstanceCtrl', ['$scope', '$modalInstance', 'donnees', function ($scope, $modalInstance, donnees) {
......
'use strict';
/**
* @ngdoc function
* @ngdoc controller
* @name panelAdminApp.controller:TirageCtrl
* @description
* # TirageCtrl
* Controller of the panelAdminApp
* Contrôleur de la page de gérant l'initialisation des rencontres suite au tirage
*/
angular.module('panelAdminApp')
.controller('TirageCtrl', ['$scope', '$log', '$filter', 'apicall', 'informer', function ($scope, $log, $filter, apicall, informer) {
.controller('TirageCtrl', ['$scope', '$log', '$filter', 'apicall', 'informer', '$timeout', function ($scope, $log, $filter, apicall, informer, $timeout) {
$scope.chargement = true;
......
'use strict';
/**
* @ngdoc directive
* @name panelAdminApp.directive:afficheurInfos
* @description
* # afficheurInfos
*/
/**
* @ngdoc directive
* @name panelAdminApp.directive:afficheurInfos
* @scope
* @restrict E
*
* @link panelAdminApp.service:informer
* @description
* Cette directive agit en collaboration avec le service informer et est chargée de générer le code HTML d'affichage des notifications générées par l'application
*/
angular.module('panelAdminApp')
.directive('afficheurInfos', ['informer', function (informer) {
return {
......
'use strict';
/**
* @ngdoc directive
* @name panelAdminApp.directive:chargement
* @description
* # chargement
*/
/**
* @ngdoc directive
* @name panelAdminApp.directive:chargement
* @scope
* @restrict A
*
* @param {bool} statusChargement Un booléen charger de désigner si le contenu englobé est en chargement (true) ou non (false)
*
* @description
* Cette directive est chargée d'afficher un spinner lorsque le contenu qu'elle englobe est considé comme étant en chargement
*/
var app = angular.module('panelAdminApp');
app.directive('chargement', function() {
......
'use strict';
/**
* @ngdoc directive
* @name panelAdminApp.directive:chargementLigne
* @description
* # chargementLigne
*/
var app = angular.module('panelAdminApp');
app.directive('chargementLigne', function() {
return {
// Soit on a une ligne de chargement, soit on a une ligne classique
template: '<tr colspan="8" ng-show="joueur.chargement"></tr><tr ng-hide="joueur.chargement" ng-transclude></div>',
//On remplace le contenu original qu'on place dans un container temporaire
restrict: 'A',
transclude: true,
replace: true,
//Placement du spinner
compile: function compile(){
//var spinner = new Spinner({speed: 0.7}).spin(containerChargement);
}
};
});
'use strict';
/**
* @ngdoc directive
* @name panelAdminApp.directive:flagSelector
* @description
* # flagSelector
*/
/**
* @ngdoc directive
* @name panelAdminApp.directive:flagSelector
* @scope
* @restrict E
*
* @param {object} selection (read-only) Le pays sélectionné actuellement
*
* @description
* Cette directive est chargée d'afficher une liste de pays avec drapeaux associés et la possibilité d'en sélectionner un
*/
angular.module('panelAdminApp')
.directive('flagSelector', ['$log', '$filter', 'Pays', 'urlDrapeaux', function ($log, $filter, Pays, urlDrapeaux) {
return {
......
'use strict';
/**
* @ngdoc directive
* @name panelAdminApp.directive:focusOn
* @description
* # focusOn
*/
/**
* @ngdoc directive
* @name panelAdminApp.directive:focusOn
* @scope
* @restrict A
*
* @param {*} elemFocus Un element à surveiller afin de prendre le focus à chaque changement
*
* @description
* Cette directive est chargée de déclencher le focus de l'élément sur lequel elle est située lorsque elemFocus change
*/
angular.module('panelAdminApp')
.directive('focusOn', ['$timeout', function($timeout) {
......
'use strict';
/**
* @ngdoc filter
* @name panelAdminApp.filter:applatirTirage
* @function
* @description
* # applatirTirage
* Filter in the panelAdminApp.
*/
* @ngdoc filter
* @name panelAdminApp.filter:applatirTirage
* @kind function
*
* @description
* Ce filtre est chargé de transformer le tableau d'objets reçu via l'API en un tableau simple
*
* @param {Array} source Le résultat de l'appel à l'API
*/
angular.module('panelAdminApp')
.filter('applatirTirage', function () {
return function (entree) {
......
'use strict';
/**
* @ngdoc filter
* @name panelAdminApp.filter:assocFilter
* @function
* @description
* # assocFilter
* Filter in the panelAdminApp.
*/
* @ngdoc filter
* @name panelAdminApp.filter:assocFilter
* @kind function
*
* @description
* Ce filtre est chargé de transformer les clés d'un objet.
*
* @param {Array} source L'objet à modifier
* @param {Object} assoc L'objet renseignant les associations sous la forme {'ancienneCle':'nouvelleCle'}
* @param {Boolean} complet Indique si le filtre doit ignorer les champs de l'objet d'origine qui ne sont pas renseigner dans assoc (false) ou bien les conserver (true)
*/
angular.module('panelAdminApp')
.filter('assocFilter', ['$log', function($log) {
......
'use strict';
/**
* @ngdoc filter
* @name panelAdminApp.filter:prepareTirage
* @function
* @description
* # prepareTirage
* Filter in the panelAdminApp.
*/
* @ngdoc filter
* @name panelAdminApp.filter:prepareTirage
* @kind function
*
* @description
* Ce filtre est chargé de transformer le tableau à envoyer à l'API de façon à ce qu'il correponde à l'entrée attendue
*
* @param {Array} source Le tableau à envoyer à l'API
*/
angular.module('panelAdminApp')
.filter('prepareTirage', function () {
......
......@@ -5,8 +5,11 @@
* @name panelAdminApp.filter:slice
* @function
* @description
* # slice
* Filter in the panelAdminApp.
* Ce filtre est chargé de retourner une copie du tableau qui lui est passé en paramètre en ne conservant que les éléments ayant un indice situé dans la plage définie par les autres paramètres.
*
* @param {Array} entree Le tableau d'origine
* @param {Integer} debut L'indice de début de sélection
* @param {Integer} fin L'indice de fin de sélection
*/
angular.module('panelAdminApp')
.filter('slice', function () {
......
......@@ -4,8 +4,7 @@
* @ngdoc service
* @name panelAdminApp.apicall
* @description
* # apicall
* Provider in the panelAdminApp.
* Ce provider permet de paramétrer l'URL utilisé pour les appels à l'API
*/
angular.module('panelAdminApp').
provider('apicall', [function(){
......@@ -13,35 +12,82 @@ angular.module('panelAdminApp').
// Variables privées
var url = 'http://mondomaine.com';
// Constructeur de l'objet
/**
* @ngdoc object
* @name panelAdminApp.ApiCaller
* @description
* Objet retourné par le provider apicall
*/
function ApiCaller($http, $filter, $log) {
// Récupération des équipes
/**
* @ngdoc method
* @name getEquipes
* @methodOf panelAdminApp.ApiCaller
* @description
* Permet de récupérer les informations sur les équipe du tournois
*
* @return Un promise sur le résultat de la requête
*/
this.getEquipes = function() {
return $http.get(url + '/teams');
};
// Récupération des informations sur une équipe
/**
* @ngdoc method
* @name getEquipe
* @methodOf panelAdminApp.ApiCaller
* @description
* Permet de récupérer les informations sur une équipe du tournois
*
* @param {Integer} idEquipe L'identifiant de l'équipe dont on souhaite avoir les informations
* @return Un promise sur le résultat de la requête
*/
this.getEquipe = function(idEquipe) {