def queryset(self, request):
"""
N'affiche la liste de candidats que si le user connecté
- possède un UserProfile
+ possède un Evaluateur
"""
qs = self.model._default_manager.get_query_set()
try:
- user = UserProfile.objects.get(user=request.user)
- except UserProfile.DoesNotExist:
+ user = Evaluateur.objects.get(user=request.user)
+ except Evaluateur.DoesNotExist:
return qs.none()
region_ids = [g.id for g in user.regions.all()]
fields = ('candidat', 'nom', 'path', )
extra = 1
-class ProxyEvaluateur(UserProfile.candidats.through):
+class ProxyEvaluateur(Evaluateur.candidats.through):
"""
Ce proxy sert uniquement dans l'admin à disposer d'un libellé
plus ergonomique.
EvaluateurInline,
]
- actions = ['affecter_candidats_evaluateur', ] #'envoyer_courriel_candidats']
+ actions = ['affecter_candidats_evaluateur', 'envoyer_courriel_candidats']
# Affecter un évaluateurs à des candidats
def affecter_candidats_evaluateur(modeladmin, obj, candidats):
selected = obj.POST.getlist(admin.ACTION_CHECKBOX_NAME)
"?ids=%s" % (",".join(selected)))
affecter_candidats_evaluateur.short_description = u'Affecter évaluateur'
- # Affecter un évaluateurs à des candidats
+ # Envoyer un courriel à des candidats
def envoyer_courriel_candidats(modeladmin, obj, candidats):
selected = obj.POST.getlist(admin.ACTION_CHECKBOX_NAME)
""" # Afficher note poster par l'évaluateur
def note_evaluateur(self, obj):
import pdb;pdb.set_trace()
- evaluateur = UserProfile.objects.get(user=obj.user)
+ evaluateur = Evaluateur.objects.get(user=obj.user)
import pdb;pdb.set_trace()
note_eval = CandidatEvaluation.objects.filter(evaluateur=evaluateur,
candidat=obj.user)
def get_form(self, request, obj=None, **kwargs):
"""
Affiche la liste des offres d'emploi, seulement si le user
- connecté possède un UserProfile
+ connecté possède un Evaluateur
"""
form = super(CandidatAdmin, self).get_form(request, obj, **kwargs)
if form.declared_fields.has_key('offre_emploi'):
region_field = form.base_fields['offre_emploi']
try:
- user = UserProfile.objects.get(user=request.user)
- except UserProfile.DoesNotExist:
+ user = Evaluateur.objects.get(user=request.user)
+ except Evaluateur.DoesNotExist:
region_field.queryset = region_field.queryset.none()
return form
qs = self.model._default_manager.get_query_set()
try:
- user = UserProfile.objects.get(user=obj.user)
- except UserProfile.DoesNotExist:
+ user = Evaluateur.objects.get(user=obj.user)
+ except Evaluateur.DoesNotExist:
return qs.none()
ids = [c.id for c in user.candidats.all()]
modèles de Region, il existe plusieurs boucles, ce qui conduit à la
génération d'une requête infinie.
Affiche la liste de candidats que si le user connecté
- possède un UserProfile
+ possède un Evaluateur
"""
qs = self.model._default_manager.get_query_set()
return qs.select_related('candidat')
class EvaluateurAdmin(VersionAdmin):
fieldsets = (
- (None, {'fields': ('user', 'regions')}),
+ (None, {'fields': ('user', )}),#'regions')}),
(None, {'fields': ('candidats',)}),
)
+ '''def get_form(self, request, obj=None, **kwargs):
+ """
+ Affiche la liste des users, regions et candidats, seulement si le user
+ connecté possède un Evaluateur
+ """
+ form = super(EvaluateurAdmin, self).get_form(request, obj, **kwargs)
+ if form.declared_fields.has_key('user'):
+ permission_field = form.declared_fields['user']
+ else:
+ permission_field = form.base_fields['user']
+
+ #if form.declared_fields.has_key('regions'):
+ # region_field = form.declared_fields['regions']
+ #else:
+ # region_field = form.base_fields['regions']
+
+ if form.declared_fields.has_key('candidats'):
+ candidats_field = form.declared_fields['candidats']
+ else:
+ candidats_field = form.base_fields['candidats']
+
+ try:
+ user = Evaluateur.objects.get(user=request.user)
+ except Evaluateur.DoesNotExist:
+ #region_field.queryset = Region.objects.none()
+ permission_field.queryset = Evaluateur.objects.none()
+ candidats_field.queryset = Candidat.objects.none()
+ return form
+
+ return form
+ '''
def queryset(self, request):
"""
Affiche la liste d'évaluateur que si le user connecté
- possède un UserProfile
+ possède un Evaluateur
"""
qs = self.model._default_manager.get_query_set()
try:
- user = UserProfile.objects.get(user=request.user)
- except UserProfile.DoesNotExist:
+ user = Evaluateur.objects.get(user=request.user)
+ except Evaluateur.DoesNotExist:
return qs.none()
return qs
+class AdministrateurRegionalAdmin(VersionAdmin):
+ pass
+
class CandidatEvaluationAdmin(VersionAdmin):
list_display = ('candidat', 'evaluateur', 'note', 'commentaire', 'date', )
def get_form(self, request, obj=None, **kwargs):
"""
Affiche la liste des candidats et évaluateur, seulement si le user
- connecté possède un UserProfile
+ connecté possède un Evaluateur
"""
form = super(CandidatEvaluationAdmin, self).get_form(request, obj,
**kwargs)
candidats_field = form.base_fields['candidat']
try:
- user = UserProfile.objects.get(user=request.user)
- except UserProfile.DoesNotExist:
- evaluateur_field.queryset = UserProfile.objects.none()
+ user = Evaluateur.objects.get(user=request.user)
+ except Evaluateur.DoesNotExist:
+ evaluateur_field.queryset = Evaluateur.objects.none()
candidats_field.queryset = Candidat.objects.none()
return form
def queryset(self, request):
"""
Affiche la liste d'évaluation que si le user connecté
- possède un UserProfile
+ possède un Evaluateur
"""
qs = self.model._default_manager.get_query_set()
try:
- user = UserProfile.objects.get(user=request.user)
- except UserProfile.DoesNotExist:
+ user = Evaluateur.objects.get(user=request.user)
+ except Evaluateur.DoesNotExist:
return qs.none()
return qs.select_related('candidat')
+class CourrielTemplateAdmin(VersionAdmin):
+ pass
+
admin.site.register(OffreEmploi, OffreEmploiAdmin)
admin.site.register(Candidat, CandidatAdmin)
-admin.site.register(UserProfile, EvaluateurAdmin)
+admin.site.register(CourrielTemplate, CourrielTemplateAdmin)
+admin.site.register(Evaluateur, EvaluateurAdmin)
+admin.site.register(AdministrateurRegional, AdministrateurRegionalAdmin)