Port some utilities of ietfworkflows

- Legacy-Id: 3406
This commit is contained in:
Ole Laursen 2011-09-01 12:46:57 +00:00
parent b4c75748dc
commit 152dc25e18
3 changed files with 35 additions and 11 deletions

View file

@ -1,4 +1,7 @@
from django.conf import settings
from ietf.ietfworkflows.streams import get_streamed_draft
from redesign.group.models import Role
def get_person_for_user(user):
@ -17,10 +20,16 @@ def is_secretariat(user):
def is_wgchair(person):
return bool(person.wgchair_set.all())
def is_wgchairREDESIGN(person):
return bool(Role.objects.filter(name="chair", group__type="wg", group__state="active", email__person=person))
def is_wgdelegate(person):
return bool(person.wgdelegate_set.all())
def is_delegateREDESIGN(person):
return bool(Role.objects.filter(name="delegate", group__type="wg", group__state="active", email__person=person))
def is_chair_of_draft(user, draft):
person = get_person_for_user(user)
@ -34,6 +43,18 @@ def is_chair_of_draft(user, draft):
return False
return bool(group.chairs().filter(person=person).count())
def is_chair_of_draftREDESIGN(user, draft):
if not user.is_authenticated() or not user.get_profile() or not draft.group:
return False
return bool(Role.objects.filter(name="chair", group=draft.group, email__person=user.get_profile()))
if settings.USE_DB_REDESIGN_PROXY_CLASSES:
from ietf.wgchairs.accounts import is_secretariat, get_person_for_user
is_delegate = is_delegateREDESIGN
is_wgchair = is_wgchairREDESIGN
is_chair_of_draft = is_chair_of_draftREDESIGN
def can_edit_state(user, draft):
streamed = get_streamed_draft(draft)

View file

@ -1,4 +1,5 @@
from django import template
from django.conf import settings
from ietf.idrfc.idrfc_wrapper import IdRfcWrapper, IdWrapper
from ietf.ietfworkflows.utils import (get_workflow_for_draft,
@ -14,8 +15,8 @@ register = template.Library()
@register.inclusion_tag('ietfworkflows/stream_state.html', takes_context=True)
def stream_state(context, doc):
from django.conf import settings
return settings.TEMPLATE_STRING_IF_INVALID # FIXME: temporary work-around
if settings.USE_DB_REDESIGN_PROXY_CLASSES:
return settings.TEMPLATE_STRING_IF_INVALID # FIXME: temporary work-around
request = context.get('request', None)
data = {}
stream = get_stream_from_wrapper(doc)
@ -54,7 +55,8 @@ def workflow_history_entry(context, entry):
@register.inclusion_tag('ietfworkflows/edit_actions.html', takes_context=True)
def edit_actions(context, wrapper):
return None # FIXME: temporary work-around
if settings.USE_DB_REDESIGN_PROXY_CLASSES:
return settings.TEMPLATE_STRING_IF_INVALID # FIXME: temporary work-around
request = context.get('request', None)
user = request and request.user

View file

@ -284,14 +284,15 @@ def update_stream(obj, comment, person, to_stream, extra_notify=[]):
def get_full_info_for_draft(draft):
return dict(# FIXME: temporary work-around
streamed=settings.TEMPLATE_STRING_IF_INVALID,
stream=settings.TEMPLATE_STRING_IF_INVALID,
workflow=settings.TEMPLATE_STRING_IF_INVALID,
tags=[settings.TEMPLATE_STRING_IF_INVALID],
state=settings.TEMPLATE_STRING_IF_INVALID,
shepherd=draft.shepherd,
)
if settings.USE_DB_REDESIGN_PROXY_CLASSES:
return dict(# FIXME: temporary work-around
streamed=settings.TEMPLATE_STRING_IF_INVALID,
stream=settings.TEMPLATE_STRING_IF_INVALID,
workflow=settings.TEMPLATE_STRING_IF_INVALID,
tags=[settings.TEMPLATE_STRING_IF_INVALID],
state=settings.TEMPLATE_STRING_IF_INVALID,
shepherd=draft.shepherd,
)
return dict(
streamed=get_streamed_draft(draft),