GithubHelp home page GithubHelp logo

urlab / incubator Goto Github PK

View Code? Open in Web Editor NEW
18.0 13.0 14.0 13.25 MB

Django hackerspace website for UrLab

Home Page: https://urlab.be

License: GNU Affero General Public License v3.0

Python 53.50% HTML 45.57% CSS 0.56% JavaScript 0.02% Dockerfile 0.14% Shell 0.21%
hackerspace erp hacktoberfest

incubator's Introduction

UrLab incubator

The incubator is the main website of UrLab, a Hackerspace located in Brussels, Belgium.

A live instance can be found at urlab.be.

A screenshot of the event page

Features

The incubator has these main features:

  • Project showcase: members can pitch and present the projects they are working on at the hackerspace.
  • Event organisation: everybody can propose to organise an event and people can register their interest
  • Wiki: this speaks for itself
  • Ledger: members may pay for physical items (mostly food) at the space with a ledger on the website. This limits the amount of cash circulating in the hackerspace.
  • A SpaceAPI implementation.

Bonus features are also available:

  • Live streaming of our online events (thank you Covid-19)
  • A list of our "music of the day"
  • Member badges
  • A newsletter

If you are a hackerspace and want to use this code, go ahead !

But please note that:

  • We did not implement a member handling system (no membership fee tracking, ...)
  • The code is quite coupled to UrLab and was not made to be generic But if you want to have try, please do !

Development guide

This is a typical Django project, the usual virtualenv, requirements.txt, ... apply.

Please have a look at DEVELOPMENT.md for an in-depth installation guide as well as help for common tasks.

License

This code is under the AGPL licence. In broad, non legally binding, terms: you can do whatever you want with it, but if you modify it, you must redistribute the source and credit the original authors.

History

The incubator is born from the frustration of our old website, a Mediawiki instance and was developed in a few days during the 2016 Brussels bombings lockdown. Here is a quick brainstorming we made at that time.

incubator's People

Contributors

altf4arnold avatar bambalaam avatar bilelmoussaoui avatar bruno-brsy avatar c4ptaincrunch avatar dependabot-preview[bot] avatar dependabot[bot] avatar dodoritos avatar etnarek avatar frawni avatar herrgrim0 avatar hoh avatar kindlyfire avatar loispostula avatar melcar avatar minigrim0 avatar minorias avatar mixone-finallyhere avatar mortinat avatar olethanh avatar pierrege avatar t00n avatar thibault-v avatar titouanc avatar tomsimonart avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

incubator's Issues

Badges automatique

Genre des badges qui sont attribué automatique genre un badge au 1er motd

Interdire les images en http dans markdown

Il est actuellement possible d'inclure des images en http dans l'éditeur de projet/event/(...).
Ça provoque des warnings dans le navigateur parce que le site est en https.

TODO: procéder à une vérification des liens pour interdire l'inclusion d'images http.

Hasher les adresses mac

Salut !

Pour éviter la close contractuelle suivante liant l'utilisateur à UrLab© :

""" En donnant votre adresse MAC©, vous acceptez l'enregistrement de l'association entre votre pseudonyme et l'adresse matérielle de votre ordinateur sur le serveur de UrLab©."""

Il pourrait être une idée de hasher (exemple sha1) les adresses mac.
C'est une tache assez simple en python.
import hashlib
hash_object = hashlib.sha1(b'Hello World')
hex_dig = hash_object.hexdigest()
print(hex_dig)

Utiliser "from django.conf import settings"

On importe régulièrement des settings avec from incubator.settings import MA_VAR.
Django déconseille fortement de faire cela et d'ailleurs ça empêche de mocker les settings dans les tests.

Problème pour run l'incubateur en local

Hello,

J'ai suivi la doc du README pour faire fonctionner l'incubateur. ./manage.py migrate run normalement, tout OK. Je runserver, il se lance et quand je l'ouvre dans un browser, il me dit : a server error occured.

Les logs sur mon terminal me disent ça :

Traceback (most recent call last):
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/exception.py", line 34, in inner
    response = get_response(request)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/utils/deprecation.py", line 93, in __call__
    response = self.process_request(request)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/middleware/common.py", line 48, in process_request
    host = request.get_host()
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/http/request.py", line 122, in get_host
    raise DisallowedHost(msg)
django.core.exceptions.DisallowedHost: Invalid HTTP_HOST header: 'localhost:8000'. You may need to add 'localhost' to ALLOWED_HOSTS.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/connection.py", line 539, in connect
    sock = self._connect()
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/connection.py", line 565, in _connect
    for res in socket.getaddrinfo(self.host, self.port, self.socket_type,
  File "/usr/lib/python3.8/socket.py", line 918, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -2] Name or service not known

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/exception.py", line 108, in get_exception_response
    response = callback(request, **{**param_dict, 'exception': exception})
  File "/home/arnold/incubator/incubator/views.py", line 15, in view
    response = render(request, "error.html", {'code': code, 'message': msg})
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/shortcuts.py", line 19, in render
    content = loader.render_to_string(template_name, context, request, using=using)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/loader.py", line 62, in render_to_string
    return template.render(context, request)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/backends/django.py", line 61, in render
    return self.template.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 169, in render
    with context.bind_template(self):
  File "/usr/lib/python3.8/contextlib.py", line 113, in __enter__
    return next(self.gen)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/context.py", line 246, in bind_template
    updates.update(processor(self.request))
  File "/home/arnold/incubator/space/context_processors.py", line 7, in state
    "space_open": space_is_open(client),
  File "/home/arnold/incubator/space/djredis.py", line 53, in space_is_open
    return int(client.get('incubator_status')) == 1
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/client.py", line 1332, in get
    return self.execute_command('GET', name)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/client.py", line 836, in execute_command
    conn = self.connection or pool.get_connection(command_name, **options)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/connection.py", line 1073, in get_connection
    connection.connect()
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/connection.py", line 544, in connect
    raise ConnectionError(self._error_message(e))
redis.exceptions.ConnectionError: Error -2 connecting to rainbowdash.lan:6379. Name or service not known.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/connection.py", line 539, in connect
    sock = self._connect()
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/connection.py", line 565, in _connect
    for res in socket.getaddrinfo(self.host, self.port, self.socket_type,
  File "/usr/lib/python3.8/socket.py", line 918, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -2] Name or service not known

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/exception.py", line 34, in inner
    response = get_response(request)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/utils/deprecation.py", line 94, in __call__
    response = response or self.get_response(request)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/exception.py", line 36, in inner
    response = response_for_exception(request, exc)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/exception.py", line 82, in response_for_exception
    response = get_exception_response(request, get_resolver(get_urlconf()), 400, exc)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/exception.py", line 111, in get_exception_response
    response = handle_uncaught_exception(request, resolver, sys.exc_info())
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/exception.py", line 129, in handle_uncaught_exception
    return callback(request, **param_dict)
  File "/home/arnold/incubator/incubator/views.py", line 15, in view
    response = render(request, "error.html", {'code': code, 'message': msg})
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/shortcuts.py", line 19, in render
    content = loader.render_to_string(template_name, context, request, using=using)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/loader.py", line 62, in render_to_string
    return template.render(context, request)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/backends/django.py", line 61, in render
    return self.template.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 169, in render
    with context.bind_template(self):
  File "/usr/lib/python3.8/contextlib.py", line 113, in __enter__
    return next(self.gen)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/context.py", line 246, in bind_template
    updates.update(processor(self.request))
  File "/home/arnold/incubator/space/context_processors.py", line 7, in state
    "space_open": space_is_open(client),
  File "/home/arnold/incubator/space/djredis.py", line 53, in space_is_open
    return int(client.get('incubator_status')) == 1
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/client.py", line 1332, in get
    return self.execute_command('GET', name)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/client.py", line 836, in execute_command
    conn = self.connection or pool.get_connection(command_name, **options)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/connection.py", line 1073, in get_connection
    connection.connect()
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/connection.py", line 544, in connect
    raise ConnectionError(self._error_message(e))
redis.exceptions.ConnectionError: Error -2 connecting to rainbowdash.lan:6379. Name or service not known.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/connection.py", line 539, in connect
    sock = self._connect()
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/connection.py", line 565, in _connect
    for res in socket.getaddrinfo(self.host, self.port, self.socket_type,
  File "/usr/lib/python3.8/socket.py", line 918, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -2] Name or service not known

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.8/wsgiref/handlers.py", line 137, in run
    self.result = application(self.environ, self.start_response)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/wsgi.py", line 133, in __call__
    response = self.get_response(request)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/base.py", line 75, in get_response
    response = self._middleware_chain(request)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/exception.py", line 36, in inner
    response = response_for_exception(request, exc)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/exception.py", line 90, in response_for_exception
    response = handle_uncaught_exception(request, get_resolver(get_urlconf()), sys.exc_info())
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/exception.py", line 129, in handle_uncaught_exception
    return callback(request, **param_dict)
  File "/home/arnold/incubator/incubator/views.py", line 15, in view
    response = render(request, "error.html", {'code': code, 'message': msg})
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/shortcuts.py", line 19, in render
    content = loader.render_to_string(template_name, context, request, using=using)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/loader.py", line 62, in render_to_string
    return template.render(context, request)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/backends/django.py", line 61, in render
    return self.template.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 169, in render
    with context.bind_template(self):
  File "/usr/lib/python3.8/contextlib.py", line 113, in __enter__
    return next(self.gen)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/context.py", line 246, in bind_template
    updates.update(processor(self.request))
  File "/home/arnold/incubator/space/context_processors.py", line 7, in state
    "space_open": space_is_open(client),
  File "/home/arnold/incubator/space/djredis.py", line 53, in space_is_open
    return int(client.get('incubator_status')) == 1
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/client.py", line 1332, in get
    return self.execute_command('GET', name)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/client.py", line 836, in execute_command
    conn = self.connection or pool.get_connection(command_name, **options)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/connection.py", line 1073, in get_connection
    connection.connect()
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/redis/connection.py", line 544, in connect
    raise ConnectionError(self._error_message(e))
redis.exceptions.ConnectionError: Error -2 connecting to rainbowdash.lan:6379. Name or service not known.
[05/Nov/2020 21:23:52] "GET / HTTP/1.1" 500 59

J'ai une idée de ce qui peut le provoquer mais pas ce qui peut résoudre le problème. Une idée?

Fabricant Mac

Plutôt qu'afficher des mac adresses altérées quand on a pas de hostname, on peut afficher le fabriquant de la carte réseau...

Erreur 500 en cas de demande de récupération de compte (perte MDP)

Quand on oublie son mot de passe, ça sort une erreur 500.

Internal Server Error: /auth/password_reset/
Traceback (most recent call last):
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/exception.py", line 34, in inner
    response = get_response(request)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/base.py", line 145, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/base.py", line 143, in _get_response
    response = response.render()
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/response.py", line 105, in render
    self.content = self.rendered_content
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/response.py", line 83, in rendered_content
    return template.render(context, self._request)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/backends/django.py", line 61, in render
    return self.template.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 171, in render
    return self._render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 163, in _render
    return self.nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/loader_tags.py", line 150, in render
    return compiled_parent._render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 163, in _render
    return self.nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/loader_tags.py", line 150, in render
    return compiled_parent._render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 163, in _render
    return self.nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/loader_tags.py", line 150, in render
    return compiled_parent._render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 163, in _render
    return self.nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/defaulttags.py", line 309, in render
    return nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/loader_tags.py", line 62, in render
    result = block.nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/loader_tags.py", line 188, in render
    return template.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 173, in render
    return self._render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 163, in _render
    return self.nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/defaulttags.py", line 513, in render
    return self.nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/defaulttags.py", line 309, in render
    return nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/defaulttags.py", line 165, in render
    values = list(values)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/suit/menu.py", line 59, in __iter__
    for each in self.get_menu_items():
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/suit/menu.py", line 64, in get_menu_items
    self.menu_items = self.build_menu()
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/suit/menu.py", line 75, in build_menu
    self.map_native_apps()
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/suit/menu.py", line 116, in map_native_apps
    for native_app in self.available_apps:
TypeError: 'NoneType' object is not iterable
ERROR:django.request:Internal Server Error: /auth/password_reset/
Traceback (most recent call last):
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/exception.py", line 34, in inner
    response = get_response(request)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/base.py", line 145, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/core/handlers/base.py", line 143, in _get_response
    response = response.render()
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/response.py", line 105, in render
    self.content = self.rendered_content
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/response.py", line 83, in rendered_content
    return template.render(context, self._request)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/backends/django.py", line 61, in render
    return self.template.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 171, in render
    return self._render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 163, in _render
    return self.nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/loader_tags.py", line 150, in render
    return compiled_parent._render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 163, in _render
    return self.nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/loader_tags.py", line 150, in render
    return compiled_parent._render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 163, in _render
    return self.nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/loader_tags.py", line 150, in render
    return compiled_parent._render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 163, in _render
    return self.nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/defaulttags.py", line 309, in render
    return nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/loader_tags.py", line 62, in render
    result = block.nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/loader_tags.py", line 188, in render
    return template.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 173, in render
    return self._render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 163, in _render
    return self.nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/defaulttags.py", line 513, in render
    return self.nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/defaulttags.py", line 309, in render
    return nodelist.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 936, in render
    bit = node.render_annotated(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/base.py", line 903, in render_annotated
    return self.render(context)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/django/template/defaulttags.py", line 165, in render
    values = list(values)
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/suit/menu.py", line 59, in __iter__
    for each in self.get_menu_items():
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/suit/menu.py", line 64, in get_menu_items
    self.menu_items = self.build_menu()
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/suit/menu.py", line 75, in build_menu
    self.map_native_apps()
  File "/home/arnold/incubator/ve3/lib/python3.8/site-packages/suit/menu.py", line 116, in map_native_apps
    for native_app in self.available_apps:
TypeError: 'NoneType' object is not iterable
[06/Nov/2020 00:32:11] "GET /auth/password_reset/ HTTP/1.1" 500 273965

IndexError: list index out of range

https://sentry.urlab.be/urlab/incubator/issues/395/

IndexError: list index out of range
(2 additional frame(s) were not displayed)
...
  File "space/decorators.py", line 68, in inner
    response = some_view(request, *args, **params)
  File "events/views.py", line 208, in add_point_to_next_meeting
    meeting = get_next_meeting()
  File "events/views.py", line 203, in get_next_meeting
    .order_by('event__start')[0]

IndexError: list index out of range

Implémentation de badges

Avoir des badges qui s'affichent sur le profil et quand on clique dessus on peut avoir accès à un pdf avec notre pseudo pré rempli

form pour proposer des nouveaux badges

Créer un form ou les utilisateurs peuvent proposer un badge, faire une page avec les propositions existantes.
Seuls les admins peuvent ajouter les propositions de badge à la liste officielle.

Ajouter des articles cachés

Ajouter la possibilité de cacher des articles dans le wiki

Et peut être en profiter pour ajouter la possibilité de créer une hierarchie d'articles

Erreur 500 lorsque l'Incubator ne peut pas émettre les messages temps-réel vers un routeur crossbar

Lorsque le client crossbar ne peut pas se connecter au broker (ex: table de routage incomplète), ça raise une exception, qui résulte en une 500. Ca impacte toutes les actions qui sont envoyées à LechBot (création/modification d'un projet/event/wiki), et ça vient d'ici https://github.com/UrLab/incubator/blob/master/realtime/helpers.py#L7-L20.

Il faudrait idéalement mettre le code "dangereux" dans un try ... except, et envoyer l'erreur vers sentry tout en n'impactant pas la réponse à l'utilisateur. Je n'ai pas trouvé la config de sentry, @C4ptainCrunch tu pourrais y jeter un oeil ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.