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:
epc.createGroupPad(groupID=group["groupID"], padName=padID, text="helloworld")
except EtherpadException as e:
# TODO: change it after Etherpad server is a better one than that because of http 500
print(e)
logger.info("Can't create Pad '{}'. EtherpadException: {}".format(padID, e))
return None
except Exception as e:
raise e
return None
return padID
def getPadHTML(padID):
epc, group = get_ep_client()
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
def setPadHTML(padID, html):
epc, group = get_ep_client()
if not epc or not group:
return None
epc.setHTML(padID=group["groupID"] + "$" + padID, html=html)
return html
@@ -89,7 +104,7 @@ def get_pad_link(padID):
return "#"
epc, group = get_ep_client()
if epc:
return urllib.parse.urljoin(settings.ETHERPAD_CLIENT["exturl"], 'p/' + group["groupID"] + '$' + str(padID))
if not epc or not group:
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 easy_thumbnails.fields import ThumbnailerImageField
from rest_framework import serializers
class ActiveMemberManager(models.Manager):
@@ -125,20 +124,6 @@ class Member(models.Model):
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):
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 .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 permissions
# from django_filters.rest_framework import DjangoFilterBackend
#from rest_framework import permissions
def __get_job_groups():
@@ -96,7 +96,7 @@ class MemberViewSet(viewsets.ModelViewSet):
queryset = Member.all_members.all().order_by('nickname')
serializer_class = MemberSerializer
permission_classes = [permissions.IsAuthenticated]
#permission_classes = [permissions.IsAuthenticated]
# filter_backends = [DjangoFilterBackend]
# filterset_fields = ['legacy_id', 'slug','legacy_rubrik_id']
lookup_field = 'name'

View File

@@ -13,12 +13,11 @@ from .managers import (
)
import re
from rest_framework import serializers
from datetime import timedelta
import logging
logger = logging.getLogger('posts')
logger = logging.getLogger(__name__)
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)
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):
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 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.etherpadlib import add_ep_cookie
from members.models import Member, JobMember