arnaucube
arnaucube/openEventsPlatformAppPublic Self-hosted repository
openEventsPlatformApp/www/js/app.js
www/js/app.jsRaw
  1//var urlapi = "http://localhost:3000/api/";
  2var urlapi = "http://192.168.1.33:3000/api/";
  3
  4
  5
  6angular.module('app', [
  7    'ionic',
  8    'pascalprecht.translate',
  9    'ngCordova',
 10    'app.menu',
 11    'app.main',
 12    'app.events',
 13    'app.mapEvents',
 14    'app.event',
 15    'app.alerts',
 16    'app.savedEvents',
 17    'app.categories',
 18    'app.byCategory',
 19    'app.place',
 20    'app.byPlace',
 21    'app.calendar',
 22    'app.byDay',
 23    'app.users',
 24    'app.user',
 25    'app.login',
 26    'app.userZone',
 27    'app.newEvent',
 28    'app.editUser',
 29    'app.statistics',
 30    'app.newAlert'
 31  ])
 32
 33.run(function($ionicPlatform) {
 34  $ionicPlatform.ready(function() {
 35    // Hide the accessory bar by default (remove this to show the accessory bar above the keyboard
 36    // for form inputs)
 37    if (window.cordova && window.cordova.plugins.Keyboard) {
 38      cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
 39      cordova.plugins.Keyboard.disableScroll(true);
 40
 41    }
 42    if (window.StatusBar) {
 43      // org.apache.cordova.statusbar required
 44      StatusBar.styleDefault();
 45    }
 46  });
 47})
 48
 49.config(function($stateProvider, $urlRouterProvider) {
 50  $stateProvider
 51
 52  // setup an abstract state for the tabs directive
 53    .state('app', {
 54        url: '/app',
 55        abstract: true,
 56        templateUrl: 'templates/menu.html',
 57        controller: 'MenuCtrl'
 58    })
 59
 60    .state('app.main', {
 61      url: '/main',
 62      views: {
 63        'menuContent': {
 64          templateUrl: 'templates/main.html',
 65          controller: 'MainCtrl'
 66        }
 67      }
 68    })
 69    .state('app.events', {
 70      url: '/events',
 71      views: {
 72        'menuContent': {
 73          templateUrl: 'templates/events.html',
 74          controller: 'EventsCtrl'
 75        }
 76      }
 77    })
 78    .state('app.mapEvents', {
 79      url: '/mapEvents',
 80      views: {
 81        'menuContent': {
 82          templateUrl: 'templates/mapEvents.html',
 83          controller: 'MapEventsCtrl'
 84        }
 85      }
 86    })
 87    .state('app.event', {
 88      url: '/events/:eventid',
 89      views: {
 90        'menuContent': {
 91          templateUrl: 'templates/event.html',
 92          controller: 'EventCtrl'
 93        }
 94      }
 95    })
 96    .state('app.alerts', {
 97      url: '/alerts',
 98      views: {
 99        'menuContent': {
100          templateUrl: 'templates/alerts.html',
101          controller: 'AlertsCtrl'
102        }
103      }
104    })
105    .state('app.savedEvents', {
106      url: '/savedEvents',
107      views: {
108        'menuContent': {
109          templateUrl: 'templates/savedEvents.html',
110          controller: 'SavedEventsCtrl'
111        }
112      }
113    })
114    .state('app.categories', {
115      url: '/categories',
116      views: {
117        'menuContent': {
118          templateUrl: 'templates/categories.html',
119          controller: 'CategoriesCtrl'
120        }
121      }
122    })
123    .state('app.byCategory', {
124      url: '/byCategory/:categoryname',
125      views: {
126        'menuContent': {
127          templateUrl: 'templates/byCategory.html',
128          controller: 'ByCategoryCtrl'
129        }
130      }
131    })
132    .state('app.place', {
133      url: '/place',
134      views: {
135        'menuContent': {
136          templateUrl: 'templates/place.html',
137          controller: 'PlaceCtrl'
138        }
139      }
140    })
141    .state('app.byPlace', {
142      url: '/byPlace/:place',
143      views: {
144        'menuContent': {
145          templateUrl: 'templates/byPlace.html',
146          controller: 'ByPlaceCtrl'
147        }
148      }
149    })
150    .state('app.calendar', {
151      url: '/calendar',
152      views: {
153        'menuContent': {
154          templateUrl: 'templates/calendar.html',
155          controller: 'CalendarCtrl'
156        }
157      }
158    })
159    .state('app.byDay', {
160      url: '/byDay/:day',
161      views: {
162        'menuContent': {
163          templateUrl: 'templates/byDay.html',
164          controller: 'ByDayCtrl'
165        }
166      }
167    })
168    .state('app.users', {
169      url: '/users',
170      views: {
171        'menuContent': {
172          templateUrl: 'templates/users.html',
173          controller: 'UsersCtrl'
174        }
175      }
176    })
177    .state('app.user', {
178      url: '/users/:userid',
179      views: {
180        'menuContent': {
181          templateUrl: 'templates/user.html',
182          controller: 'UserCtrl'
183        }
184      }
185    })
186    .state('app.login', {
187      url: '/login',
188      views: {
189        'menuContent': {
190          templateUrl: 'templates/login.html',
191          controller: 'LoginCtrl'
192        }
193      }
194    })
195    .state('app.userZone', {
196      url: '/userZone',
197      views: {
198        'menuContent': {
199          templateUrl: 'templates/userZone.html',
200          controller: 'UserZoneCtrl'
201        }
202      }
203    })
204    .state('app.newEvent', {
205      url: '/newEvent',
206      views: {
207        'menuContent': {
208          templateUrl: 'templates/newEvent.html',
209          controller: 'NewEventCtrl'
210        }
211      }
212    })
213    .state('app.editUser', {
214      url: '/editUser',
215      views: {
216        'menuContent': {
217          templateUrl: 'templates/editUser.html',
218          controller: 'EditUserCtrl'
219        }
220      }
221    })
222    .state('app.statistics', {
223      url: '/statistics',
224      views: {
225        'menuContent': {
226          templateUrl: 'templates/statistics.html',
227          controller: 'StatisticsCtrl'
228        }
229      }
230    })
231    .state('app.newAlert', {
232      url: '/newAlert',
233      views: {
234        'menuContent': {
235          templateUrl: 'templates/newAlert.html',
236          controller: 'NewAlertCtrl'
237        }
238      }
239    });
240
241  // if none of the above states are matched, use this as the fallback
242  $urlRouterProvider.otherwise('/app/main');
243})
244  /* translator */
245  .config(['$translateProvider', function($translateProvider) {
246
247    /* get lang from the file translations.js */
248    for (lang in translations) {
249      $translateProvider.translations(lang, translations[lang]);
250    }
251
252    if (window.localStorage.getItem('lang')) {
253      $translateProvider.preferredLanguage(window.localStorage.getItem('lang'));
254    } else {
255      $translateProvider.preferredLanguage('english');
256    };
257
258    $translateProvider.useSanitizeValueStrategy('escape');
259
260  }])
261  .factory('httpInterceptor', function httpInterceptor($q, $window, $location) {
262    return {
263      request: function(config) {
264        return config;
265      },
266      requestError: function(config) {
267        return config;
268      },
269      response: function(res) {
270        return res;
271      },
272      responseError: function(res) {
273        return res;
274      }
275    }
276  })
277  .factory('api', function($http) {
278    return {
279      init: function() {
280        $http.defaults.headers.common['X-Access-Token'] = localStorage.getItem("events_app_token");
281        $http.defaults.headers.post['X-Access-Token'] = localStorage.getItem("events_app_token");
282      }
283    };
284  })
285  .run(function(api) {
286    api.init();
287  });