commonroutesApp/www/js/travels.js
www/js/travels.jsRaw
1angular.module('app.travels', ['pascalprecht.translate'])
2
3.controller('TravelsCtrl', function($scope, $http, $ionicModal, $timeout, $ionicLoading, $filter) {
4
5
6
7
8 $scope.doRefresh = function() {
9 /* travels refresh: */
10 $http.get(urlapi + 'travels')
11 .success(function(data, status, headers,config){
12 console.log('data success travels');
13 console.log(data); // for browser console
14 $scope.travels = data; // for UI
15 localStorage.setItem('c_travels', JSON.stringify($scope.travels));
16 localStorage.setItem('c_travelsLastDate', JSON.stringify(new Date()));
17 $scope.$broadcast('scroll.refreshComplete');//refresher stop
18
19 })
20 .error(function(data, status, headers,config){
21 console.log('data error');
22 $scope.$broadcast('scroll.refreshComplete');//refresher stop
23 $ionicLoading.show({ template: 'Error connecting server', noBackdrop: true, duration: 2000 });
24
25 })
26 .then(function(result){
27 travels = result.data;
28 $ionicLoading.show({ template: 'Travels actualized from server!', noBackdrop: true, duration: 2000 });
29 });
30
31 /* users refresh: */
32 $http.get(urlapi + 'users')
33 .success(function(data, status, headers, config){
34 console.log('data success users');
35 console.log(data); // for browser console
36 $scope.users = data; // for UI
37 localStorage.setItem('c_users', JSON.stringify($scope.users));
38 $scope.$broadcast('scroll.refreshComplete');//refresher stop
39
40 //set userdata
41 $scope.userdata = $filter('filter')($scope.users, {username: $scope.storageusername}, true)[0];
42 console.log("userdata");
43 console.log($scope.userdata);
44 localStorage.setItem("c_userdata", JSON.stringify($scope.userdata));
45 })
46 .error(function(data, status, headers,config){
47 console.log('data error');
48 $scope.$broadcast('scroll.refreshComplete');//refresher stop
49 })
50 .then(function(result){
51 users = result.data;
52 });
53 };
54 $scope.newtravel={};
55 /*$scope.newtravel={
56 title: "prova",
57 from: "prova",
58 to: "prova",
59 seats: 3,
60 package: true,
61 phone: 123,
62 telegram: "telusr",
63 description: "this is the description of prova"
64 };*/
65
66 // Create the login modal that we will use later
67 $ionicModal.fromTemplateUrl('templates/newofferingtravel.html', {
68 scope: $scope
69 }).then(function(modal) {
70 $scope.modalOffering = modal;
71 });
72
73 // Create the login modal that we will use later
74 $ionicModal.fromTemplateUrl('templates/newaskingtravel.html', {
75 scope: $scope
76 }).then(function(modal) {
77 $scope.modalAsking = modal;
78 });
79
80 $ionicModal.fromTemplateUrl('templates/newaskingpackage.html', {
81 scope: $scope
82 }).then(function(modal) {
83 $scope.modalPackage = modal;
84 });
85
86 // Triggered in the login modal to close it
87 $scope.closeNewOfferingTravel = function() {
88 $scope.modalOffering.hide();
89 };
90 // Triggered in the login modal to close it
91 $scope.closeNewAskingTravel = function() {
92 $scope.modalAsking.hide();
93 };
94 $scope.closeNewAskingPackage = function() {
95 $scope.modalPackage.hide();
96 };
97
98 // Open the login modal
99 $scope.showNewOfferingTravel = function() {
100 $scope.modalOffering.show();
101 };
102 // Open the login modal
103 $scope.showNewAskingTravel = function() {
104 $scope.modalAsking.show();
105 };
106 $scope.showNewAskingPackage = function() {
107 $scope.modalPackage.show();
108 };
109
110 // Perform the login action when the user submits the login form
111 $scope.doNewOfferingTravel = function() {
112 console.log('Doing new travel', $scope.newtravel);
113 $scope.newtravel.icon="lorry";
114 $scope.newtravel.generateddate=$scope.newtravel.date;
115 /*$scope.newtravel.owner=localStorage.getItem("c_username");
116 $scope.newtravel.telegram=JSON.parse(localStorage.getItem("c_userdata")).telegram;
117 $scope.newtravel.phone=JSON.parse(localStorage.getItem("c_userdata")).phone;*/
118 $scope.newtravel.modality="offering";
119 //$scope.newtravel.token=localStorage.getItem("c_token");
120 console.log($scope.newtravel);
121 $http({
122 url: urlapi + 'travels',
123 method: "POST",
124 data: $scope.newtravel
125 })
126 .then(function(response) {
127 // success
128 console.log("response: ");
129 console.log(response);
130 //$scope.newtravel._id=response.data._id;
131 //$scope.travels.push($scope.newtravel);
132 $scope.travels=response.data;
133 localStorage.setItem('c_travels', JSON.stringify($scope.travels));
134 localStorage.setItem('c_travelsLastDate', JSON.stringify(new Date()));
135 $scope.newtravel={};
136 if(response.data.success==false){
137
138 $ionicLoading.show({ template: 'failed to generate new travel', noBackdrop: true, duration: 2000 });
139 }
140 },
141 function(response) { // optional
142 // failed
143 $ionicLoading.show({ template: 'failed to generate new publication, all input fields needed', noBackdrop: true, duration: 2000 });
144 });
145
146 // Simulate a login delay. Remove this and replace with your login
147 // code if using a login system
148 $timeout(function() {
149 $scope.closeNewOfferingTravel();
150 }, 1000);
151 };
152
153 $scope.doNewAskingTravel = function() {
154 console.log('Doing new travel', $scope.newtravel);
155 $scope.newtravel.icon="lorry";
156 $scope.newtravel.generateddate=$scope.newtravel.date;
157 /*$scope.newtravel.owner=localStorage.getItem("c_username");
158 $scope.newtravel.telegram=JSON.parse(localStorage.getItem("c_userdata")).telegram;
159 $scope.newtravel.phone=JSON.parse(localStorage.getItem("c_userdata")).phone;*/
160
161 $scope.newtravel.modality="asking";
162 console.log($scope.newtravel);
163 $http({
164 url: urlapi + 'travels',
165 method: "POST",
166 data: $scope.newtravel
167 })
168 .then(function(response) {
169 // success
170 console.log("response: ");
171 console.log(response);
172 //$scope.newtravel._id=response.data._id;
173 //$scope.travels.push($scope.newtravel);
174 $scope.travels=response.data;
175 localStorage.setItem('c_travels', JSON.stringify($scope.travels));
176 localStorage.setItem('c_travelsLastDate', JSON.stringify(new Date()));
177 $scope.newtravel={};
178 if(response.data.success==false){
179
180 $ionicLoading.show({ template: 'failed to generate new asking travel', noBackdrop: true, duration: 2000 });
181 }
182 },
183 function(response) { // optional
184 // failed
185 $ionicLoading.show({ template: 'failed to generate new publication, all input fields needed', noBackdrop: true, duration: 2000 });
186 });
187
188 // Simulate a login delay. Remove this and replace with your login
189 // code if using a login system
190 $timeout(function() {
191 $scope.closeNewAskingTravel();
192 }, 1000);
193 };
194
195 $scope.doNewAskingPackage = function() {
196 console.log('Doing new package', $scope.newtravel);
197 $scope.newtravel.icon="lorry";
198 $scope.newtravel.generateddate=$scope.newtravel.date;
199 /*$scope.newtravel.owner=localStorage.getItem("c_username");
200 $scope.newtravel.telegram=JSON.parse(localStorage.getItem("c_userdata")).telegram;
201 $scope.newtravel.phone=JSON.parse(localStorage.getItem("c_userdata")).phone;*/
202
203 $scope.newtravel.package=true;
204
205 $scope.newtravel.modality="package";
206 console.log($scope.newtravel);
207 $http({
208 url: urlapi + 'travels',
209 method: "POST",
210 data: $scope.newtravel
211 })
212 .then(function(response) {
213 // success
214 console.log("response: ");
215 console.log(response);
216 //$scope.newtravel._id=response.data._id;
217 //$scope.travels.push($scope.newtravel);
218 $scope.travels=response.data;
219 localStorage.setItem('c_travels', JSON.stringify($scope.travels));
220 localStorage.setItem('c_travelsLastDate', JSON.stringify(new Date()));
221 $scope.newtravel={};
222 if(response.data.success==false){
223
224 $ionicLoading.show({ template: 'failed to generate new asking package', noBackdrop: true, duration: 2000 });
225 }
226 },
227 function(response) { // optional
228 // failed
229 $ionicLoading.show({ template: 'failed to generate new publication, all input fields needed', noBackdrop: true, duration: 2000 });
230 });
231
232 // Simulate a login delay. Remove this and replace with your login
233 // code if using a login system
234 $timeout(function() {
235 $scope.closeNewAskingPackage();
236 }, 1000);
237 };
238});