mirror of
https://github.com/Hopiu/django-markdownx.git
synced 2026-05-22 03:11:53 +00:00
42 lines
1.2 KiB
Python
Executable file
42 lines
1.2 KiB
Python
Executable file
import markdown
|
|
|
|
from django.views.generic.edit import View, FormView
|
|
from django.http import HttpResponse, JsonResponse
|
|
|
|
from .forms import ImageForm
|
|
from .settings import MARKDOWNX_MARKDOWN_EXTENSIONS, MARKDOWNX_MARKDOWN_EXTENSION_CONFIGS
|
|
|
|
|
|
class MarkdownifyView(View):
|
|
|
|
def post(self, request, *args, **kwargs):
|
|
return HttpResponse(
|
|
markdown.markdown(
|
|
request.POST['content'],
|
|
extensions=MARKDOWNX_MARKDOWN_EXTENSIONS,
|
|
extension_configs=MARKDOWNX_MARKDOWN_EXTENSION_CONFIGS))
|
|
|
|
|
|
class ImageUploadView(FormView):
|
|
|
|
template_name = "dummy.html"
|
|
form_class = ImageForm
|
|
success_url = '/'
|
|
|
|
def form_invalid(self, form):
|
|
response = super(ImageUploadView, self).form_invalid(form)
|
|
if self.request.is_ajax():
|
|
return JsonResponse(form.errors, status=400)
|
|
else:
|
|
return response
|
|
|
|
def form_valid(self, form):
|
|
image_path = form.save()
|
|
response = super(ImageUploadView, self).form_valid(form)
|
|
|
|
if self.request.is_ajax():
|
|
data = {}
|
|
data['image_path'] = image_path
|
|
return JsonResponse(data)
|
|
else:
|
|
return response
|