commonroutesApp/www/js/user.js
www/js/user.jsRaw
1angular.module('app.user', ['pascalprecht.translate'])
2
3.controller('UserCtrl', function($scope, $stateParams, $http,
4 $ionicLoading, $filter, $ionicModal) {
5
6 $scope.storageuser = JSON.parse(localStorage.getItem("cim_app_userdata"));
7 $scope.user={};
8 $scope.doRefresh = function(){
9 $http.get(urlapi + 'users/id/'+$stateParams.userid)
10 .then(function(data, status, headers,config){
11 console.log('data success');
12 console.log(data); // for browser console
13 $scope.user = data.data; // for UI
14 if($scope.storageuser._id==$scope.user._id)
15 {
16 localStorage.setItem("cim_app_userdata", JSON.stringify(data.data));
17 }
18 $scope.$broadcast('scroll.refreshComplete');//refresher stop
19 },function(data, status, headers,config){
20 console.log('data error');
21 $scope.$broadcast('scroll.refreshComplete');//refresher stop
22 });
23 };
24 $scope.doRefresh();
25
26 $scope.likeUser = function(){
27 $http({
28 //url: urlapi + 'users/'+ $stateParams.username+'/fav',
29 url: urlapi + 'users/id/like/'+ $scope.user._id,
30 method: "POST",
31 data: {}
32 })
33 .then(function(data) {
34 // success
35 if(data.data.success==false){
36 console.log("failed");
37 $ionicLoading.show({template: 'Error on like', noBackdrop: true, duration: 2000});
38 }else{
39 $scope.user = data.data; // for UI
40 }
41 },
42 function(response) { // optional
43 // failed
44 });
45 };
46 $scope.unlikeUser = function(){
47 $http({
48 //url: urlapi + 'users/'+ $stateParams.username+'/fav',
49 url: urlapi + 'users/id/unlike/'+ $scope.user._id,
50 method: "POST",
51 data: {}
52 })
53 .then(function(data) {
54 // success
55 if(data.data.success==false){
56 console.log("failed");
57 $ionicLoading.show({template: 'Error on unlike', noBackdrop: true, duration: 2000});
58 }else{
59 $scope.user = data.data; // for UI
60 }
61 },
62 function(response) { // optional
63 // failed
64 });
65 };
66
67
68 $scope.favUser = function(){
69 $scope.newfav={
70 //travelId: $stateParams.travelId,
71 /*userId: localStorage.getItem("c_userid"),
72 username: localStorage.getItem("c_username"),
73 avatar: localStorage.getItem("c_avatar")*/
74 };
75 $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
76 $http({
77 //url: urlapi + 'users/'+ $stateParams.username+'/fav',
78 url: urlapi + 'users/'+ $scope.user._id+'/fav',
79 method: "POST",
80 data: $scope.newfav
81 })
82 .then(function(response) {
83 // success
84 console.log("response: ");
85 console.log(response);
86
87 $scope.users=response.data;
88 localStorage.setItem('c_users', JSON.stringify($scope.users));
89 $scope.user = $filter('filter')($scope.users, {username: $stateParams.username}, true)[0];
90
91 },
92 function(response) { // optional
93 // failed
94 });
95 };
96 $scope.unfavUser = function(){
97 console.log("unfav");
98 $scope.unfav={
99 /*userId: localStorage.getItem("c_userid"),
100 username: localStorage.getItem("c_username"),
101 avatar: localStorage.getItem("c_avatar")*/
102 };
103 $http({
104 //url: urlapi + 'users/'+ $stateParams.username+'/fav',
105 url: urlapi + 'users/'+ $scope.user._id+'/unfav',
106 method: "POST",
107 data: $scope.unfav
108 })
109 .then(function(response) {
110 // success
111 console.log("response: ");
112 console.log(response);
113
114 $scope.users=response.data;
115 localStorage.setItem('c_users', JSON.stringify($scope.users));
116 $scope.user = $filter('filter')($scope.users, {username: $stateParams.username}, true)[0];
117
118 },
119 function(response) { // optional
120 // failed
121 });
122 };
123
124 $ionicModal.fromTemplateUrl('templates/favsList.html', {
125 scope: $scope
126 }).then(function(modal) {
127 $scope.modalFavsList = modal;
128 });
129 $scope.closeModalFavsList = function() {
130 $scope.modalFavsList.hide();
131 };
132 $scope.showFavsList = function(){
133 $scope.modalFavsList.show();
134 };
135 $scope.closeModalAndGoUser = function(){
136 $scope.modalFavsList.hide();
137 };
138
139 $scope.arrayObjectIndexOf = function(myArray, searchTerm) {
140 if(myArray){
141 for(var i = 0, len = myArray.length; i < len; i++) {
142 if (myArray[i] === searchTerm){
143 return i;
144 }
145 }
146 }
147 return -1;
148 };
149});