move api to own file

This commit is contained in:
2020-10-21 11:35:59 +00:00
parent 7fc0ea932d
commit 56f46bac9c
7 changed files with 71 additions and 51 deletions

View File

@@ -64,22 +64,37 @@ def createPadifNotExists(padID):
try: try:
epc.createGroupPad(groupID=group["groupID"], padName=padID, text="helloworld") epc.createGroupPad(groupID=group["groupID"], padName=padID, text="helloworld")
except EtherpadException as e: except EtherpadException as e:
# TODO: change it after Etherpad server is a better one than that because of http 500 logger.info("Can't create Pad '{}'. EtherpadException: {}".format(padID, e))
print(e)
return None return None
except Exception as e: except Exception as e:
raise e raise e
return None
return padID return padID
def getPadHTML(padID): def getPadHTML(padID):
epc, group = get_ep_client() epc, group = get_ep_client()
text = epc.getHTML(padID=group["groupID"] + "$" + padID)["html"] if not epc or not group:
return None
try:
text = epc.getHTML(padID=group["groupID"] + "$" + padID)["html"]
except EtherpadException as e:
logger.info("Can't get HTML from padID '{}'. EtherpadException: {}".format(padID, e))
return None
except Exception as e:
raise e
return None
return text return text
def setPadHTML(padID, html): def setPadHTML(padID, html):
epc, group = get_ep_client() epc, group = get_ep_client()
if not epc or not group:
return None
epc.setHTML(padID=group["groupID"] + "$" + padID, html=html) epc.setHTML(padID=group["groupID"] + "$" + padID, html=html)
return html return html
@@ -89,7 +104,7 @@ def get_pad_link(padID):
return "#" return "#"
epc, group = get_ep_client() epc, group = get_ep_client()
if epc: if not epc or not group:
return urllib.parse.urljoin(settings.ETHERPAD_CLIENT["exturl"], 'p/' + group["groupID"] + '$' + str(padID)) return "#"
return "" return urllib.parse.urljoin(settings.ETHERPAD_CLIENT["exturl"], 'p/' + group["groupID"] + '$' + str(padID))

View File

@@ -7,7 +7,6 @@ from django.utils.translation import gettext_lazy as _
from datetime import timedelta from datetime import timedelta
from easy_thumbnails.fields import ThumbnailerImageField from easy_thumbnails.fields import ThumbnailerImageField
from rest_framework import serializers
class ActiveMemberManager(models.Manager): class ActiveMemberManager(models.Manager):
@@ -125,20 +124,6 @@ class Member(models.Model):
return self.firstname + " " + self.surname return self.firstname + " " + self.surname
class MemberSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Member
fields = [
'firstname',
'surname',
'nickname',
'mailaccount',
'role',
'description',
'image',
]
class JobGroup(models.Model): class JobGroup(models.Model):
name = models.CharField(max_length=128) name = models.CharField(max_length=128)

View File

@@ -0,0 +1,17 @@
from .models import Member
from rest_framework import serializers
class MemberSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Member
fields = [
'firstname',
'surname',
'nickname',
'mailaccount',
'role',
'description',
'image',
]

View File

@@ -3,11 +3,11 @@ from django.shortcuts import render
from collections import deque from collections import deque
from .models import Member, JobMember, JobGroup, MemberSerializer from .models import Member, JobMember, JobGroup
from .serializers import MemberSerializer
from rest_framework import viewsets from rest_framework import viewsets
from rest_framework import permissions #from rest_framework import permissions
# from django_filters.rest_framework import DjangoFilterBackend
def __get_job_groups(): def __get_job_groups():
@@ -96,7 +96,7 @@ class MemberViewSet(viewsets.ModelViewSet):
queryset = Member.all_members.all().order_by('nickname') queryset = Member.all_members.all().order_by('nickname')
serializer_class = MemberSerializer serializer_class = MemberSerializer
permission_classes = [permissions.IsAuthenticated] #permission_classes = [permissions.IsAuthenticated]
# filter_backends = [DjangoFilterBackend] # filter_backends = [DjangoFilterBackend]
# filterset_fields = ['legacy_id', 'slug','legacy_rubrik_id'] # filterset_fields = ['legacy_id', 'slug','legacy_rubrik_id']
lookup_field = 'name' lookup_field = 'name'

View File

@@ -13,12 +13,11 @@ from .managers import (
) )
import re import re
from rest_framework import serializers
from datetime import timedelta from datetime import timedelta
import logging import logging
logger = logging.getLogger('posts') logger = logging.getLogger(__name__)
request_logger = logging.getLogger('django.request') request_logger = logging.getLogger('django.request')
@@ -205,29 +204,6 @@ class Post(models.Model):
return "Post (%s, %s): %s " % (self.slug, self.public_date.strftime("%d.%m.%Y"), self.title) return "Post (%s, %s): %s " % (self.slug, self.public_date.strftime("%d.%m.%Y"), self.title)
class PostSerializer(serializers.HyperlinkedModelSerializer):
agenda_html = serializers.CharField()
class Meta:
model = Post
fields = [
'slug',
'title',
'subtitle',
'body',
'url',
'post_type',
'public_date',
'legacy_id',
'image',
'event_start',
'event_end',
'is_hidden',
'agenda_html'
# 'author',
]
class News(Post): class News(Post):
objects = NewsManager() objects = NewsManager()

View File

@@ -0,0 +1,26 @@
from .models import Post
from rest_framework import serializers
class PostSerializer(serializers.HyperlinkedModelSerializer):
agenda_html = serializers.CharField()
class Meta:
model = Post
fields = [
'slug',
'title',
'subtitle',
'body',
'url',
'post_type',
'public_date',
'legacy_id',
'image',
'event_start',
'event_end',
'is_hidden',
'agenda_html'
# 'author',
]

View File

@@ -8,7 +8,8 @@ from django_filters.rest_framework import DjangoFilterBackend
from rest_framework import viewsets from rest_framework import viewsets
from taggit.models import Tag from taggit.models import Tag
from .models import Post, PostSerializer, FetMeeting from .models import Post, FetMeeting
from .serializers import PostSerializer
from documents.api import get_pad_link from documents.api import get_pad_link
from documents.etherpadlib import add_ep_cookie from documents.etherpadlib import add_ep_cookie
from members.models import Member, JobMember from members.models import Member, JobMember