def read(self, request): """ Retrives the existing digital assets associated with a given seller :param request: :return: JSON List containing the existing assets """ pagination = { 'start': request.GET.get('start', None), 'limit': request.GET.get('limit', None) } if pagination['start'] is None or pagination['limit'] is None: pagination = None profile = request.user.userprofile if 'provider' not in profile.get_current_roles(): return build_response(request, 403, 'You are not authorized to retrieve digital asset information') try: asset_manager = AssetManager() response = asset_manager.get_provider_assets_info(request.user, pagination=pagination) except Exception as e: return build_response(request, 400, unicode(e)) return HttpResponse(json.dumps(response), status=200, mimetype='application/json; charset=utf-8')
def read(self, request): """ Retrieves the existing digital assets associated with a given seller :param request: :return: JSON List containing the existing assets """ user = request.GET.get('user', None) pagination = { 'offset': request.GET.get('offset', None), 'size': request.GET.get('size', None) } if pagination['offset'] is None or pagination['size'] is None: pagination = None if user is None: if request.user.is_anonymous(): return build_response(request, 401, 'Authentication required') user = request.user.userprofile else: try: user_search = User.objects.get(username=user) user = UserProfile.objects.get(user=user_search) except Exception as e: return build_response( request, 404, "User {} does not exist, error: {}".format( user, unicode(e))) try: asset_manager = AssetManager() response = asset_manager.get_provider_assets_info( user, pagination=pagination) except Exception as e: return build_response(request, 400, unicode(e)) return HttpResponse(json.dumps(response), status=200, mimetype='application/json; charset=utf-8')