def wrapper(request, event_slug, *args, **kwargs): from core.models import Event from core.utils import login_redirect from .views import enrollment_admin_menu_items event = get_object_or_404(Event, slug=event_slug) meta = event.enrollment_event_meta if not meta: messages.error(request, _('This event does not use this site to manage enrollment.')) return redirect('core_event_view', event.slug) if not request.user.is_authenticated(): return login_redirect(request) if not event.enrollment_event_meta.is_user_admin(request.user): messages.error(request, _('You are not allowed to manage enrollment for this event.')) return redirect('core_event_view', event.slug) vars = dict( admin_menu_items=enrollment_admin_menu_items(request, event), admin_title=_('Manage enrollment'), event=event, meta=meta, ) return view_func(request, vars, event, *args, **kwargs)
def wrapper(request, event_slug, *args, **kwargs): from core.models import Event from core.utils import login_redirect from .views import enrollment_admin_menu_items event = get_object_or_404(Event, slug=event_slug) meta = event.enrollment_event_meta if not meta: messages.error(request, _('This event does not use this site to manage enrollment.')) return redirect('core_event_view', event.slug) if not request.user.is_authenticated(): return login_redirect(request) if not event.enrollment_event_meta.is_user_admin(request.user): messages.error(request, _('You are not allowed to manage enrollment for this event.')) return redirect('core_event_view', event.slug) vars = dict( event=event, admin_menu_items=enrollment_admin_menu_items(request, event), admin_title=_('Manage enrollment') ) return view_func(request, vars, event, *args, **kwargs)
def wrapper(request, event_slug, *args, **kwargs): event = get_object_or_404(Event, slug=event_slug) meta = event.intra_event_meta if not meta: messages.error( request, _('This event does not use the organizer intranet.')) return redirect('core_event_view', event.slug) if not request.user.is_authenticated(): return login_redirect(request) if not meta.is_user_admin(request.user): messages.error( request, _('You do not have administrator access to the organizer intranet.' )) return redirect('core_event_view', event.slug) menu_items = intra_admin_menu_items(request, event) vars = dict( event=event, meta=meta, admin_menu_items=menu_items, admin_title=_('Organizer intranet'), is_intra_organizer=True, is_intra_admin=True, ) return view_func(request, vars, event, *args, **kwargs)
def inner(request, event, *args, **kwargs): from core.models import Event from core.utils import login_redirect from .views import labour_admin_menu_items event = get_object_or_404(Event, slug=event) event_meta_name = '{app_label}_event_meta'.format( app_label=app_label) meta = getattr(event, event_meta_name, None) if not meta: messages.error( request, "Tämä tapahtuma ei käytä Kompassia työvoiman hallintaan.") return redirect('core_event_view', event.slug) if not meta.is_user_admin(request.user): return login_redirect(request) vars = dict( event=event, # XXX this must differ from app to app? admin_menu_items=labour_admin_menu_items(request, event)) return view_func(request, vars, event, *args, **kwargs)
def inner(request, *args, **kwargs): try: person = request.user.person # noqa except Person.DoesNotExist: return login_redirect(request, view='core_personify_view') return view_func(request, *args, **kwargs)
def wrapper(request, organization_slug, *args, **kwargs): from core.models import Organization from core.utils import login_redirect from core.views.admin_views import organization_admin_menu_items organization = get_object_or_404(Organization, slug=organization_slug) meta = organization.access_organization_meta if not meta: messages.error( request, "Tämä organisaatio ei käytä Kompassia pääsyoikeuksien hallintaan." ) return redirect('core_organization_view', organization.slug) if not organization.access_organization_meta.is_user_admin( request.user): return login_redirect(request) vars = dict(organization=organization, admin_menu_items=organization_admin_menu_items( request, organization), admin_title='Yhdistyksen ylläpito') return view_func(request, vars, organization, *args, **kwargs)
def wrapper(request, event_slug, *args, **kwargs): event = get_object_or_404(Event, slug=event_slug) meta = event.intra_event_meta if not meta: messages.error(request, _('This event does not use the organizer intranet.')) return redirect('core_event_view', event.slug) if not request.user.is_authenticated(): return login_redirect(request) if not meta.is_user_admin(request.user): messages.error(request, _('You do not have administrator access to the organizer intranet.')) return redirect('core_event_view', event.slug) menu_items = intra_admin_menu_items(request, event) vars = dict( event=event, meta=meta, admin_menu_items=menu_items, admin_title=_('Organizer intranet'), is_intra_organizer=True, is_intra_admin=True, ) return view_func(request, vars, event, *args, **kwargs)
def wrapper(request, event_slug, *args, **kwargs): event = get_object_or_404(Event, slug=event_slug) meta = event.labour_event_meta if not meta: messages.error(request, u"Tämä tapahtuma ei käytä Turskaa työvoiman hallintaan.") return redirect('core_event_view', event.slug) if not event.labour_event_meta.is_user_supervisor(request.user): return login_redirect(request) return view_func(request, event, *args, **kwargs)
def tickets_admin_pos_view(request, event): # XXX kala expects event filter via &event=foo; we specify it via /events/foo request.GET = request.GET.copy() request.GET['event'] = event.slug meta = event.tickets_event_meta if not meta: messages.error(request, "Tämä tapahtuma ei käytä Kompassia lipunmyyntiin.") return redirect('core_event_view', event.slug) if not meta.is_user_allowed_pos_access(request.user): return login_redirect(request) return lippukala_pos_view(request)
def wrapper(request, event_slug, *args, **kwargs): event = get_object_or_404(Event, slug=event_slug) meta = event.labour_event_meta if not meta: messages.error(request, "Tämä tapahtuma ei käytä Kompassia työvoiman hallintaan.") return redirect('core_event_view', event.slug) if not event.labour_event_meta.is_user_admin(request.user): return login_redirect(request) vars = dict( event=event, admin_menu_items=labour_admin_menu_items(request, event), admin_title='Työvoiman hallinta' ) return view_func(request, vars, event, *args, **kwargs)
def wrapper(request, event_slug, *args, **kwargs): event = get_object_or_404(Event, slug=event_slug) meta = event.labour_event_meta if not meta: messages.error( request, "Tämä tapahtuma ei käytä Kompassia työvoiman hallintaan.") return redirect('core_event_view', event.slug) if not event.labour_event_meta.is_user_admin(request.user): return login_redirect(request) vars = dict(event=event, admin_menu_items=labour_admin_menu_items(request, event), admin_title='Työvoiman hallinta') return view_func(request, vars, event, *args, **kwargs)
def signup_view(request, event, alternative_form_slug=None): """ This is the "gate" function. The implementation is in `actual_signup_view`. The purpose of this function is to redirect new users through the process of registering an account, entering qualifications and only then signing up. Existing users are welcomed to sign up right away. """ if alternative_form_slug: actual_signup_url = url('labour:special_signup_view', event.slug, alternative_form_slug) else: actual_signup_url = url('labour:signup_view', event.slug) if not request.user.is_authenticated: pages = [ ('core_login_view', _('Sign up or sign in...'), login_related()), ('labour:qualifications_view', _('Revise qualifications'), qualifications_related()), (actual_signup_url, _('Apply for volunteer work')), ] page_wizard_init(request, pages) return login_redirect(request) try: person = request.user.person except Person.DoesNotExist: pages = [ ('core_personify_view', _('Complete contact information')), ('labour:qualifications_view', _('Revise qualifications'), qualifications_related()), (actual_signup_url, _('Apply for volunteer work')), ] page_wizard_init(request, pages) return redirect('core_personify_view') return actual_signup_view(request, event, alternative_form_slug=alternative_form_slug)
def wrapper(request, organization_slug, *args, **kwargs): organization = get_object_or_404(Organization, slug=organization_slug) meta = organization.directory_organization_meta if not meta: messages.error(request, _('This organization does not use the directory.')) return redirect('core_organization_view', organization.slug) if not request.user.is_authenticated: return login_redirect(request) if not meta.is_user_allowed_to_access(request.user): messages.error(request, _('You do not have access to the directory.')) return redirect('core_organization_view', organization.slug) vars = dict( organization=organization, meta=meta, admin_title=_('Directory'), ) return view_func(request, vars, organization, *args, **kwargs)
def wrapper(request, event_slug, *args, **kwargs): from core.models import Event from core.utils import login_redirect from .views import tickets_admin_menu_items event = get_object_or_404(Event, slug=event_slug) meta = event.tickets_event_meta if not meta: messages.error(request, "Tämä tapahtuma ei käytä Kompassia lipunmyyntiin.") return redirect('core_event_view', event.slug) if not meta.is_user_admin(request.user): return login_redirect(request) vars = dict( event=event, admin_menu_items=tickets_admin_menu_items(request, event), admin_title='Lipunmyynnin hallinta', ) return view_func(request, vars, event, *args, **kwargs)
def labour_signup_view(request, event, alternative_form_slug=None): """ This is the "gate" function. The implementation is in `actual_labour_signup_view`. The purpose of this function is to redirect new users through the process of registering an account, entering qualifications and only then signing up. Existing users are welcomed to sign up right away. """ if alternative_form_slug: actual_signup_url = url('labour_special_signup_view', event.slug, alternative_form_slug) else: actual_signup_url = url('labour_signup_view', event.slug) if not request.user.is_authenticated(): pages = [ ('core_login_view', u'Sisäänkirjautuminen'), ('core_registration_view', u'Rekisteröityminen'), ('labour_qualifications_view', u'Pätevyydet', qualifications_related()), (actual_signup_url, u'Ilmoittautuminen'), ] page_wizard_init(request, pages) return login_redirect(request) try: person = request.user.person except Person.DoesNotExist: pages = [ ('core_personify_view', u'Perustiedot'), ('labour_qualifications_view', u'Pätevyydet', qualifications_related()), (actual_signup_url, u'Ilmoittautuminen'), ] page_wizard_init(request, pages) return redirect('core_personify_view') return actual_labour_signup_view(request, event, alternative_form_slug=alternative_form_slug)
def wrapper(request, organization_slug, *args, **kwargs): from core.models import Organization from core.utils import login_redirect from core.views.admin_views import organization_admin_menu_items organization = get_object_or_404(Organization, slug=organization_slug) meta = organization.access_organization_meta if not meta: messages.error(request, "Tämä organisaatio ei käytä Kompassia pääsyoikeuksien hallintaan.") return redirect('core_organization_view', organization.slug) if not organization.access_organization_meta.is_user_admin(request.user): return login_redirect(request) vars = dict( organization=organization, admin_menu_items=organization_admin_menu_items(request, organization), admin_title='Yhdistyksen ylläpito' ) return view_func(request, vars, organization, *args, **kwargs)
def wrapper(request, event_slug, *args, **kwargs): from core.models import Event from core.utils import login_redirect from .views import programme_admin_menu_items event = get_object_or_404(Event, slug=event_slug) meta = event.programme_event_meta if not meta: messages.error(request, u"Tämä tapahtuma ei käytä tätä sivustoa ohjelman hallintaan.") return redirect('core_event_view', event.slug) if not event.programme_event_meta.is_user_admin(request.user): return login_redirect(request) vars = dict( event=event, admin_menu_items=programme_admin_menu_items(request, event), admin_title=u'Ohjelman hallinta' ) return view_func(request, vars, event, *args, **kwargs)
def labour_signup_view(request, event, alternative_form_slug=None): """ This is the "gate" function. The implementation is in `actual_labour_signup_view`. The purpose of this function is to redirect new users through the process of registering an account, entering qualifications and only then signing up. Existing users are welcomed to sign up right away. """ if alternative_form_slug: actual_signup_url = url('labour_special_signup_view', event.slug, alternative_form_slug) else: actual_signup_url = url('labour_signup_view', event.slug) if not request.user.is_authenticated: pages = [ ('core_login_view', _('Sign up or sign in...'), login_related()), ('labour_qualifications_view', _('Revise qualifications'), qualifications_related()), (actual_signup_url, _('Apply for volunteer work')), ] page_wizard_init(request, pages) return login_redirect(request) try: person = request.user.person except Person.DoesNotExist: pages = [ ('core_personify_view', _('Complete contact information')), ('labour_qualifications_view', _('Revise qualifications'), qualifications_related()), (actual_signup_url, _('Apply for volunteer work')), ] page_wizard_init(request, pages) return redirect('core_personify_view') return actual_labour_signup_view(request, event, alternative_form_slug=alternative_form_slug)
def wrapper(request, event_slug, *args, **kwargs): from core.models import Event from core.utils import login_redirect from .views import badges_admin_menu_items event = get_object_or_404(Event, slug=event_slug) meta = event.badges_event_meta if not meta: messages.error(request, "Tämä tapahtuma ei käytä Kompassia kulkulupien hallintaan.") return redirect('core_event_view', event.slug) if not meta.is_user_admin(request.user): return login_redirect(request) vars = dict( event=event, meta=meta, admin_menu_items=badges_admin_menu_items(request, event), admin_title='Badgejen ja nimilistojen hallinta' ) return view_func(request, vars, event, *args, **kwargs)
def inner(request, event, *args, **kwargs): from core.models import Event from core.utils import login_redirect from .views import labour_admin_menu_items event = get_object_or_404(Event, slug=event) event_meta_name = '{app_label}_event_meta'.format(app_label=app_label) meta = getattr(event, event_meta_name, None) if not meta: messages.error(request, "Tämä tapahtuma ei käytä Kompassia työvoiman hallintaan.") return redirect('core_event_view', event.slug) if not meta.is_user_admin(request.user): return login_redirect(request) vars = dict( event=event, # XXX this must differ from app to app? admin_menu_items=labour_admin_menu_items(request, event) ) return view_func(request, vars, event, *args, **kwargs)
def wrapper(request, event_slug, *args, **kwargs): from core.models import Event from core.utils import login_redirect from .views import badges_admin_menu_items event = get_object_or_404(Event, slug=event_slug) meta = event.badges_event_meta if not meta: messages.error( request, "Tämä tapahtuma ei käytä Kompassia kulkulupien hallintaan.") return redirect('core_event_view', event.slug) if not meta.is_user_admin(request.user): return login_redirect(request) vars = dict(event=event, meta=meta, admin_menu_items=badges_admin_menu_items(request, event), admin_title='Badgejen ja nimilistojen hallinta') return view_func(request, vars, event, *args, **kwargs)
def wrapper(request, event_slug, *args, **kwargs): from core.models import Event from core.utils import login_redirect from .views import programme_admin_menu_items event = get_object_or_404(Event, slug=event_slug) meta = event.programme_event_meta if not meta: messages.error( request, "Tämä tapahtuma ei käytä tätä sivustoa ohjelman hallintaan.") return redirect('core_event_view', event.slug) if not event.programme_event_meta.is_user_admin(request.user): return login_redirect(request) vars = dict(event=event, admin_menu_items=programme_admin_menu_items( request, event), admin_title='Ohjelman hallinta') return view_func(request, vars, event, *args, **kwargs)
def wrapper(request, event_slug, *args, **kwargs): from core.models import Event from core.utils import login_redirect from .views import sms_admin_menu_items event = get_object_or_404(Event, slug=event_slug) meta = event.sms_event_meta if not meta: messages.error(request, "Tämä tapahtuma ei käytä Kompassia tekstiviestien lähetykseen.") return redirect('core_event_view', event.slug) if not meta.is_user_admin(request.user): return login_redirect(request) vars = dict( event=event, meta=meta, admin_menu_items=sms_admin_menu_items(request, event), admin_title='Tekstiviestit' ) return view_func(request, vars, event, *args, **kwargs)
def wrapper(request, event_slug, *args, **kwargs): from core.models import Event from core.utils import login_redirect from .views import sms_admin_menu_items event = get_object_or_404(Event, slug=event_slug) meta = event.sms_event_meta if not meta: messages.error( request, "Tämä tapahtuma ei käytä Kompassia tekstiviestien lähetykseen." ) return redirect('core_event_view', event.slug) if not meta.is_user_admin(request.user): return login_redirect(request) vars = dict(event=event, meta=meta, admin_menu_items=sms_admin_menu_items(request, event), admin_title='Tekstiviestit') return view_func(request, vars, event, *args, **kwargs)