""" isbn search view """ from django.http import HttpResponseNotFound from django.http import JsonResponse from django.shortcuts import get_object_or_404, redirect from django.template.response import TemplateResponse from django.utils.decorators import method_decorator from django.views import View from django.views.decorators.http import require_POST from bookwyrm import forms, models from bookwyrm.connectors import connector_manager from .helpers import is_api_request # pylint: disable= no-self-use class Isbn(View): """search a book by isbn""" def get(self, request, isbn): """info about a book""" book_results = connector_manager.isbn_local_search(isbn) if is_api_request(request): return JsonResponse([r.json() for r in book_results], safe=False) data = { "title": "ISBN Search Results", "results": book_results, "query": isbn, } return TemplateResponse(request, "isbn_search_results.html", data)