check if etherpad server works and agenda and protocol links are available.

This commit is contained in:
2020-09-22 15:40:45 +00:00
parent 3c74a8d7af
commit 99e3034c0d

View File

@@ -1,21 +1,21 @@
from django.shortcuts import render
from django.http import HttpResponse, JsonResponse, HttpResponseServerError
from django_filters.rest_framework import DjangoFilterBackend
# from django.core.cache import cache
from django.utils.text import slugify
from django.utils import timezone
from taggit.models import Tag
from collections import deque
from django_filters.rest_framework import DjangoFilterBackend
from rest_framework import viewsets
# from rest_framework import permissions
from taggit.models import Tag
from .models import Post, PostSerializer, FetMeeting
from members.models import Member, JobMember
# from documents import add_ep_to_response, get_ep_sessionid2
from documents import get_pad_link
from documents.etherpadlib import add_ep_cookie
from members.models import Member, JobMember
from collections import deque
import logging
logger = logging.getLogger(__name__)
##################
@@ -78,18 +78,34 @@ def show(request, id=None):
if post_author:
author_image = post_author.image['avatar'].url
ep_agenda_link = None
ep_protocol_link = None
if p.has_agenda and p.agenda_key:
ep_agenda_link = get_pad_link(p.agenda_key)
if p.has_protocol and p.protocol_key:
ep_protocol_link = get_pad_link(p.protocol_key)
context = {
"post": p,
"author_image": author_image,
"next": get_next_dict(p),
"related_posts": p.tags.similar_objects(),
"ep_agenda_link": get_pad_link(p.agenda_key),
"ep_protocol_link": get_pad_link(p.protocol_key),
"ep_agenda_link": ep_agenda_link,
"ep_protocol_link": ep_protocol_link,
}
response = render(request, 'posts/show.html', context)
return add_ep_cookie(request, response)
# check if etherpad server works
if ep_agenda_link or ep_protocol_link:
try:
response = add_ep_cookie(request, response)
except Exception as e:
logger.info("Etherpad Server doesn't work. Error: {}".format(e))
return response
###########