app.controller('FlightListCtrl', function($scope, $http) { function getAirport() { var req = { method: 'GET', url: '/airport/get/' } $http(req).then(function(response) { if (response.status && response.data.status) { $scope.airports = response.data.data; } }); } getAirport(); $scope.generateFlightList = function() { if ($scope.filter && $scope.filter.date && $scope.filter.airport) { let date = ''; if ($scope.filter.date) { date = $scope.convertDateObjToJS($scope.filter.date, 'date'); var req = { method: 'GET', url: '/airport/generateFlightList/check?airport=' + $scope.filter.airport + '&date=' + date } $http(req).then(function(response) { if (response.status && response.data.status) { window.open('/airport/generateFlightList/Vluchtlijst?airport=' + $scope.filter.airport + '&date=' + date, '_blank'); } else { swal('Mislukt', 'Geen vluchten gevonden voor deze luchthaven (' + $scope.filter.airport + ') op de geselecteerde datum (' + date + ')', 'error'); } }); } } }; $scope.convertDateObjToJS = function(objDate, type) { if (!objDate) { return objDate; } if (typeof objDate === 'string') { return objDate; } switch(type){ case 'date': if(typeof objDate.getFullYear !== 'function'){ return null; } return ([objDate.getFullYear(), objDate.getMonth()+1, objDate.getDate()].join('-')); break; case 'time': if(typeof objDate.getHours !== 'function'){ return null; } return ([('00' + objDate.getHours()).slice(-2), ('00' + objDate.getMinutes()).slice(-2)].join(':')); break; case 'datetime': if(typeof objDate.getFullYear !== 'function'){ return null; } return ([objDate.getFullYear(), objDate.getMonth()+1, objDate.getDate()].join('-')+' '+[('00' + objDate.getHours()).slice(-2), ('00' + objDate.getMinutes()).slice(-2)].join(':')); break; default: return objDate; break; } } });