notification system almost implemented at the app
arnaucode idoctnef@openmailbox.org
Tue, 18 Oct 2016 13:19:51 +0200
10 files changed,
79 insertions(+),
22 deletions(-)
M
www/js/app.js
→
www/js/app.js
@@ -52,7 +52,15 @@ controller: 'HelpCtrl'
} } }) - + .state('app.notifications', { + url: '/notifications/:username', + views: { + 'menuContent': { + templateUrl: 'templates/notifications.html', + controller: 'NotificationsCtrl' + } + } + }) .state('app.users', { url: '/users', views: {
M
www/js/controllers.js
→
www/js/controllers.js
@@ -23,6 +23,8 @@ $scope.signupData= {};
$scope.storageusername=localStorage.getItem("c_username"); $scope.storageavatar=localStorage.getItem("c_avatar"); + $scope.userdata=JSON.parse(localStorage.getItem('c_userdata')); + console.log($scope.userdata); // Create the login modal that we will use later $ionicModal.fromTemplateUrl('templates/login.html', { scope: $scope@@ -189,7 +191,7 @@ }
}) -.controller('TravelsCtrl', function($scope, $http, $ionicModal, $timeout, $ionicLoading) { +.controller('TravelsCtrl', function($scope, $http, $ionicModal, $timeout, $ionicLoading, $filter) { if(localStorage.getItem('c_token')){// adding token to the headers //console.log("token added to headers in run module"); //console.log($http.defaults);@@ -204,13 +206,14 @@
$scope.travels=""; $scope.travels=JSON.parse(localStorage.getItem('c_travels')); $scope.userdata=JSON.parse(localStorage.getItem('c_userdata')); + //$scope.storageusername=JSON.parse(localStorage.getItem('c_username')); console.log($scope.userdata); $scope.doRefresh = function() { /* travels refresh: */ $http.get(urlapi + 'travels') .success(function(data, status, headers,config){ - console.log('data success'); + console.log('data success travels'); console.log(data); // for browser console $scope.travels = data; // for UI localStorage.setItem('c_travels', JSON.stringify($scope.travels));@@ -232,11 +235,17 @@
/* users refresh: */ $http.get(urlapi + 'users') .success(function(data, status, headers, config){ - console.log('data success'); + console.log('data success users'); console.log(data); // for browser console $scope.users = data; // for UI localStorage.setItem('c_users', JSON.stringify($scope.users)); $scope.$broadcast('scroll.refreshComplete');//refresher stop + + //set userdata + $scope.userdata = $filter('filter')($scope.users, {username: $scope.storageusername}, true)[0]; + console.log("userdata"); + console.log($scope.userdata); + localStorage.setItem("c_userdata", JSON.stringify($scope.userdata)); }) .error(function(data, status, headers,config){ console.log('data error');@@ -307,9 +316,9 @@ $scope.doNewOfferingTravel = function() {
console.log('Doing new travel', $scope.newtravel); $scope.newtravel.icon="lorry"; $scope.newtravel.generateddate=$scope.newtravel.date; - $scope.newtravel.owner=localStorage.getItem("c_username"); + /*$scope.newtravel.owner=localStorage.getItem("c_username"); $scope.newtravel.telegram=JSON.parse(localStorage.getItem("c_userdata")).telegram; - $scope.newtravel.phone=JSON.parse(localStorage.getItem("c_userdata")).phone; + $scope.newtravel.phone=JSON.parse(localStorage.getItem("c_userdata")).phone;*/ $scope.newtravel.modality="offering"; //$scope.newtravel.token=localStorage.getItem("c_token"); console.log($scope.newtravel);@@ -349,9 +358,9 @@ $scope.doNewAskingTravel = function() {
console.log('Doing new travel', $scope.newtravel); $scope.newtravel.icon="lorry"; $scope.newtravel.generateddate=$scope.newtravel.date; - $scope.newtravel.owner=localStorage.getItem("c_username"); + /*$scope.newtravel.owner=localStorage.getItem("c_username"); $scope.newtravel.telegram=JSON.parse(localStorage.getItem("c_userdata")).telegram; - $scope.newtravel.phone=JSON.parse(localStorage.getItem("c_userdata")).phone; + $scope.newtravel.phone=JSON.parse(localStorage.getItem("c_userdata")).phone;*/ $scope.newtravel.modality="asking"; console.log($scope.newtravel);@@ -391,9 +400,9 @@ $scope.doNewAskingPackage = function() {
console.log('Doing new package', $scope.newtravel); $scope.newtravel.icon="lorry"; $scope.newtravel.generateddate=$scope.newtravel.date; - $scope.newtravel.owner=localStorage.getItem("c_username"); + /*$scope.newtravel.owner=localStorage.getItem("c_username"); $scope.newtravel.telegram=JSON.parse(localStorage.getItem("c_userdata")).telegram; - $scope.newtravel.phone=JSON.parse(localStorage.getItem("c_userdata")).phone; + $scope.newtravel.phone=JSON.parse(localStorage.getItem("c_userdata")).phone;*/ $scope.newtravel.package=true;@@ -487,9 +496,9 @@ };
$scope.joinTravel = function(){ $scope.newjoin={ //travelId: $stateParams.travelId, - joinedUserId: localStorage.getItem("c_userid"), + /*joinedUserId: localStorage.getItem("c_userid"), joinedUsername: localStorage.getItem("c_username"), - joinedAvatar: localStorage.getItem("c_avatar") + joinedAvatar: localStorage.getItem("c_avatar")*/ }; $http({ url: urlapi + 'travels/'+ $stateParams.travelId+'/join',@@ -515,9 +524,9 @@ $scope.unjoinTravel = function(){
console.log("unjoin"); $scope.unjoin={ travelId: $stateParams.travelId, - joinedUserId: localStorage.getItem("c_userid"), + /*joinedUserId: localStorage.getItem("c_userid"), joinedUsername: localStorage.getItem("c_username"), - joinedAvatar: localStorage.getItem("c_avatar") + joinedAvatar: localStorage.getItem("c_avatar")*/ }; $http({ url: urlapi + 'travels/'+ $stateParams.travelId+'/unjoin',@@ -551,9 +560,9 @@ $scope.closeNewComment = function() {
$scope.doingNewComment=false; }; $scope.doNewComment = function() { - $scope.newComment.commentUserId=localStorage.getItem("c_userid"); + /*$scope.newComment.commentUserId=localStorage.getItem("c_userid"); $scope.newComment.commentUsername=localStorage.getItem("c_username"); - $scope.newComment.commentAvatar=localStorage.getItem("c_avatar"); + $scope.newComment.commentAvatar=localStorage.getItem("c_avatar");*/ console.log($scope.newComment); $http({ url: urlapi + 'travels/'+ $stateParams.travelId+'/comment',@@ -600,7 +609,7 @@ return -1;
}; }) -.controller('UsersCtrl', function($scope, $http, $ionicModal, $timeout, $ionicLoading) { +.controller('UsersCtrl', function($scope, $http, $ionicModal, $timeout, $ionicLoading, $filter) { $scope.users=""; $scope.users=JSON.parse(localStorage.getItem('c_users'));@@ -636,6 +645,12 @@ console.log(data); // for browser console
$scope.users = data; // for UI localStorage.setItem('c_users', JSON.stringify($scope.users)); $scope.$broadcast('scroll.refreshComplete');//refresher stop + + //set userdata + $scope.userdata = $filter('filter')($scope.users, {username: $scope.storageusername}, true)[0]; + console.log("userdata"); + console.log($scope.userdata); + localStorage.setItem("c_userdata", JSON.stringify($scope.userdata)); }) .error(function(data, status, headers,config){ console.log('data error');@@ -687,9 +702,9 @@
$scope.favUser = function(){ $scope.newfav={ //travelId: $stateParams.travelId, - userId: localStorage.getItem("c_userid"), + /*userId: localStorage.getItem("c_userid"), username: localStorage.getItem("c_username"), - avatar: localStorage.getItem("c_avatar") + avatar: localStorage.getItem("c_avatar")*/ }; $scope.user.favs.push($scope.newfav);//al unfav no cal fer aquest simulacre pq ja no existeix a l'array i no el resta dos cops en cas de que cliquin dos cops $http({@@ -715,9 +730,9 @@ };
$scope.unfavUser = function(){ console.log("unfav"); $scope.unfav={ - userId: localStorage.getItem("c_userid"), + /*userId: localStorage.getItem("c_userid"), username: localStorage.getItem("c_username"), - avatar: localStorage.getItem("c_avatar") + avatar: localStorage.getItem("c_avatar")*/ }; $http({ //url: urlapi + 'users/'+ $stateParams.username+'/fav',@@ -766,6 +781,20 @@ }
return -1; }; }) +.controller('NotificationsCtrl', function($scope, $stateParams, $translate, $filter) { + if(localStorage.getItem('c_token')){// adding token to the headers + // $http.defaults.headers.common['X-Access-Token'] = localStorage.getItem('c_token'); + } + $scope.storageusername=localStorage.getItem("c_username"); + $scope.users= JSON.parse(localStorage.getItem('c_users')); + $scope.user = $filter('filter')($scope.users, {username: $stateParams.username}, true)[0]; + $scope.notifications=$scope.user.notifications; + + console.log($stateParams.username); + console.log($scope.notifications); + console.log("notifications page"); +}) + .controller('SettingsCtrl', function($scope, $stateParams, $translate) { if(localStorage.getItem('lang'))//initialization {
M
www/js/translations.js
→
www/js/translations.js
@@ -6,6 +6,7 @@ "Signup": "Signup",
"Login": "Login", "Travels": "Travels", "Users": "Users", + "Notifications": "Notifications", "Logout": "Logout", "Settings": "Settings", "Help": "Help",
A
www/templates/notifications.html
@@ -0,0 +1,14 @@
+<ion-view view-title="{{'Notifications' | translate}} {{user.username}}"> + <ion-content> + <div class="item item-body"> + <a ng-repeat="notification in notifications | orderBy: '-date'" class="item item-avatar" href="#/app/{{notification.link}}"> + <img ng-src="img/{{notification.type}}.png"/> + <h2>{{notification.description}}</h2> + <div class="item-note text-right"> + <div class="positive">{{notification.date | date:"dd/MM"}}</div> + <div class="positive">{{notification.date | date:"HH:mm:ss"}}</div> + </div> + </a> + </div> + </ion-content> +</ion-view>
M
www/templates/settings.html
→
www/templates/settings.html
@@ -10,7 +10,7 @@ <option value="catala">català</option>
</select> </label> <p> - version: CarsInCommon-v011 + version: CarsInCommon-v012 </p> </ion-content> </ion-view>