commonroutesServer/app/www/js/controllers.js
app/www/js/controllers.jsRaw
1
2//var urlapi="http://localhost:3000/api/";
3var urlapi="http://192.168.1.40:3000/api/";
4//localStorage.setItem("c_username", "user2");
5//localStorage.setItem("c_token", "");
6
7
8angular.module('starter.controllers', [])
9
10.controller('AppCtrl', function($scope, $ionicModal, $timeout, $http, $window) {
11 // With the new view caching in Ionic, Controllers are only called
12 // when they are recreated or on app start, instead of every page change.
13 // To listen for when this page is active (for example, to refresh data),
14 // listen for the $ionicView.enter event:
15 //$scope.$on('$ionicView.enter', function(e) {
16 //});
17
18 // Form data for the login modal
19 $scope.loginData = {};
20 $scope.signupData= {};
21
22 $scope.storageusername=localStorage.getItem("c_username");
23 // Create the login modal that we will use later
24 $ionicModal.fromTemplateUrl('templates/login.html', {
25 scope: $scope
26 }).then(function(modal) {
27 $scope.modalLogin = modal;
28 });
29 $ionicModal.fromTemplateUrl('templates/signup.html', {
30 scope: $scope
31 }).then(function(modal) {
32 $scope.modalSignup = modal;
33 });
34
35 // Triggered in the login modal to close it
36 $scope.closeLogin = function() {
37 $scope.modalLogin.hide();
38 };
39 $scope.closeSignup = function() {
40 $scope.modalSignup.hide();
41 };
42
43 // Open the login modal
44 $scope.login = function() {
45 $scope.modalLogin.show();
46 };
47 $scope.signup = function() {
48 $scope.modalSignup.show();
49 };
50
51 // Perform the login action when the user submits the login form
52 $scope.doLogin = function() {
53 console.log('Doing login', $scope.loginData);
54
55 $http({
56 url: urlapi + 'auth',
57 method: "POST",
58 data: $scope.loginData
59 })
60 .then(function(response) {
61 // success
62 console.log("response: ");
63 console.log(response.data);
64 if(response.data.success==true)
65 {
66 console.log("login successful");
67 localStorage.setItem("c_username", $scope.loginData.username);
68 localStorage.setItem("c_token", response.data.token);
69 }else{
70 console.log("login failed");
71 }
72 $timeout(function() {
73 $scope.closeLogin();
74 $window.location.reload(true);
75 }, 1000);
76
77 },
78 function(response) { // optional
79 // failed
80 });
81
82 };
83 $scope.doSignup = function() {
84 console.log('Doing signup', $scope.signupData);
85
86 $http({
87 url: urlapi + 'users',
88 method: "POST",
89 data: $scope.signupData
90 })
91 .then(function(response) {
92 // success
93 console.log("response: ");
94 console.log(response.data);
95 $timeout(function() {
96 $scope.closeSignup();
97 }, 1000);
98
99 },
100 function(response) { // optional
101 // failed
102 });
103
104 };
105 $scope.logout = function(){
106 localStorage.removeItem("c_username");
107 localStorage.removeItem("c_token");
108 $window.location.reload(true);
109 };
110})
111
112
113.controller('TravelsCtrl', function($scope, $http, $ionicModal, $timeout) {
114 $scope.travels="";
115
116 $scope.travels=JSON.parse(localStorage.getItem('c_travels'));
117
118 $scope.doRefresh = function() {
119 $http.get(urlapi + 'travels')
120 .success(function(data, status, headers,config){
121 console.log('data success');
122 console.log(data); // for browser console
123 $scope.travels = data; // for UI
124 localStorage.setItem('c_travels', JSON.stringify($scope.travels));
125 $scope.$broadcast('scroll.refreshComplete');//refresher stop
126 })
127 .error(function(data, status, headers,config){
128 console.log('data error');
129 $scope.$broadcast('scroll.refreshComplete');//refresher stop
130 })
131 .then(function(result){
132 travels = result.data;
133 });
134 };
135
136 $scope.newtravel={};
137
138 // Create the login modal that we will use later
139 $ionicModal.fromTemplateUrl('templates/newofferingtravel.html', {
140 scope: $scope
141 }).then(function(modal) {
142 $scope.modalOffering = modal;
143 });
144
145 // Create the login modal that we will use later
146 $ionicModal.fromTemplateUrl('templates/newaskingtravel.html', {
147 scope: $scope
148 }).then(function(modal) {
149 $scope.modalAsking = modal;
150 });
151
152 $ionicModal.fromTemplateUrl('templates/newaskingpackage.html', {
153 scope: $scope
154 }).then(function(modal) {
155 $scope.modalPackage = modal;
156 });
157
158 // Triggered in the login modal to close it
159 $scope.closeNewOfferingTravel = function() {
160 $scope.modalOffering.hide();
161 };
162 // Triggered in the login modal to close it
163 $scope.closeNewAskingTravel = function() {
164 $scope.modalAsking.hide();
165 };
166 $scope.closeNewAskingPackage = function() {
167 $scope.modalPackage.hide();
168 };
169
170 // Open the login modal
171 $scope.showNewOfferingTravel = function() {
172 $scope.modalOffering.show();
173 };
174 // Open the login modal
175 $scope.showNewAskingTravel = function() {
176 $scope.modalAsking.show();
177 };
178 $scope.showNewAskingPackage = function() {
179 $scope.modalPackage.show();
180 };
181
182 // Perform the login action when the user submits the login form
183 $scope.doNewOfferingTravel = function() {
184 console.log('Doing new travel', $scope.newtravel);
185 $scope.newtravel.icon="lorry";
186 $scope.newtravel.generateddate=$scope.newtravel.date;
187 $scope.newtravel.owner=localStorage.getItem("c_username");
188
189 $scope.newtravel.modality="offering";
190 console.log($scope.newtravel);
191 $http({
192 url: urlapi + 'travels',
193 method: "POST",
194 data: $scope.newtravel
195 })
196 .then(function(response) {
197 // success
198 console.log("response: ");
199 console.log(response);
200 $scope.newtravel._id=response.data._id;
201 $scope.travels.push($scope.newtravel);
202 $scope.newtravel={};
203 },
204 function(response) { // optional
205 // failed
206 });
207
208 // Simulate a login delay. Remove this and replace with your login
209 // code if using a login system
210 $timeout(function() {
211 $scope.closeNewOfferingTravel();
212 }, 1000);
213 };
214
215 $scope.doNewAskingTravel = function() {
216 console.log('Doing new travel', $scope.newtravel);
217 $scope.newtravel.icon="lorry";
218 $scope.newtravel.generateddate=$scope.newtravel.date;
219 $scope.newtravel.owner=localStorage.getItem("c_username");
220
221 $scope.newtravel.modality="asking";
222 console.log($scope.newtravel);
223 $http({
224 url: urlapi + 'travels',
225 method: "POST",
226 data: $scope.newtravel
227 })
228 .then(function(response) {
229 // success
230 console.log("response: ");
231 console.log(response);
232 $scope.newtravel._id=response.data._id;
233 $scope.travels.push($scope.newtravel);
234 },
235 function(response) { // optional
236 // failed
237 });
238
239 // Simulate a login delay. Remove this and replace with your login
240 // code if using a login system
241 $timeout(function() {
242 $scope.closeNewAskingTravel();
243 }, 1000);
244 };
245
246 $scope.doNewAskingPackage = function() {
247 console.log('Doing new package', $scope.newtravel);
248 $scope.newtravel.icon="lorry";
249 $scope.newtravel.generateddate=$scope.newtravel.date;
250 $scope.newtravel.owner=localStorage.getItem("c_username");
251 $scope.newtravel.package=true;
252
253 $scope.newtravel.modality="package";
254 console.log($scope.newtravel);
255 $http({
256 url: urlapi + 'travels',
257 method: "POST",
258 data: $scope.newtravel
259 })
260 .then(function(response) {
261 // success
262 console.log("response: ");
263 console.log(response);
264 $scope.newtravel._id=response.data._id;
265 $scope.travels.push($scope.newtravel);
266 },
267 function(response) { // optional
268 // failed
269 });
270
271 // Simulate a login delay. Remove this and replace with your login
272 // code if using a login system
273 $timeout(function() {
274 $scope.closeNewAskingPackage();
275 }, 1000);
276 };
277})
278
279.controller('TravelCtrl', function($scope, $stateParams, $http) {
280 $scope.storageusername=localStorage.getItem("c_username");
281 $scope.travel="";
282 console.log($stateParams.travelId);
283 $http.get(urlapi + 'travels/'+$stateParams.travelId)
284 .success(function(data, status, headers,config){
285 console.log('data success');
286 console.log(data); // for browser console
287 $scope.travel = data; // for UI
288 })
289 .error(function(data, status, headers,config){
290 console.log('data error');
291 })
292 .then(function(result){
293 travels = result.data;
294 });
295})
296
297.controller('UsersCtrl', function($scope, $http, $ionicModal, $timeout) {
298 $scope.users="";
299
300 $scope.users=JSON.parse(localStorage.getItem('c_users'));
301
302 $scope.doRefresh = function() {
303 $http.get(urlapi + 'users')
304 .success(function(data, status, headers, config){
305 console.log('data success');
306 console.log(data); // for browser console
307 $scope.users = data; // for UI
308 localStorage.setItem('c_users', JSON.stringify($scope.users));
309 $scope.$broadcast('scroll.refreshComplete');//refresher stop
310 })
311 .error(function(data, status, headers,config){
312 console.log('data error');
313 $scope.$broadcast('scroll.refreshComplete');//refresher stop
314 })
315 .then(function(result){
316 users = result.data;
317 });
318 };
319})
320
321.controller('UserCtrl', function($scope, $stateParams, $http) {
322 //$scope.user="";
323 console.log($stateParams.username);
324 $http.get(urlapi + 'users/byusername/'+$stateParams.username)
325 .success(function(data, status, headers,config){
326 console.log('data success');
327 console.log(data); // for browser console
328 $scope.user = data; // for UI
329 })
330 .error(function(data, status, headers,config){
331 console.log('data error');
332 })
333 .then(function(result){
334 user = result.data;
335 });
336
337 $http.get(urlapi + 'travels/user/'+$stateParams.username)
338 .success(function(data, status, headers,config){
339 console.log('data success');
340 console.log(data); // for browser console
341 $scope.travels = data; // for UI
342 })
343 .error(function(data, status, headers,config){
344 console.log('data error');
345 })
346 .then(function(result){
347 travels = result.data;
348 });
349});