arnaucube
arnaucube/commonroutesServerPublic Self-hosted repository
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});