mirror of
https://github.com/arnaucube/commonroutesApp.git
synced 2026-02-07 03:26:44 +01:00
notification system fixed
This commit is contained in:
@@ -6,8 +6,8 @@
|
||||
// 'starter.controllers' is found in controllers.js
|
||||
|
||||
|
||||
//var urlapi = "http://localhost:3000/api/";
|
||||
var urlapi = "http://192.168.1.36:3000/api/";
|
||||
var urlapi = "http://localhost:3000/api/";
|
||||
//var urlapi = "http://192.168.1.36:3000/api/";
|
||||
//var urlapi = "http://51.255.193.106:3000/api/";
|
||||
|
||||
angular.module('starter', [
|
||||
@@ -24,8 +24,8 @@ angular.module('starter', [
|
||||
'app.travel',
|
||||
'app.newTravel',
|
||||
'app.offerCar',
|
||||
/* 'app.askCar',
|
||||
'app.askPackage',*/
|
||||
/* 'app.askCar',
|
||||
'app.askPackage',*/
|
||||
'app.users',
|
||||
'app.user',
|
||||
'app.userTravels',
|
||||
@@ -56,12 +56,14 @@ angular.module('starter', [
|
||||
$stateProvider
|
||||
|
||||
.state('app', {
|
||||
cache: false,
|
||||
url: '/app',
|
||||
abstract: true,
|
||||
templateUrl: 'templates/menu.html',
|
||||
controller: 'MenuCtrl'
|
||||
})
|
||||
.state('app.main', {
|
||||
cache: false,
|
||||
url: '/main',
|
||||
views: {
|
||||
'menuContent': {
|
||||
@@ -209,19 +211,19 @@ angular.module('starter', [
|
||||
});
|
||||
// if none of the above states are matched, use this as the fallback
|
||||
if ((localStorage.getItem("cim_app_token")) && (JSON.parse(localStorage.getItem("cim_app_userdata")) != "null") && (JSON.parse(localStorage.getItem("cim_app_userdata")) != null)) {
|
||||
if ((window.location.hash == "#/app/login") || (window.location.hash == "#/app/signup")) {
|
||||
window.location = '#/app/main';
|
||||
}
|
||||
$urlRouterProvider.otherwise('/app/main');
|
||||
} else {
|
||||
if ((window.location != "#/app/login") || (window.location != "#/app/signup")) {
|
||||
console.log("removing data, and going to login");
|
||||
localStorage.removeItem("cim_app_token");
|
||||
localStorage.removeItem("cim_app_userdata");
|
||||
window.location = "#/app/login";
|
||||
$urlRouterProvider.otherwise('/app/login');
|
||||
}
|
||||
}
|
||||
if ((window.location.hash == "#/app/login") || (window.location.hash == "#/app/signup")) {
|
||||
window.location = '#/app/main';
|
||||
}
|
||||
$urlRouterProvider.otherwise('/app/main');
|
||||
} else {
|
||||
if ((window.location != "#/app/login") || (window.location != "#/app/signup")) {
|
||||
console.log("removing data, and going to login");
|
||||
localStorage.removeItem("cim_app_token");
|
||||
localStorage.removeItem("cim_app_userdata");
|
||||
window.location = "#/app/login";
|
||||
$urlRouterProvider.otherwise('/app/login');
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
@@ -244,29 +246,29 @@ angular.module('starter', [
|
||||
|
||||
}])
|
||||
.factory('httpInterceptor', function httpInterceptor($q, $window, $location) {
|
||||
return {
|
||||
request: function (config) {
|
||||
return config;
|
||||
},
|
||||
requestError: function (config) {
|
||||
return config;
|
||||
},
|
||||
response: function (res) {
|
||||
return res;
|
||||
},
|
||||
responseError: function (res) {
|
||||
return res;
|
||||
}
|
||||
}
|
||||
})
|
||||
.factory('api', function ($http) {
|
||||
return {
|
||||
init: function () {
|
||||
$http.defaults.headers.common['X-Access-Token'] = localStorage.getItem("cim_app_token");
|
||||
$http.defaults.headers.post['X-Access-Token'] = localStorage.getItem("cim_app_token");
|
||||
}
|
||||
};
|
||||
})
|
||||
.run(function (api) {
|
||||
api.init();
|
||||
});
|
||||
return {
|
||||
request: function(config) {
|
||||
return config;
|
||||
},
|
||||
requestError: function(config) {
|
||||
return config;
|
||||
},
|
||||
response: function(res) {
|
||||
return res;
|
||||
},
|
||||
responseError: function(res) {
|
||||
return res;
|
||||
}
|
||||
}
|
||||
})
|
||||
.factory('api', function($http) {
|
||||
return {
|
||||
init: function() {
|
||||
$http.defaults.headers.common['X-Access-Token'] = localStorage.getItem("cim_app_token");
|
||||
$http.defaults.headers.post['X-Access-Token'] = localStorage.getItem("cim_app_token");
|
||||
}
|
||||
};
|
||||
})
|
||||
.run(function(api) {
|
||||
api.init();
|
||||
});
|
||||
|
||||
@@ -1,5 +1,23 @@
|
||||
angular.module('app.main', ['pascalprecht.translate'])
|
||||
|
||||
.controller('MainCtrl', function($scope, $stateParams, $translate, $filter) {
|
||||
|
||||
});
|
||||
.controller('MainCtrl', function($scope, $stateParams, $translate, $filter,
|
||||
$ionicLoading, $http) {
|
||||
if (localStorage.getItem("cim_app_userdata")) {
|
||||
$scope.storageuser = JSON.parse(localStorage.getItem("cim_app_userdata"));
|
||||
console.log($scope.storageuser);
|
||||
}
|
||||
//get the num of pendent notifications each time
|
||||
$http.get(urlapi + 'numnotifications')
|
||||
.then(function(data) {
|
||||
$scope.storageuser.notifications = data.data;
|
||||
console.log(data.data);
|
||||
localStorage.setItem("cim_app_storageuser", JSON.stringify($scope.storageuser));
|
||||
}, function(data) {
|
||||
console.log('data error');
|
||||
$ionicLoading.show({
|
||||
template: 'Error connecting server',
|
||||
noBackdrop: true,
|
||||
duration: 2000
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -10,6 +10,8 @@ angular.module('app.menu', ['pascalprecht.translate'])
|
||||
$scope.logout = function() {
|
||||
localStorage.removeItem("cim_app_token");
|
||||
localStorage.removeItem("cim_app_userdata");
|
||||
localStorage.removeItem("cim_app_storageuser");
|
||||
localStorage.removeItem("cim_app_notifications");
|
||||
$window.location.reload(true);
|
||||
};
|
||||
});
|
||||
|
||||
@@ -1,25 +1,52 @@
|
||||
angular.module('app.notifications', ['pascalprecht.translate'])
|
||||
|
||||
.controller('NotificationsCtrl', function($scope, $http, $ionicLoading,
|
||||
$stateParams, $translate, $filter) {
|
||||
$scope.notifications=[];
|
||||
$scope.doRefresh = function(){
|
||||
$http.get(urlapi + 'notifications')
|
||||
.then(function(data){
|
||||
console.log(data); // for browser console
|
||||
$scope.storageuser = JSON.parse(localStorage.getItem("cim_app_userdata"));
|
||||
$scope.storageuser.notifications = data.data;
|
||||
localStorage.setItem("cim_app_userdata", JSON.stringify($scope.storageuser));
|
||||
.controller('NotificationsCtrl', function($scope, $http, $ionicLoading,
|
||||
$stateParams, $translate, $filter) {
|
||||
$scope.notifications = [];
|
||||
$scope.doRefresh = function() {
|
||||
//first, if already have notifications, set to viewed
|
||||
if(localStorage.getItem("cim_app_notifications")!=undefined){
|
||||
//console.log(localStorage.getItem("cim_app_notifications"));
|
||||
$scope.notifications = JSON.parse(localStorage.getItem("cim_app_notifications"));
|
||||
for(var i=0; i<$scope.notifications.length; i++){
|
||||
$scope.notifications[i].state = "viewed";
|
||||
}
|
||||
localStorage.setItem("cim_app_notifications", JSON.stringify($scope.notifications));
|
||||
}
|
||||
$http.get(urlapi + 'notifications')
|
||||
.then(function(data) {
|
||||
//console.log(data); // for browser console
|
||||
/*$scope.storageuser = JSON.parse(localStorage.getItem("cim_app_userdata"));
|
||||
$scope.storageuser.notifications = [];
|
||||
console.log($scope.storageuser.notifications.length);
|
||||
localStorage.setItem("cim_app_userdata", JSON.stringify($scope.storageuser));*/
|
||||
|
||||
$scope.notifications = data.data; // for UI
|
||||
$scope.$broadcast('scroll.refreshComplete');//refresher stop
|
||||
//get the storage notifications
|
||||
if (localStorage.getItem("cim_app_notifications")) {
|
||||
$scope.notifications = JSON.parse(localStorage.getItem("cim_app_notifications"));
|
||||
$scope.notifications = $scope.notifications.concat(data.data); // for UI
|
||||
} else {
|
||||
$scope.notifications = data.data;
|
||||
}
|
||||
//store the notifications
|
||||
localStorage.setItem("cim_app_notifications", JSON.stringify($scope.notifications));
|
||||
|
||||
}, function(data){
|
||||
console.log('data error');
|
||||
$scope.$broadcast('scroll.refreshComplete');//refresher stop
|
||||
$ionicLoading.show({ template: 'Error connecting server', noBackdrop: true, duration: 2000 });
|
||||
//now clean the notification number that is showed in the menu and main page, from the storageuser.notifications
|
||||
/*$scope.storageuser = JSON.parse(localStorage.getItem("cim_app_userdata"));
|
||||
$scope.storageuser.pendentnotifications = [];
|
||||
localStorage.setItem("cim_app_userdata", JSON.stringify($scope.storageuser));*/
|
||||
$scope.$broadcast('scroll.refreshComplete'); //refresher stop
|
||||
|
||||
}, function(data) {
|
||||
console.log('data error');
|
||||
$scope.$broadcast('scroll.refreshComplete'); //refresher stop
|
||||
$ionicLoading.show({
|
||||
template: 'Error connecting server',
|
||||
noBackdrop: true,
|
||||
duration: 2000
|
||||
});
|
||||
|
||||
});
|
||||
};
|
||||
$scope.doRefresh();
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user