equal
deleted
inserted
replaced
205 >>> users = find('CWGroup', name=u"users").one() |
205 >>> users = find('CWGroup', name=u"users").one() |
206 >>> groups = find('CWGroup').entities() |
206 >>> groups = find('CWGroup').entities() |
207 """ |
207 """ |
208 parts = ['Any X WHERE X is %s' % etype] |
208 parts = ['Any X WHERE X is %s' % etype] |
209 varmaker = rqlvar_maker(defined='X') |
209 varmaker = rqlvar_maker(defined='X') |
210 eschema = self.vreg.schema[etype] |
210 eschema = self.vreg.schema.eschema(etype) |
211 for attr, value in kwargs.items(): |
211 for attr, value in kwargs.items(): |
212 if isinstance(value, list) or isinstance(value, tuple): |
212 if isinstance(value, list) or isinstance(value, tuple): |
213 raise NotImplementedError("List of values are not supported") |
213 raise NotImplementedError("List of values are not supported") |
214 if hasattr(value, 'eid'): |
214 if hasattr(value, 'eid'): |
215 kwargs[attr] = value.eid |
215 kwargs[attr] = value.eid |
297 if not kwargs: |
297 if not kwargs: |
298 return u'%s%s' % (base_url, path) |
298 return u'%s%s' % (base_url, path) |
299 return u'%s%s?%s' % (base_url, path, self.build_url_params(**kwargs)) |
299 return u'%s%s?%s' % (base_url, path, self.build_url_params(**kwargs)) |
300 |
300 |
301 def build_url_params(self, **kwargs): |
301 def build_url_params(self, **kwargs): |
302 """return encoded params to incorporate them in an URL""" |
302 """return encoded params to incorporate them in a URL""" |
303 args = [] |
303 args = [] |
304 for param, values in kwargs.iteritems(): |
304 for param, values in kwargs.iteritems(): |
305 if not isinstance(values, (list, tuple)): |
305 if not isinstance(values, (list, tuple)): |
306 values = (values,) |
306 values = (values,) |
307 for value in values: |
307 for value in values: |
363 |
363 |
364 # bound user related methods ############################################### |
364 # bound user related methods ############################################### |
365 |
365 |
366 @cached |
366 @cached |
367 def user_data(self): |
367 def user_data(self): |
368 """returns a dictionary with this user's information""" |
368 """returns a dictionary with this user's information. |
|
369 |
|
370 The keys are : |
|
371 |
|
372 login |
|
373 The user login |
|
374 |
|
375 name |
|
376 The user name, returned by user.name() |
|
377 |
|
378 email |
|
379 The user principal email |
|
380 |
|
381 """ |
369 userinfo = {} |
382 userinfo = {} |
370 user = self.user |
383 user = self.user |
371 userinfo['login'] = user.login |
384 userinfo['login'] = user.login |
372 userinfo['name'] = user.name() |
385 userinfo['name'] = user.name() |
373 userinfo['email'] = user.cw_adapt_to('IEmailable').get_email() |
386 userinfo['email'] = user.cw_adapt_to('IEmailable').get_email() |