def channel(request, channel_id): channel = get_object_or_404(Channel, id=channel_id, deleted=False) channel_serializer = ChannelSerializer(channel) accessible_channel_list = Channel.objects.filter( Q(deleted=False, public=True) | Q(deleted=False, editors__email__contains= request.user.email)) accessible_channel_list = ChannelListSerializer.setup_eager_loading(accessible_channel_list) accessible_channel_list_serializer = ChannelListSerializer(accessible_channel_list, many=True) channel_list = accessible_channel_list.filter(editors__email__contains= request.user.email).exclude(id=channel_id).values("id", "name") fileformats = get_or_set_cached_constants(FileFormat, FileFormatSerializer) licenses = get_or_set_cached_constants(License, LicenseSerializer) formatpresets = get_or_set_cached_constants(FormatPreset, FormatPresetSerializer) contentkinds = get_or_set_cached_constants(ContentKind, ContentKindSerializer) channel_tags = ContentTag.objects.filter(channel = channel) channel_tags_serializer = TagSerializer(channel_tags, many=True) json_renderer = JSONRenderer() return render(request, 'channel_edit.html', {"channel" : json_renderer.render(channel_serializer.data), "channel_id" : channel_id, "channel_name": channel.name, "accessible_channels" : json_renderer.render(accessible_channel_list_serializer.data), "channel_list" : channel_list, "fileformat_list" : fileformats, "license_list" : licenses, "fpreset_list" : formatpresets, "ckinds_list" : contentkinds, "ctags": json_renderer.render(channel_tags_serializer.data), "current_user" : json_renderer.render(CurrentUserSerializer(request.user).data)})
def channel_list(request): channel_list = Channel.objects.filter(deleted=False, editors__email__contains= request.user.email) channel_list = ChannelListSerializer.setup_eager_loading(channel_list) channel_serializer = ChannelListSerializer(channel_list, many=True) licenses = get_or_set_cached_constants(License, LicenseSerializer) return render(request, 'channel_list.html', {"channels" : JSONRenderer().render(channel_serializer.data), "license_list" : licenses, "channel_list" : channel_list.values("id", "name"), "current_user" : JSONRenderer().render(UserSerializer(request.user).data)})