Commit 2a7a0ad9 by Jose Antonio

Working - Delete scene

parent 7910eae4
......@@ -56,7 +56,6 @@ module.exports = {
pictos: function(id_scene, callback) {
var l = [];
var fs = require('fs');
console.log("metodo pictos scene");
Scene.findOne(id_scene)
.then((scene) => {
if (!scene)
......
......@@ -120,26 +120,18 @@ dashboardControllers.controller('StudentCollectionsCtrl', function StudentCollec
}
};
// Reload student pictos (back from addpicto)
$scope.loadPictos = function (scene) {
// Fill with grid (if not done before)
$scope.freeCategoryPictos = $scope.freeCategoryPictos || generateGrid();
$scope.studentPictos[$scope.getCategoryId($scope.selectedCategory)] =
$scope.studentPictos[$scope.getCategoryId($scope.selectedCategory)] || generateGrid();
scene.pictos.forEach(placePicto);
$scope.loadingPictos = false;
};
// get active scene
$scope.showActiveScene = function (scene) {
$scope.freeCategoryPictos = $scope.freeCategoryPictos || generateGrid();
$scope.studentPictos[$scope.getCategoryId($scope.selectedCategory)] =
$scope.studentPictos[$scope.getCategoryId($scope.selectedCategory)] || generateGrid();
$http.get(config.backend + '/stu/' + $scope.studentData.id + '/activeScene')
.success(function (activeScene) {
$scope.showFreeCategory = !activeScene.categories;
$scope.viewingScene = activeScene;
$scope.loadPictos(activeScene);
activeScene.pictos.forEach(placePicto);
$scope.loadingPictos = false;
//setTimeout(function () { $scope.$apply(); });
})
.error(function () {
......@@ -152,11 +144,16 @@ dashboardControllers.controller('StudentCollectionsCtrl', function StudentCollec
// get active scene
$scope.showScene = function (idScene) {
$scope.freeCategoryPictos = $scope.freeCategoryPictos || generateGrid();
$scope.studentPictos[$scope.getCategoryId($scope.selectedCategory)] =
$scope.studentPictos[$scope.getCategoryId($scope.selectedCategory)] || generateGrid();
$http.get(config.backend + '/scene/' + idScene)
.success(function (scene) {
$scope.showFreeCategory = !scene.categories;
$scope.viewingScene = scene;
$scope.loadPictos(scene);
scene.pictos.forEach(placePicto);
$scope.loadingPictos = false;
//setTimeout(function () { $scope.$apply(); });
})
.error(function () {
......@@ -219,28 +216,43 @@ dashboardControllers.controller('StudentCollectionsCtrl', function StudentCollec
});
};
// Delete student picto
// Delete student scene, if is not active
//If scene is viewingScene, load activeScene
$scope.delete_scene = function (idScene) {
var active = false;
var viewing = idScene == $scope.viewingScene.id;
for(var i=0; i<$scope.scenesList; i++){
if($scope.scenesList[i].id == idScene){
active=$scope.scenesList[i].active;
}
}
$translate('confirmation').then(t => {
if ($window.confirm(t)) {
$http.delete(config.backend + '/scene/' + idScene)
.success(function () {
// io.socket.post('/stu/vocabulary', {
// action: 'delete',
// attributes: {
// id_stu: $scope.studentData.id,
// id_scene: $scope.viewingScene.id,
// stu_picto: studentPicto
// }
// }, function () {});
//
// $translate('picto_removed').then(function (translation) {
// ngToast.success({ content: translation });
// });
}).error(function () {});
if(!active){
$http.delete(config.backend + '/scene/' + idScene)
.success(function () {
io.socket.post('/scene', {
action: 'delete',
data: {id:idScene}
}, function () {});
if(viewing){
$scope.showActiveScene();
}
$scope.loadScenesList();
$translate('scene_deleted').then(function (translation) {
ngToast.success({ content: translation });
});
}).error(function () {
$translate('scene_already_deleted').then(function (translation) {
ngToast.warning({ content: translation });
});
});
}else{
$translate('cant_delete_active_scene').then(function (translation) {
ngToast.warning({ content: translation });
});
}
}
});
};
......@@ -248,7 +260,7 @@ dashboardControllers.controller('StudentCollectionsCtrl', function StudentCollec
// Delete student picto
$scope.update_scene = function (scene) {
$http.put(config.backend + '/scene/' + idScene, {
$http.put(config.backend + '/scene/' + scene.id, {
name: scene.name,
active: scene.active})
.success(function () {
......@@ -425,7 +437,7 @@ dashboardControllers.controller('StudentCollectionsCtrl', function StudentCollec
new_id_pic: pictoId
})
.success(function (studentPicto) {
$scope.loadPictos($scope.viewingScene);
$scope.showScene($scope.viewingScene.id);
// notify
io.socket.post('/stu/vocabulary', {
......@@ -502,9 +514,6 @@ dashboardControllers.controller('StudentCollectionsCtrl', function StudentCollec
else
ngToast.danger({ content: $translate.instant('error_adding_picto') });
});
// not needed
// $scope.loadPictos();
});
};
......
......@@ -85,7 +85,8 @@ module.exports.policies = {
update: ['tokenAuth', 'isSupervisorOfStudent'],
destroy: ['tokenAuth', 'isSupervisorOfStudent'],
getScene: ['tokenAuth'],
getStudentScenes: ['tokenAuth']
getStudentScenes: ['tokenAuth'],
scene: true
},
ServerController: {
......@@ -124,7 +125,8 @@ module.exports.policies = {
delete: ['tokenAuth', 'isSupAdmin'],
unlink_supervisor: ['tokenAuth', 'isSupAdmin'],
delete_picto: ['tokenAuth', 'isSupervisorOfStudent'],
getActiveScene: ['tokenAuth']
getActiveScene: ['tokenAuth'],
getScenes: ['tokenAuth']
},
LicenseController: {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment