import logging from rest_framework.decorators import api_view from rest_framework.response import Response from . import musicbrainz as mb, medium @api_view(['GET']) def search_artist(request): limit = int(request.GET.get('per_page', 10)) page = int(request.GET.get('page', 1)) query = request.GET.get('query') if query: return Response(medium.search_artist(query, limit, page)) return Response({'status': 400, 'error': 'Debe indicar una query'}) @api_view(['GET']) def get_artist(request, mbid): return Response(medium.get_artist(mbid)) @api_view(['GET']) def get_disc(request, mbid): return Response(medium.get_disc(mbid)) @api_view(['GET']) def search_disc(request): limit = int(request.GET.get('per_page', 10)) page = int(request.GET.get('page', 1)) query = request.GET.get('query') if query: return Response(medium.search_disc(query, limit, page)) return Response({'status': 400, 'error': 'Debe indicar una query'}) @api_view(['GET']) def get_discs_of_artist(request, mbid): limit = int(request.GET.get('per_page', 10)) page = int(request.GET.get('page', 1)) return Response(medium.get_discs_of_artist(mbid, limit, page)) @api_view(['GET']) def get_artist_of_disc(request, mbid): limit = int(request.GET.get('per_page', 10)) page = int(request.GET.get('page', 1)) return Response(medium.get_artist_of_disc(mbid, limit, page)) @api_view(['GET']) def get_release(request, mbid): return Response(medium.get_release(mbid)) @api_view(['GET']) def search_release(request): limit = int(request.GET.get('per_page', 10)) page = int(request.GET.get('page', 1)) query = request.GET.get('query', '') if query: return Response(medium.search_release(query, limit, page)) return Response({'status': 400, 'error': 'Debe indicar una query'}) @api_view(['GET']) def get_releases_of_disc(request, mbid): limit = int(request.GET.get('per_page', 10)) page = int(request.GET.get('page', 1)) return Response(medium.get_releases_of_disc(mbid, limit, page)) @api_view(['GET']) def get_artist_of_release(request, mbid): limit = int(request.GET.get('per_page', 10)) page = int(request.GET.get('page', 1)) return Response(medium.get_artist_of_release(mbid, limit, page)) @api_view(['GET']) def get_recording(request, mbid): return Response(medium.get_recording(mbid)) @api_view(['GET']) def search_recording(request): limit = int(request.GET.get('per_page', 10)) page = int(request.GET.get('page', 1)) query = request.GET.get('query', '') if query: return Response(medium.search_recording(query, limit, page)) return Response({'status': 400, 'error': 'Debe indicar una query'}) @api_view(['GET']) def get_recordings_of_release(request, mbid): limit = int(request.GET.get('per_page', 100)) page = int(request.GET.get('page', 1)) return Response(medium.get_recordings_of_release(mbid, limit, page)) @api_view(['GET']) def get_release_of_recording(request, mbid): limit = int(request.GET.get('per_page', 100)) page = int(request.GET.get('page', 1)) return Response(medium.get_release_of_recording(mbid, limit, page)) @api_view(['GET']) def get_artist_of_recording(request, mbid): limit = int(request.GET.get('per_page', 10)) page = int(request.GET.get('page', 1)) return Response(medium.get_artist_of_recording(mbid, limit, page)) @api_view(['GET']) def get_cover_art_of_disc(request, mbid): coverart = medium.get_cover_art_disc(mbid) if coverart: return Response(coverart) else: return Response(status=404) @api_view(['GET']) def get_cover_art_of_release(request, mbid): coverart = medium.get_cover_art_release(mbid) if coverart: return Response(coverart) else: return Response(status=404) @api_view(['GET']) def get_cover_art_of_recording(request, mbid): coverart = medium.get_cover_art_recording(mbid) if coverart: return Response(coverart) else: return Response(status=404)