mirror of
https://github.com/lukevella/rallly.git
synced 2025-05-05 21:26:05 +02:00
51 lines
1.7 KiB
JavaScript
51 lines
1.7 KiB
JavaScript
angular.module('rallly')
|
|
.controller('EditEventCtrl', function($scope, $http, $state, $timeout, Event, ConfirmModal){
|
|
var id = $state.params.id
|
|
$scope.event = Event.get({id:id}, function(data){
|
|
var dates = [];
|
|
for (var i = 0; i < data.dates.length; i++){
|
|
dates.push(new Date(data.dates[i]));
|
|
}
|
|
$("[data-datepicker]").datepicker('setDates',dates);
|
|
$scope.master = angular.copy($scope.event);
|
|
}, function(e){
|
|
$state.go('notfound');
|
|
});
|
|
$scope.didChange = function(){
|
|
return JSON.stringify($scope.master) != JSON.stringify($scope.event);
|
|
}
|
|
$scope.didChangeDates = function(){
|
|
return JSON.stringify($scope.master.dates) != JSON.stringify($scope.event.dates);
|
|
}
|
|
$scope.submit = function(){
|
|
if ($scope.didChange()){
|
|
if ($scope.didChangeDates() ){
|
|
var modal = new ConfirmModal({
|
|
title : 'Hold up!',
|
|
message : 'Changing the dates will reset all entries by the participants. Are you sure you want to do that?',
|
|
confirmText : 'Yes, I\'m sure',
|
|
isDestructive : true,
|
|
confirm : function(){
|
|
update();
|
|
}
|
|
});
|
|
modal.show();
|
|
|
|
} else {
|
|
update();
|
|
}
|
|
}
|
|
}
|
|
var update = function(){
|
|
Event.update({
|
|
id : id
|
|
}, $scope.event,
|
|
function(){
|
|
$timeout.cancel($scope.didSave);
|
|
$scope.master = angular.copy($scope.event);
|
|
$scope.didSave = $timeout(function(){
|
|
$scope.didSave = false;
|
|
}, 2000);
|
|
});
|
|
}
|
|
});
|