|
|
angular.module('app.newEvent', ['pascalprecht.translate', 'ui-leaflet'])
.controller('NewEventCtrl', function($scope, $http, $ionicModal, $timeout, $ionicLoading, $filter, leafletData, leafletBoundsHelpers, $cordovaCamera) {
//initialization
$scope.event={}; $scope.event.categories=[]; $scope.event.location={ direction: "", geo: { lat: "", long: "", name: "" } };
//imgfile
$scope.selectImgFile = function() { console.log("img"); var options = { quality: 100, destinationType: Camera.DestinationType.DATA_URL, sourceType: Camera.PictureSourceType.PHOTOLIBRARY, allowEdit: true, encodingType: Camera.EncodingType.PNG, targetWidth: 500, targetHeight: 500, popoverOptions: CameraPopoverOptions, saveToPhotoAlbum: false, correctOrientation: true };
$cordovaCamera.getPicture(options).then(function(imageData) { $scope.event.imgpreview = "data:image/jpeg;base64," + imageData; $scope.event.img = imageData; }, function(err) { console.log(err); }); };
//get list of categories
$scope.categories; $http.get(urlapi + 'categoriesList') .then(function(data){ $scope.categories=data.data; console.log($scope.categories); }, function(data){ console.log('data error'); console.log(data); $ionicLoading.show({ template: 'Error connecting server', noBackdrop: true, duration: 2000 });
}); $scope.categorySelected = function(){ $scope.event.categories=[]; for(var i=0; i<$scope.categories.length; i++) { if($scope.categories[i].selected) { $scope.event.categories.push($scope.categories[i]); } } console.log($scope.event.categories); };
$scope.postEvent = function(){ $http({ url: urlapi + 'events', method: "POST", data: $scope.event }) .then(function(data) { $scope.event={}; window.location.href="#/app/events"; }, function(response) { // optional
// failed
console.log(response); }); };
/* map */
$scope.center= { lat: 0, lng: 0, zoom: 1 }; $scope.markers=new Array(); $scope.tiles= { url: "http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png", options: { attribution: '<a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors' } }; $scope.getGeo = function(){
$scope.markers=[]; console.log($scope.event.location.direction); $http.get('http://nominatim.openstreetmap.org/search?q=' + $scope.event.location.direction + '&format=json&limit=1') .then(function(data) { console.log(data); if(data.data[0]) { $scope.event.location.geo.lat=data.data[0].lat; $scope.event.location.geo.long=data.data[0].lon; //$scope.newtravel.from.name=data.data[0].display_name;
$scope.markers.push({ lat: Number(data.data[0].lat), lng: Number(data.data[0].lon), message: $scope.event.location.direction }); $scope.center= { lat: Number(data.data[0].lat), lng: Number(data.data[0].lon), zoom: 16 }; } });
}; });
|