mirror of
https://gitlab2.federez.net/re2o/re2o
synced 2024-11-27 15:12:25 +00:00
Les envois de mails pour le service mailing sont sérializé et passe par all_has_access
This commit is contained in:
parent
75999aec4e
commit
6c0ec3ad64
2 changed files with 36 additions and 6 deletions
31
users/serializers.py
Normal file
31
users/serializers.py
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
# Re2o est un logiciel d'administration développé initiallement au rezometz. Il
|
||||||
|
# se veut agnostique au réseau considéré, de manière à être installable en
|
||||||
|
# quelques clics.
|
||||||
|
#
|
||||||
|
# Copyright © 2017 Gabriel Détraz
|
||||||
|
# Copyright © 2017 Goulven Kermarec
|
||||||
|
# Copyright © 2017 Augustin Lemesle
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License along
|
||||||
|
# with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
|
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
|
||||||
|
#Maël Kervella
|
||||||
|
|
||||||
|
from rest_framework import serializers
|
||||||
|
from users.models import User
|
||||||
|
|
||||||
|
class MailSerializer(serializers.ModelSerializer):
|
||||||
|
class Meta:
|
||||||
|
model = User
|
||||||
|
fields = ('email',)
|
|
@ -43,7 +43,8 @@ from rest_framework.renderers import JSONRenderer
|
||||||
|
|
||||||
from reversion.models import Version
|
from reversion.models import Version
|
||||||
from reversion import revisions as reversion
|
from reversion import revisions as reversion
|
||||||
from users.models import User, Right, Ban, Whitelist, School, ListRight, Request, ServiceUser
|
from users.serializers import MailSerializer
|
||||||
|
from users.models import User, Right, Ban, Whitelist, School, ListRight, Request, ServiceUser, all_has_access
|
||||||
from users.forms import DelRightForm, BanForm, WhitelistForm, DelSchoolForm, DelListRightForm, NewListRightForm
|
from users.forms import DelRightForm, BanForm, WhitelistForm, DelSchoolForm, DelListRightForm, NewListRightForm
|
||||||
from users.forms import EditInfoForm, InfoForm, BaseInfoForm, StateForm, RightForm, SchoolForm, EditServiceUserForm, ServiceUserForm, ListRightForm
|
from users.forms import EditInfoForm, InfoForm, BaseInfoForm, StateForm, RightForm, SchoolForm, EditServiceUserForm, ServiceUserForm, ListRightForm
|
||||||
from cotisations.models import Facture
|
from cotisations.models import Facture
|
||||||
|
@ -704,9 +705,7 @@ class JSONResponse(HttpResponse):
|
||||||
@login_required
|
@login_required
|
||||||
@permission_required('serveur')
|
@permission_required('serveur')
|
||||||
def mailing(request):
|
def mailing(request):
|
||||||
mails = set()
|
mails = all_has_access()
|
||||||
for u in User.objects.all() :
|
seria = MailSerializer(mails, many=True)
|
||||||
if u.has_access():
|
return JSONResponse(seria.data)
|
||||||
mails.add( u.email )
|
|
||||||
return JSONResponse(mails)
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue