56 |
56 |
if interests is None:
|
57 |
57 |
interests = [] # reset
|
58 |
58 |
url = urlparse.urljoin(self.liferay_api_url, 'jsonws/interest.interest/set-user-interests')
|
59 |
|
response = self.requests.post(url, data={'userId': name_id, 'interestIds': ','.join(interests)}).json()
|
|
59 |
try:
|
|
60 |
response = self.requests.post(url, data={'userId': name_id, 'interestIds': ','.join(interests)}).json()
|
|
61 |
except ValueError:
|
|
62 |
return {'err': 2, 'err_desc': 'invalid service answer'}
|
60 |
63 |
if 'error' in response:
|
61 |
64 |
return {'err': 1, 'err_desc': response.get('error')}
|
62 |
65 |
url = urlparse.urljoin(self.liferay_api_url, 'jsonws/interest.interest/get-interests')
|
63 |
|
response = self.requests.get(url).json()
|
|
66 |
try:
|
|
67 |
response = self.requests.get(url).json()
|
|
68 |
except ValueError:
|
|
69 |
return {'err': 2, 'err_desc': 'invalid service answer'}
|
64 |
70 |
interests = response.get('interests')
|
65 |
71 |
if interests is None:
|
66 |
72 |
return {'err': 1, 'err_desc': response.get('error')}
|
67 |
73 |
if name_id is not None:
|
68 |
74 |
url = urlparse.urljoin(self.liferay_api_url, 'jsonws/interest.interest/get-user-interests')
|
69 |
|
user_choices = self.requests.post(url, data={'userId': name_id}).json().get('interests')
|
|
75 |
try:
|
|
76 |
user_choices = self.requests.post(url, data={'userId': name_id}).json().get('interests')
|
|
77 |
except ValueError:
|
|
78 |
return {'err': 2, 'err_desc': 'invalid service answer'}
|
70 |
79 |
interests = [x for x in interests if x['id'] in user_choices]
|
71 |
80 |
for interest in interests:
|
72 |
81 |
interest['text'] = '%s / %s' % (interest['type'], interest['name'])
|
... | ... | |
80 |
89 |
def notifications(self, request, name_id, **kwargs):
|
81 |
90 |
if request.method == 'GET':
|
82 |
91 |
url = urlparse.urljoin(self.liferay_api_url, 'jsonws/notification.notification/get-user-notifications')
|
83 |
|
notifications = self.requests.post(url, data={'userId': name_id}).json()
|
|
92 |
try:
|
|
93 |
notifications = self.requests.post(url, data={'userId': name_id}).json()
|
|
94 |
except ValueError:
|
|
95 |
return {'err': 2, 'err_desc': 'invalid service answer'}
|
84 |
96 |
if 'error' in notifications:
|
85 |
97 |
return {'err': 1, 'err_desc': notifications.get('error')}
|
86 |
98 |
for notification in notifications['notifications']:
|
... | ... | |
105 |
117 |
notification = json_loads(request.body)
|
106 |
118 |
notification['userId'] = name_id
|
107 |
119 |
url = urlparse.urljoin(self.liferay_api_url, 'jsonws/notification.notification/add-notification')
|
108 |
|
response = self.requests.post(url, data=notification).json()
|
|
120 |
try:
|
|
121 |
response = self.requests.post(url, data=notification).json()
|
|
122 |
except ValueError:
|
|
123 |
return {'err': 2, 'err_desc': 'invalid service answer'}
|
109 |
124 |
if response.get('success'):
|
110 |
125 |
return {'err': 0, 'err_desc': response.get('success')}
|
111 |
126 |
else:
|
... | ... | |
118 |
133 |
def favorites(self, request, name_id, url_filter=None, **kwargs):
|
119 |
134 |
if request.method == 'GET':
|
120 |
135 |
url = urlparse.urljoin(self.liferay_api_url, 'jsonws/favorite.favorite/get-user-favorites')
|
121 |
|
response = self.requests.post(url, data={'userId': name_id}).json()
|
|
136 |
try:
|
|
137 |
response = self.requests.post(url, data={'userId': name_id}).json()
|
|
138 |
except ValueError:
|
|
139 |
return {'err': 2, 'err_desc': 'invalid service answer'}
|
122 |
140 |
if 'error' in response:
|
123 |
141 |
return {'err': 1, 'err_desc': response.get('error')}
|
124 |
142 |
favorites = response['favorites']
|
... | ... | |
131 |
149 |
favorite = json_loads(request.body)
|
132 |
150 |
# change type to typeId
|
133 |
151 |
types_url = urlparse.urljoin(self.liferay_api_url, 'jsonws/favorite.favorite/get-types')
|
134 |
|
types = self.requests.get(types_url).json()
|
|
152 |
try:
|
|
153 |
types = self.requests.get(types_url).json()
|
|
154 |
except ValueError:
|
|
155 |
return {'err': 2, 'err_desc': 'invalid service answer'}
|
135 |
156 |
# types: {"types": [{"id": "1", "name": "PLACE"}, ...]}
|
136 |
157 |
types_dict = {x['name']: x['id'] for x in types['types']}
|
137 |
158 |
favorite['typeId'] = types_dict.get(favorite.pop('type'))
|
138 |
159 |
favorite['userId'] = name_id
|
139 |
160 |
# send favorite
|
140 |
161 |
url = urlparse.urljoin(self.liferay_api_url, 'jsonws/favorite.favorite/add-favorite')
|
141 |
|
response = self.requests.post(url, data=favorite).json()
|
|
162 |
try:
|
|
163 |
response = self.requests.post(url, data=favorite).json()
|
|
164 |
except ValueError:
|
|
165 |
return {'err': 2, 'err_desc': 'invalid service answer'}
|
142 |
166 |
if response.get('success'):
|
143 |
167 |
return {'err': 0, 'err_desc': response.get('success')}
|
144 |
168 |
else:
|
... | ... | |
155 |
179 |
def favorite_delete(self, request, name_id, favorite_id, **kwargs):
|
156 |
180 |
url = urlparse.urljoin(self.liferay_api_url, 'jsonws/favorite.favorite/delete-favorite')
|
157 |
181 |
params = {'userId': name_id, 'favoriteId': favorite_id}
|
158 |
|
response = self.requests.post(url, data=params).json()
|
|
182 |
try:
|
|
183 |
response = self.requests.post(url, data=params).json()
|
|
184 |
except ValueError:
|
|
185 |
return {'err': 2, 'err_desc': 'invalid service answer'}
|
159 |
186 |
if response.get('success'):
|
160 |
187 |
return {'err': 0, 'err_desc': response.get('success')}
|
161 |
188 |
else:
|
162 |
|
-
|