def get_context_data(self, **kwargs): ctx = super().get_context_data(**kwargs) ctx['nav_organizer'] = [] ctx['organizer'] = self.request.organizer for recv, retv in nav_organizer.send(sender=self.request.organizer, request=self.request, organizer=self.request.organizer): ctx['nav_organizer'] += retv ctx['nav_organizer'].sort(key=lambda n: n['label']) return ctx
def get_context_data(self, **kwargs): ctx = super().get_context_data(**kwargs) ctx['nav_organizer'] = [] ctx['organizer'] = self.request.organizer for recv, retv in nav_organizer.send(sender=self.request.organizer, request=self.request, organizer=self.request.organizer): ctx['nav_organizer'] += retv ctx['nav_organizer'].sort(key=lambda n: n['label']) return ctx
def get_organizer_navigation(request): url = request.resolver_match if not url: return [] nav = [ { 'label': _('Events'), 'url': reverse('control:organizer', kwargs={'organizer': request.organizer.slug}), 'active': url.url_name == 'organizer', 'icon': 'calendar', }, ] if 'can_change_organizer_settings' in request.orgapermset: nav.append({ 'label': _('Settings'), 'url': reverse('control:organizer.edit', kwargs={'organizer': request.organizer.slug}), 'icon': 'wrench', 'children': [ { 'label': _('General'), 'url': reverse('control:organizer.edit', kwargs={'organizer': request.organizer.slug}), 'active': url.url_name == 'organizer.edit', }, { 'label': _('Display'), 'url': reverse('control:organizer.display', kwargs={'organizer': request.organizer.slug}), 'active': url.url_name == 'organizer.display', }, ] }) if 'can_change_teams' in request.orgapermset: nav.append({ 'label': _('Teams'), 'url': reverse('control:organizer.teams', kwargs={'organizer': request.organizer.slug}), 'active': 'organizer.team' in url.url_name, 'icon': 'group', }) if 'can_change_organizer_settings' in request.orgapermset: nav.append({ 'label': _('Devices'), 'url': reverse('control:organizer.devices', kwargs={'organizer': request.organizer.slug}), 'active': 'organizer.device' in url.url_name, 'icon': 'tablet', }) nav.append({ 'label': _('Webhooks'), 'url': reverse('control:organizer.webhooks', kwargs={'organizer': request.organizer.slug}), 'active': 'organizer.webhook' in url.url_name, 'icon': 'bolt', }) merge_in( nav, sorted(sum((list(a[1]) for a in nav_organizer.send( request.organizer, request=request, organizer=request.organizer)), []), key=lambda r: r['label'])) return nav
def get_organizer_navigation(request): url = request.resolver_match if not url: return [] nav = [ { 'label': _('Events'), 'url': reverse('control:organizer', kwargs={'organizer': request.organizer.slug}), 'active': url.url_name == 'organizer', 'icon': 'calendar', }, ] if 'can_change_organizer_settings' in request.orgapermset: nav.append({ 'label': _('Settings'), 'url': reverse('control:organizer.edit', kwargs={'organizer': request.organizer.slug}), 'icon': 'wrench', 'children': [{ 'label': _('General'), 'url': reverse('control:organizer.edit', kwargs={'organizer': request.organizer.slug}), 'active': url.url_name == 'organizer.edit', }, { 'label': _('Event metadata'), 'url': reverse('control:organizer.properties', kwargs={'organizer': request.organizer.slug}), 'active': url.url_name.startswith('organizer.propert'), }, { 'label': _('Webhooks'), 'url': reverse('control:organizer.webhooks', kwargs={'organizer': request.organizer.slug}), 'active': 'organizer.webhook' in url.url_name, 'icon': 'bolt', }] }) if 'can_change_teams' in request.orgapermset: nav.append({ 'label': _('Teams'), 'url': reverse('control:organizer.teams', kwargs={'organizer': request.organizer.slug}), 'active': 'organizer.team' in url.url_name and url.namespace == 'control', 'icon': 'group', }) if 'can_manage_gift_cards' in request.orgapermset: nav.append({ 'label': _('Gift cards'), 'url': reverse('control:organizer.giftcards', kwargs={'organizer': request.organizer.slug}), 'active': 'organizer.giftcard' in url.url_name, 'icon': 'credit-card', }) if 'can_change_organizer_settings' in request.orgapermset: nav.append({ 'label': _('Devices'), 'url': reverse('control:organizer.devices', kwargs={'organizer': request.organizer.slug}), 'icon': 'tablet', 'children': [{ 'label': _('Devices'), 'url': reverse('control:organizer.devices', kwargs={'organizer': request.organizer.slug}), 'active': 'organizer.device' in url.url_name, }, { 'label': _('Gates'), 'url': reverse('control:organizer.gates', kwargs={'organizer': request.organizer.slug}), 'active': 'organizer.gate' in url.url_name, }] }) nav.append({ 'label': _('Export'), 'url': reverse('control:organizer.export', kwargs={ 'organizer': request.organizer.slug, }), 'active': 'organizer.export' in url.url_name, 'icon': 'download', }) merge_in( nav, sorted(sum((list(a[1]) for a in nav_organizer.send( request.organizer, request=request, organizer=request.organizer)), []), key=lambda r: (1 if r.get('parent') else 0, r['label']))) return nav
def get_organizer_navigation(request): url = request.resolver_match if not url: return [] nav = [ { 'label': _('Events'), 'url': reverse('control:organizer', kwargs={ 'organizer': request.organizer.slug }), 'active': url.url_name == 'organizer', 'icon': 'calendar', }, ] if 'can_change_organizer_settings' in request.orgapermset: nav.append({ 'label': _('Settings'), 'url': reverse('control:organizer.edit', kwargs={ 'organizer': request.organizer.slug }), 'icon': 'wrench', 'children': [ { 'label': _('General'), 'url': reverse('control:organizer.edit', kwargs={ 'organizer': request.organizer.slug }), 'active': url.url_name == 'organizer.edit', }, { 'label': _('Display'), 'url': reverse('control:organizer.display', kwargs={ 'organizer': request.organizer.slug }), 'active': url.url_name == 'organizer.display', }, ] }) if 'can_change_teams' in request.orgapermset: nav.append({ 'label': _('Teams'), 'url': reverse('control:organizer.teams', kwargs={ 'organizer': request.organizer.slug }), 'active': 'organizer.team' in url.url_name, 'icon': 'group', }) if 'can_change_organizer_settings' in request.orgapermset: nav.append({ 'label': _('Devices'), 'url': reverse('control:organizer.devices', kwargs={ 'organizer': request.organizer.slug }), 'active': 'organizer.device' in url.url_name, 'icon': 'tablet', }) nav.append({ 'label': _('Webhooks'), 'url': reverse('control:organizer.webhooks', kwargs={ 'organizer': request.organizer.slug }), 'active': 'organizer.webhook' in url.url_name, 'icon': 'bolt', }) merge_in(nav, sorted( sum((list(a[1]) for a in nav_organizer.send(request.organizer, request=request, organizer=request.organizer)), []), key=lambda r: r['label'] )) return nav