1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
| app.controller('appCtrl', ['$scope','VillesService','$http', function ($scope,VillesService,$http) {
/* INITIALISATION DU FORMULAIRE */
$scope.newVille = {}; // Tout ce que l'on inscrit dans le formulaire est copié dans cet objet en temps réel.
$scope.newVille.photo = "img-app/ville.jpg" // Image de base d'une ville que l'on modifie après après telechargement et update dans l'objet newVille
/* INITIALISATION DES ONGLETS (ON CHOISIT QUEL ONGLET SERA VU EN PREMIER) */
$scope.etatOnglets = {static0:true,static1: false, static2: false};
/* CHARGEMENT DU MODELE DE DONNEES SUR FIREBASE ET LIAISON PERMANENTE TRI-DIRECTIONNELLE A LA BASE DE DONNEE EN TEMPS REEL !(3 way binding): */
$scope.villes = VillesService.getVilles(); // $scope.villes est affiché en temps réel dans la vue, c'est un tableau d'objets Json contenant des villes.
$scope.getInfos = function(){
return $scope.villes.length;
}
/* REINITIALISATION DU FORMULAIRE POUR CREER UNE NOUVELLE VILLE */
$scope.nouveau = function(){
$scope.newVille = {}; // Tout ce que l'on inscrit dans le formulaire est copié dans cet objet en temps réel.
$scope.newVille.photo = "img-app/ville.jpg"
}
/* AJOUT D'UNE VILLE ET ENREGISTREMENT EN BASE DE DONNEES FIREBASE : */
$scope.ajouterVille = function(){
VillesService.ajouterVille(angular.copy($scope.newVille));// transmets l'objet ville à la base de données firebase suite à un click sur enregistrer la ville...
$scope.infos = "La ville a été ajoutée en ligne à la base de données FIREBASE"
}
/* SUPPRESSION D'UNE VILLE */
$scope.supprimerVille = function(ville){
alert('Je préfère garder les données de démo, coquin !')
/* VillesService.supprimerVille(ville); */
}
/* EDITION DUNE VILLE */
$scope.editerVille = function(ville){
/* FOCUS SUR L ONGLET EDITION */
$scope.etatOnglets = {};
$scope.etatOnglets = {static1: false, static2: true}; // Permet de placer automatiquement lutilisateur sur l'onglet EDITER
/* POUR POUVOIR EDITER UN OBJET IL FAUT LE RECUPERER SUR FIREBASE CA DOIT ETRE UN OBJET FIREBASE , DU COUP ON UTILISE GETRECORD COMME INDIQUE DANS LA DOC: */
$scope.newVille = $scope.villes.$getRecord(ville.$id); // Astuce permettant de charger l'objet ville directement dans le formulaire : super rapide, super simple !
}
/* VALIDATION DE L EDITION DUNE VILLE */
$scope.validerEdition = function(){
VillesService.editerVille($scope.newVille);
$scope.infos = "La ville a été modifiée en ligne dans la base de données FIREBASE"
}
/* CHARGEMENT D UNE PHOTO SUR LE SERVEUR */
$scope.uploadFile = function(files) {
var fd = new FormData();
//Take the first selected file
fd.append("file", files[0]);
console.log(files[0].name);
var uploadUrl = "uploadTruc36.php";
$http.post(uploadUrl, fd, {
withCredentials: true,
headers: {'Content-Type': undefined },
transformRequest: angular.identity
}).success(function(data){
$scope.infoUpload="Fichier téléchargé sur le serveur ";
$scope.newVille.photo="uploads/"+files[0].name;
})
.error(function(data){
$scope.infoUpload="Echec du téléchargement sur le serveur";
});
};
<!-- FIN DU CONTROLEUR -->
}]) |
Partager