diff --git a/build/lib/thsf/__init__.py b/build/lib/thsf/__init__.py deleted file mode 100644 index c94fa12..0000000 --- a/build/lib/thsf/__init__.py +++ /dev/null @@ -1,188 +0,0 @@ -import re -import sys -import json -import logging -from logging import config -import yaml -from flask import Flask, render_template, redirect, request, url_for -from thsf.backend import Backend -from thsf.schedule import Schedule -from thsf.navbar import Navbar - - -# ------------------------------------------------------------------------------ -# -- Configuration -# ------------------------------------------------------------------------------ -class AppConfig: - """ Flask application config """ - CONFIG_FILENAME = "config.yml" - - -# ------------------------------------------------------------------------------ -# -- Application -# ------------------------------------------------------------------------------ -logger = logging.getLogger('wsgi') -app = Flask(__name__) - - -# ------------------------------------------------------------------------------ -# -- Local configuration -# ------------------------------------------------------------------------------ -app.config.from_object(__name__ + '.AppConfig') -try: - with open(app.config["CONFIG_FILENAME"], mode="r", encoding="utf-8") as local_config_file: - app.local_config = yaml.load(local_config_file, Loader=yaml.SafeLoader) - app.config["SECRET_KEY"] = app.local_config["app"]["secret_key"] - app.config["LANGUAGES"] = app.local_config["app"]["languages"] - config.dictConfig(app.local_config["log"]) - backend = Backend(url=app.local_config["pretalx"]["url"], - apiprefix=app.local_config["pretalx"]["apiprefix"], - apikey=app.local_config["pretalx"]["apikey"]) - schedule = Schedule() - navbar = Navbar(config=app.local_config["navbar"]) -except Exception as err: - logger.critical("[{}] {}".format(err.__class__, str(err))) - sys.exit(1) - - -# ------------------------------------------------------------------------------ -# -- Tools -# ------------------------------------------------------------------------------ -@app.errorhandler(404) -def page_not_found(err): - return redirect(url_for('index')) - -def get_slots(): - return backend.get(endpoint=f"events/{app.local_config['pretalx']['event']}/schedules/{app.local_config['pretalx']['schedule']}").json() - -# ------------------------------------------------------------------------------ -# -- Custom filters -# ------------------------------------------------------------------------------ -@app.template_filter('date2dmyhm') -def date2dmyhm(date): - splitted_date = date.split("-") - splitted_time = splitted_date[2].split("T")[1].split(":") - year, month, day = (splitted_date[0], - splitted_date[1], - splitted_date[2].split("T")[0]) - hour, minutes = (splitted_time[0], splitted_time[1].split("+")[0]) - return f"{day}/{month} {hour}:{minutes}" - -@app.template_filter('date2dayclass') -def date2dayclass(date): - classes = {"26/05": "bg1", - "27/05": "bg2", - "28/05": "bg3",} - splitted_date = date.split("-") - month, day = (splitted_date[1], - splitted_date[2].split("T")[0]) - return classes[f"{day}/{month}"] - -@app.template_filter('toicon') -def date2dmyhm(slot_type): - slot_types = {"Projection": "fa-solid fa-film", - "Presentation Courte": "fa-solid fa-person-chalkboard", - "DJ Set": "fa-solid fa-guitar", - "Concert": "fa-solid fa-guitar", - "Présentation": "fa-solid fa-person-chalkboard", - "Table Ronde": "fa-solid fa-users-line", - "Atelier": "fa-solid fa-screwdriver-wrench", - "Exposition": "fa-solid fa-palette"} - return slot_types[slot_type] - -# ------------------------------------------------------------------------------ -# -- Routes -# ------------------------------------------------------------------------------ -@app.route('/favicon.ico', methods=['GET']) -def favicon(): - return redirect(url_for('static', filename='images/favicon.png')) - - -@app.route('/', methods=['GET']) -def index(): - return render_template("index.html", - navbar=navbar.get_from_page(page="/")) - -@app.route('/planning', methods=['GET']) -def planning(): - slots = get_slots() - return render_template("planning.html", - slots=sorted(slots["slots"], - key=lambda slot: slot["slot"]["start"]), - navbar=navbar.get_from_page(page="/planning")) - -@app.route('/place', methods=['GET']) -def place(): - return render_template("index.html", - navbar=navbar.get_from_page(page="/place")) - -@app.route('/food', methods=['GET']) -def food(): - return render_template("index.html", - navbar=navbar.get_from_page(page="/food")) - -@app.route('/goodies', methods=['GET']) -def goodies(): - return render_template("goodies.html", - navbar=navbar.get_from_page(page="/goodies")) - -@app.route('/concerts', methods=['GET']) -def concerts(): - slots = get_slots() - return render_template("planning.html", - slots=sorted(slots["slots"], - key=lambda slot: slot["slot"]["start"]), - navbar=navbar.get_from_page(page="/concerts"), - filter=["concerts", "dj set"]) - -@app.route('/workshops', methods=['GET']) -def workshops(): - slots = get_slots() - return render_template("planning.html", - slots=sorted(slots["slots"], - key=lambda slot: slot["slot"]["start"]), - navbar=navbar.get_from_page(page="/workshops"), - filter=["workshop"]) - -@app.route('/screenings', methods=['GET']) -def screenings(): - slots = get_slots() - return render_template("planning.html", - slots=sorted(slots["slots"], - key=lambda slot: slot["slot"]["start"]), - navbar=navbar.get_from_page(page="/screenings"), - filter=["screening"]) - -@app.route('/discussions', methods=['GET']) -def discussions(): - slots = get_slots() - return render_template("planning.html", - slots=sorted(slots["slots"], - key=lambda slot: slot["slot"]["start"]), - navbar=navbar.get_from_page(page="/discussions"), - filter=["panel discussion"]) - -@app.route('/exhibitions', methods=['GET']) -def exhibitions(): - slots = get_slots() - return render_template("planning.html", - slots=sorted(slots["slots"], - key=lambda slot: slot["slot"]["start"]), - navbar=navbar.get_from_page(page="/exhibitions"), - filter=["exhibition"]) - -@app.route('/talks', methods=['GET']) -def talks(): - slots = get_slots() - return render_template("planning.html", - slots=sorted(slots["slots"], - key=lambda slot: slot["slot"]["start"]), - navbar=navbar.get_from_page(page="/talks"), - filter=["talk", "light talk"]) - - -# ------------------------------------------------------------------------------ -# -- Main -# ------------------------------------------------------------------------------ -if __name__ == '__main__': - app.run(host='127.0.0.1', port=5000, debug=True) diff --git a/build/lib/thsf/backend/__init__.py b/build/lib/thsf/backend/__init__.py deleted file mode 100644 index 1eb615d..0000000 --- a/build/lib/thsf/backend/__init__.py +++ /dev/null @@ -1,15 +0,0 @@ -import requests -import logging - -class Backend: - def __init__(self, url, apiprefix, apikey): - self.url = url - self.apiprefix = apiprefix - self.apikey = apikey - self.session = requests.Session() - - def get(self, endpoint, params=None): - url = f"{self.url}/{self.apiprefix}/{endpoint}" - headers = {"Authorization": f"Token {self.apikey}", - "Accept": "application/json"} - return self.session.get(url, params=params, headers=headers) diff --git a/build/lib/thsf/navbar/__init__.py b/build/lib/thsf/navbar/__init__.py deleted file mode 100644 index 605c6ee..0000000 --- a/build/lib/thsf/navbar/__init__.py +++ /dev/null @@ -1,6 +0,0 @@ -class Navbar: - def __init__(self, config): - self.config = config - - def get_from_page(self, page): - return [item for item in self.config["items"] if item["url"] != page] diff --git a/build/lib/thsf/schedule/__init__.py b/build/lib/thsf/schedule/__init__.py deleted file mode 100644 index adba87e..0000000 --- a/build/lib/thsf/schedule/__init__.py +++ /dev/null @@ -1,6 +0,0 @@ -class Schedule: - def __init__(self): - self.slots = list() - - def set_slots(self, slots): - self.slots = slots diff --git a/build/lib/thsf/static/css/planning.css b/build/lib/thsf/static/css/planning.css deleted file mode 100644 index 00daac7..0000000 --- a/build/lib/thsf/static/css/planning.css +++ /dev/null @@ -1,197 +0,0 @@ -#schedule { - display: flex; - flex-direction: column; - justify-content: start; - align-items: flex-start; - align-content: flex-start; - margin-bottom: 5em; -} - -.slot { - display: flex; - flex: 1; - justify-content: center; - text-align: center; - flex-direction: row; - margin: 0.3em; - font-size: 2em; - width: 22em; -} - -.slot_info, -.slot_info_buttons { - display: flex; - flex-direction: row; - align-content: flex-start; -} - -.metadata, .data { - display: flex; - flex-direction: column; - justify-content: start; - align-content: flex-start; - padding: 0.5em; - border-style: solid; -} - -.metadata { - width: 7.333em; - border-radius: 10px 0 0 10px; - color: var(--main-color); - font-family: pfdintextcompprothin; - border-width: 1px 0 0px 1px; - text-align: left; -} - -.data { - width: 14.666em; - background-color: var(--main-color); - color: var(--alt-main-color); - border-color: var(--main-color); - border-width: 1px 1px 1px 0; - font-family: pfdintextcompprothin; - text-align: left; -} - -.metadata > .slot_info_buttons > .button, -.metadata > .slot_info_buttons > .slot_info > .button { - font-size: 1em; - margin-right: 0.3em; -} - -.title { - font-family: pfdintextcompprothin; - font-weight: bold; - margin-bottom: 0.5em; -} - -.speakers { - font-family: pfdintextcompprothin; - font-weight: bold; - margin-bottom: 0.2em; -} - -.speaker { - position: relative; - display: inline-block; -} - -.speaker .details { - visibility: hidden; - background-color: var(--main-color); - color: var(--alt-main-color); - text-align: left; - padding: 1em; - border-radius: 6px; - position: absolute; - z-index: 1; - bottom: 0; - left: 0; - opacity: 0; - transition: opacity 1s; - transform: translateY(102%); - overflow-y: auto; - border-style: solid; - border-color: var(--alt-main-color); - border-width: 1px; -} - -.speaker .details::after { - content: ""; - position: relative; - margin-left: -5px; - border-width: 5px; -} - -.speaker:hover .details { - visibility: visible; - opacity: 1; - font-size: 0.7em; - padding: 0.2em; -} - -.speaker > .details > img, -.abstract > img { - max-width: 200px; - max-height: 200px; - float: left; - margin: 0 0.5em 0.5em 0; -} - -.speaker > .details > p { - text-align: justify; - font-size: 0.5em; -} - -.slot_info { - position: relative; - display: inline-block; -} - -.slot_info .details { - visibility: hidden; - background-color: var(--main-color); - color: var(--alt-main-color); - text-align: left; - padding: 1em; - border-radius: 6px; - position: absolute; - z-index: 1; - bottom: 0; - left: 0; - opacity: 0; - transition: opacity 1s; - transform: translateX(-2em) translateY(102%); - width: 30em; - overflow-y: auto; - border-style: solid; - border-color: var(--alt-main-color); - border-width: 1px; -} - -.slot_info .details > .description { - margin-top: 1em; -} - -.slot_info .details::after { - content: ""; - position: relative; - margin-left: -5px; - border-width: 5px; -} - -.slot_info:hover .details { - visibility: visible; - opacity: 1; - font-size: 0.7em; - padding: 0.2em; -} - -.slot_info > .details > img, -.abstract > img { - max-width: 200px; - max-height: 200px; - float: left; - margin: 0 0.5em 0.5em 0; -} - -.slot_info > .details > p { - text-align: justify; - font-size: 0.5em; -} - -.abstract > p { - text-align: justify; - font-size: 1em; -} - -.data > .details { - font-family: pfdintextcompprothin; - font-weight: bold; - margin-bottom: 0.2em; - font-size: 0.8em; -} - -.data > .resources > .resource > a { - color: var(--main-bg-color); -} diff --git a/build/lib/thsf/static/css/style.css b/build/lib/thsf/static/css/style.css deleted file mode 100644 index 33d0a6f..0000000 --- a/build/lib/thsf/static/css/style.css +++ /dev/null @@ -1,183 +0,0 @@ -@font-face { - font-family: pfdintextcomppromedium; - src: url(../fonts/PFDinTextCompPro-Medium.ttf); -} - -@font-face { - font-family: pfdintextcompprothin; - src: url(../fonts/PFDinTextCompPro-Thin.ttf); -} - -:root { - --main-bg-color: #e6007e; - --alt-bg-color: #E59730; - --alt2-bg-color: #9EBF43; - --alt3-bg-color: #3096E5; - --main-color: #ffffff; - --alt-main-color: #1A000D; -} - -* { - margin: 0; - padding: 0; - box-sizing: border-box; -} - -body { - background-color: var(--main-bg-color); - font-family: pfdintextcomppromedium; - text-align: center; -} - -.white { - color: var(--main-color); -} - -.black { - color: var(--alt-main-color); -} - -.thin { - font-family: pfdintextcompprothin; -} - -.bold { - font-family: pfdintextcomppromedium; -} - -.button { - font-size: 2.5em; - transition-property: color; - transition-duration: 1s; -} - -.button:hover { - color: var(--main-color); - cursor: pointer; -} - -.logo { - width: inherit; -} - -.bg1 { - background-color: var(--alt-bg-color); - border-color: var(--alt-bg-color); -} - -.bg2 { - background-color: var(--alt2-bg-color); - border-color: var(--alt2-bg-color); -} - -.bg3 { - background-color: var(--alt3-bg-color); - border-color: var(--alt3-bg-color); -} - -a { - font-family: pfdintextcomppromedium; - font-weight: 250; - color: var(--alt-main-color); - transition-property: color; - transition-duration: 1s; - text-decoration: wavy; -} - -a:hover { - color: var(--main-color); - cursor: pointer; -} - -#main_wrapper { - display: flex; - flex-direction: row; - justify-content: center; - align-items: center; - align-content: center; - margin-bottom: 5em; -} - -#center_wrapper, #header_wrapper { - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; -} - -#header { - display: flex; - flex-direction: row; - justify-content: center; - gap: 0; - text-align: center; - font-size: 9.75em; - font-weight: bold; - padding: 0; -} - -#header > span { - margin: 0; -} - -#subheader { - margin: -1em 0 0 0; - font-size: 3.47em; -} - -#place { - margin: 0; - font-size: 2.145em; -} - -#logo_wrapper { - margin-top: 1em; - width: 40em; -} - -#navbar_wrapper { - position: fixed; - bottom: 0; - padding: 1em 0; - display: flex; - flex-direction: row; - justify-content: center; - align-items: center; - gap: 2em; - background-color: var(--main-bg-color); - width: 100vw; -} - -#blah { - margin: 2em 0 2em; - font-size: 2em; - font-family: pfdintextcompprothin; - color: var(--main-color); - width: 20em; - text-align:justify; - text-justify:inter-word; -} - -#blah > p, #blah.h2 { - margin-top: 0.5em; -} - -.important { - font-family: pfdintextcomppromedium; -} - -.left { - float: left; - margin-right: 0.5em; -} - -.right { - float: right; - margin-left: 0.5em; -} - -.logo_partner { - max-width: 250px; - max-height: 250px; - margin: 1em; -} diff --git a/build/lib/thsf/static/css/tooltip.css b/build/lib/thsf/static/css/tooltip.css deleted file mode 100644 index 642d62f..0000000 --- a/build/lib/thsf/static/css/tooltip.css +++ /dev/null @@ -1,57 +0,0 @@ -.tooltip, -.slot_tooltip { - position: relative; - display: inline-block; -} - -.tooltip .tooltiptext { - visibility: hidden; - background-color: var(--main-color); - color: var(--alt-main-color); - text-align: center; - border-radius: 6px; - padding: 5px 0; - position: absolute; - z-index: 1; - bottom: 0; - left: 0; - opacity: 0; - transform: translateX(-25%) translateY(-2em); - transition: opacity 1s; -} - -.slot_tooltip .slot_tooltiptext { - visibility: hidden; - background-color: var(--main-color); - color: var(--alt-main-color); - text-align: center; - border-radius: 6px; - padding: 5px 0; - position: absolute; - z-index: 1; - bottom: 0; - left: 0; - opacity: 0; - transform: translateX(2em); - transition: opacity 1s; -} - -.tooltip .tooltiptext::after, -.slot_tooltip .slot_tooltiptext::after { - content: ""; - position: absolute; - top: 100%; - left: 50%; - margin-left: -5px; - border-width: 5px; -} - -.tooltip:hover .tooltiptext, -.slot_tooltip:hover .slot_tooltiptext { - visibility: visible; - opacity: 1; - font-size: 0.7em; - padding: 0.2em; -} - - diff --git a/build/lib/thsf/static/fonts/PFDinTextCompPro-Medium.ttf b/build/lib/thsf/static/fonts/PFDinTextCompPro-Medium.ttf deleted file mode 100644 index 1a83209..0000000 Binary files a/build/lib/thsf/static/fonts/PFDinTextCompPro-Medium.ttf and /dev/null differ diff --git a/build/lib/thsf/static/fonts/PFDinTextCompPro-Thin.ttf b/build/lib/thsf/static/fonts/PFDinTextCompPro-Thin.ttf deleted file mode 100644 index 23cc0a0..0000000 Binary files a/build/lib/thsf/static/fonts/PFDinTextCompPro-Thin.ttf and /dev/null differ diff --git a/build/lib/thsf/static/fonts/Uni Sans Bold.otf b/build/lib/thsf/static/fonts/Uni Sans Bold.otf deleted file mode 100644 index d56a006..0000000 Binary files a/build/lib/thsf/static/fonts/Uni Sans Bold.otf and /dev/null differ diff --git a/build/lib/thsf/static/fonts/Uni Sans Book.otf b/build/lib/thsf/static/fonts/Uni Sans Book.otf deleted file mode 100644 index e210e8c..0000000 Binary files a/build/lib/thsf/static/fonts/Uni Sans Book.otf and /dev/null differ diff --git a/build/lib/thsf/static/images/affiche_v1.png b/build/lib/thsf/static/images/affiche_v1.png deleted file mode 100644 index bba9baf..0000000 Binary files a/build/lib/thsf/static/images/affiche_v1.png and /dev/null differ diff --git a/build/lib/thsf/static/images/antistatik.png b/build/lib/thsf/static/images/antistatik.png deleted file mode 100644 index 0f160be..0000000 Binary files a/build/lib/thsf/static/images/antistatik.png and /dev/null differ diff --git a/build/lib/thsf/static/images/bg.png b/build/lib/thsf/static/images/bg.png deleted file mode 100644 index c6734cb..0000000 Binary files a/build/lib/thsf/static/images/bg.png and /dev/null differ diff --git a/build/lib/thsf/static/images/clutch.png b/build/lib/thsf/static/images/clutch.png deleted file mode 100644 index 4802096..0000000 Binary files a/build/lib/thsf/static/images/clutch.png and /dev/null differ diff --git a/build/lib/thsf/static/images/favicon.png b/build/lib/thsf/static/images/favicon.png deleted file mode 100755 index 15df07e..0000000 Binary files a/build/lib/thsf/static/images/favicon.png and /dev/null differ diff --git a/build/lib/thsf/static/images/logo.svg b/build/lib/thsf/static/images/logo.svg deleted file mode 100644 index c2b921e..0000000 --- a/build/lib/thsf/static/images/logo.svg +++ /dev/null @@ -1,301 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/build/lib/thsf/static/images/pretalx-header.png b/build/lib/thsf/static/images/pretalx-header.png deleted file mode 100644 index c8e3346..0000000 Binary files a/build/lib/thsf/static/images/pretalx-header.png and /dev/null differ diff --git a/build/lib/thsf/static/images/stickers.webp b/build/lib/thsf/static/images/stickers.webp deleted file mode 100644 index 2fee5df..0000000 Binary files a/build/lib/thsf/static/images/stickers.webp and /dev/null differ diff --git a/build/lib/thsf/static/images/sweatshirt.webp b/build/lib/thsf/static/images/sweatshirt.webp deleted file mode 100644 index 999a666..0000000 Binary files a/build/lib/thsf/static/images/sweatshirt.webp and /dev/null differ diff --git a/build/lib/thsf/static/images/tetalab.png b/build/lib/thsf/static/images/tetalab.png deleted file mode 100644 index 16cf624..0000000 Binary files a/build/lib/thsf/static/images/tetalab.png and /dev/null differ diff --git a/build/lib/thsf/static/images/tetaneutral.png b/build/lib/thsf/static/images/tetaneutral.png deleted file mode 100644 index 09b297d..0000000 Binary files a/build/lib/thsf/static/images/tetaneutral.png and /dev/null differ diff --git a/build/lib/thsf/static/images/totebag.webp b/build/lib/thsf/static/images/totebag.webp deleted file mode 100644 index ae5d9a8..0000000 Binary files a/build/lib/thsf/static/images/totebag.webp and /dev/null differ diff --git a/build/lib/thsf/static/images/tshirt.webp b/build/lib/thsf/static/images/tshirt.webp deleted file mode 100644 index 1b723ea..0000000 Binary files a/build/lib/thsf/static/images/tshirt.webp and /dev/null differ diff --git a/build/lib/thsf/templates/base.html b/build/lib/thsf/templates/base.html deleted file mode 100644 index 0d099bf..0000000 --- a/build/lib/thsf/templates/base.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - THSF 2023: S/Extraire - - - - - - - - {% block headers %} - {% endblock %} - - - -
-
-
- -
- Toulouse Hacker Space Factory -
-
- 26 28 mai 2023 - - CINÉMA UTOPIA BORDEROUGE -
-
- {% block content %} - {% endblock %} - -
-
-{% block navbar %} -{% include "navbar.html" %} -{% endblock %} - - diff --git a/build/lib/thsf/templates/goodies.html b/build/lib/thsf/templates/goodies.html deleted file mode 100644 index 3468e97..0000000 --- a/build/lib/thsf/templates/goodies.html +++ /dev/null @@ -1,52 +0,0 @@ -{% extends "base.html" %} -{% block content %} -
- -
-
-

Nous avons besoin de votre soutien

-

- Nous avons besoin de votre soutien financier pour faire du Toulouse Hacker Space Factory un événement toujours différent des autres festivals. Ainsi, comme chaque année, nous faisons venir des artistes, des associations, des conférenciers, mais cela nécessite des frais importants pour leur transport et leur hébergement. C'est pourquoi nous sollicitons votre aide pour couvrir ces coûts et garantir le succès du THSF. -

-

- En contribuant financièrement au Toulouse Hacker Space Factory, vous soutenez non seulement notre événement, mais également cette communauté de passionnés qui conserve un regard différent sur la technologie. Chaque don compte, c'est pourquoi nous avons créé des lots de goodies en guise de remerciement pour votre contribution. -

-

- Pour faciliter la collecte des dons et vous remercier de votre participation, nous avons mis en place une cagnote Leetchi qui nous permettra de recenser les dons et vous permettra de suivre l'évolution du financement de notre festival. -

-

- Stickers - À partir de 10€, vous recevrez un lot de 4 stickers au logo de l'édition 2023 du THSF. -

-

- T-Shirt - Pour un don de 20€ ou plus, vous recevrez un lot de 4 stickers et un T-Shirt au logo de l'édition 2023 du THSF. -

-

- Tote Bag - À partir de 30€, vous recevrez un lot de 4 stickers, un T-Shirt et un Tote bag au logo de l'édition 2023 du THSF. -

-

- Sweat shirt - Et pour plus de 40€, vous recevrez un lot de 4 stickers, un T-Shirt, un Tote bag et un sweat-shirt estampillés du logo de l'édition 2023 du THSF. -

-

- Nous sommes également conscients que la situation actuelle est particulièrement difficile. C'est pourquoi nous nous engageons à ce que toutes les sommes qui dépasseront notre objectif de financement de 2 000 € seront reversées aux caisses des grévistes de la réforme des retraites. Ainsi, votre contribution permettra également de soutenir une cause importante et de faire une différence dans la vie de ceux qui se battent pour nos droits. -

-
-{% endblock %} diff --git a/build/lib/thsf/templates/index.html b/build/lib/thsf/templates/index.html deleted file mode 100644 index 2bd6c35..0000000 --- a/build/lib/thsf/templates/index.html +++ /dev/null @@ -1,19 +0,0 @@ -{% extends "base.html" %} -{% block content %} -
- -
-
-

Le T.H.S.F est enfin de retour !

-

Nous vous invitons à passer un week-end de 3 jours à Utopia Borderouge Toulouse pour partager avec vous nos projets, nos réflexions, nos performances, nos poésies et nos doutes sur la technologie.

- -

Après avoir été soutenu et accueilli pendant 10 ans par Mix'Art Myrys, le Toulouse HackerSpace Factory (T.H.S.F) se tient désormais dans un autre lieu où l'utopie nécessaire est inscrite programme.

- -

Cette année nous mettrons en avant des réflexions sur l'extractivisme des ressources planétaires, des données, de la valeur travail.

- -

Comme toujours, notre objectif est de créer un festival qui poétise les bifurcations de nos idées communes et qui réinvente le sens de certains schémas imposés par notre époque. Rejoignez-nous pour une expérience enrichissante et pleine de surprises !

-
-{% endblock %} diff --git a/build/lib/thsf/templates/navbar.html b/build/lib/thsf/templates/navbar.html deleted file mode 100644 index 34e8826..0000000 --- a/build/lib/thsf/templates/navbar.html +++ /dev/null @@ -1,8 +0,0 @@ - diff --git a/build/lib/thsf/templates/planning.html b/build/lib/thsf/templates/planning.html deleted file mode 100644 index ad5335c..0000000 --- a/build/lib/thsf/templates/planning.html +++ /dev/null @@ -1,14 +0,0 @@ -{% extends "base.html" %} -{% block content %} -
- {% for slot in slots %} - {% if filter %} - {% if slot.submission_type.en | lower in filter %} - {% include "slot.html" %} - {% endif %} - {% else %} - {% include "slot.html" %} - {% endif %} - {% endfor %} -
-{% endblock %} diff --git a/build/lib/thsf/templates/slot.html b/build/lib/thsf/templates/slot.html deleted file mode 100644 index b87bc73..0000000 --- a/build/lib/thsf/templates/slot.html +++ /dev/null @@ -1,53 +0,0 @@ -
-
-
- {% for speaker in slot.speakers %} -
- {{speaker.name | title}} - - {% if speaker.avatar or speaker.biography %} -
- {% if speaker.avatar %} - - {% endif %} - {% if speaker['biography'] %} -

{{speaker.biography}}

- {% endif %} -
- {% endif %} -

- {% endfor %} -
-
- - - {{slot.submission_type.fr}} - - -
- -
-
- {% if slot['image'] %} - - {% endif %} -

{{slot.abstract}}

-
-
{{slot.description}}
-
-
-
-
-
-
-
{{slot.title}}
-
{{slot.slot.room.fr}}
-
{{slot.slot.start | date2dmyhm}} - {{slot.duration}} minutes ({{slot.content_locale | capitalize}})
-
-
-
diff --git a/src/thsf.egg-info/PKG-INFO b/src/thsf.egg-info/PKG-INFO deleted file mode 100644 index 6156151..0000000 --- a/src/thsf.egg-info/PKG-INFO +++ /dev/null @@ -1,50 +0,0 @@ -Metadata-Version: 2.1 -Name: thsf -Version: 0.0.1 -Summary: "THSF website" -Home-page: https://git.tetalab.org/tetalab/thsf.net -Author: Doug Le Tough -Author-email: doug@redatomik.org -Classifier: Programming Language :: Python :: 3 -Classifier: License :: OSI Approved :: MIT License -Classifier: Operating System :: OS Independent -Requires-Python: >=3.7 -Description-Content-Type: text/markdown -Provides-Extra: dev - -# THSF.NET - -Le site du THSF - -## Modifier le site - -Il n'est **pas possible** de pousser directement des modifications sur la branche `master`. - -Pour modifier le site, il est nécessaire de créer une branche spécifique et d'y pousser vos modifications. - -## Publication du site - -Lorsque vous êtes satisfaits de vos modifications, vous pouvez créer [une demande d'ajout](https://git.tetalab.org/tetalab/thsf.net/pulls) de votre branche sur la branche `master`. - -Lorsque la demande de fusion sera acceptée (vous pouvez auto-accepter vos demandes de fusion), vos modifications seront automatiquement publiées sur [le site du THSF](https://www.thsf.net). - -### Personnalisation de la publication - -Afin de rendre le processus plus souple, il est possible de personnaliser la livraison en plaçant **à la racine du dépôt** un fichier `Makefile` contenant une cible `all` qui sera systématiquement exécutée. - -C'est dans cette cible `all` que vous pourrez mettre toutes vos commandes personnalisées, typiquement l'installation de modules `python`, etc. - -Le processus de publication est le suivant: - -1. Le site actuellement en production est **supprimé** - -2. La branche `master` du présent dépôt est cloné sur le serveur hébergeant le site du **THSF** - -3. Si un fichier `Makefile` se trouve **à la racine du dépôt**, la cible `all` (i.e: `make all`) est automatiquement exécutée. - - -## Contrôle de qualité et tests - -Aucun contrôle de qualité ou de tests n'est mis en place. Vous êtes seuls sur le coup. - -Soyez responsable et **testez vos modifications sur votre machine locale avant de fusionner votre branche** sur la branche `master`. diff --git a/src/thsf.egg-info/SOURCES.txt b/src/thsf.egg-info/SOURCES.txt deleted file mode 100644 index 7e16a4f..0000000 --- a/src/thsf.egg-info/SOURCES.txt +++ /dev/null @@ -1,40 +0,0 @@ -MANIFEST.in -README.md -pyproject.toml -setup.cfg -setup.py -src/thsf/__init__.py -src/thsf.egg-info/PKG-INFO -src/thsf.egg-info/SOURCES.txt -src/thsf.egg-info/dependency_links.txt -src/thsf.egg-info/requires.txt -src/thsf.egg-info/top_level.txt -src/thsf/backend/__init__.py -src/thsf/navbar/__init__.py -src/thsf/schedule/__init__.py -src/thsf/static/css/planning.css -src/thsf/static/css/style.css -src/thsf/static/css/tooltip.css -src/thsf/static/fonts/PFDinTextCompPro-Medium.ttf -src/thsf/static/fonts/PFDinTextCompPro-Thin.ttf -src/thsf/static/fonts/Uni Sans Bold.otf -src/thsf/static/fonts/Uni Sans Book.otf -src/thsf/static/images/affiche_v1.png -src/thsf/static/images/antistatik.png -src/thsf/static/images/bg.png -src/thsf/static/images/clutch.png -src/thsf/static/images/favicon.png -src/thsf/static/images/logo.svg -src/thsf/static/images/pretalx-header.png -src/thsf/static/images/stickers.webp -src/thsf/static/images/sweatshirt.webp -src/thsf/static/images/tetalab.png -src/thsf/static/images/tetaneutral.png -src/thsf/static/images/totebag.webp -src/thsf/static/images/tshirt.webp -src/thsf/templates/base.html -src/thsf/templates/goodies.html -src/thsf/templates/index.html -src/thsf/templates/navbar.html -src/thsf/templates/planning.html -src/thsf/templates/slot.html \ No newline at end of file diff --git a/src/thsf.egg-info/dependency_links.txt b/src/thsf.egg-info/dependency_links.txt deleted file mode 100644 index 8b13789..0000000 --- a/src/thsf.egg-info/dependency_links.txt +++ /dev/null @@ -1 +0,0 @@ - diff --git a/src/thsf.egg-info/requires.txt b/src/thsf.egg-info/requires.txt deleted file mode 100644 index c1c4a3b..0000000 --- a/src/thsf.egg-info/requires.txt +++ /dev/null @@ -1,17 +0,0 @@ -flask -gunicorn -pyYAML -requests - -[dev] -twine -build -wheel>=0.37.0 -flake8>=4.0.1 -flake8-breakpoint>=1.1.0 -flake8-builtins>=1.5.3 -flake8-print>=4.0.0 -flake8-return>=1.1.3 -pep8-naming>=0.8.2 -setuptools>=60.9.2 -pylint>=2.12.2 diff --git a/src/thsf.egg-info/top_level.txt b/src/thsf.egg-info/top_level.txt deleted file mode 100644 index 95f0ebd..0000000 --- a/src/thsf.egg-info/top_level.txt +++ /dev/null @@ -1 +0,0 @@ -thsf diff --git a/thsf.pid b/thsf.pid deleted file mode 100644 index 83c561c..0000000 --- a/thsf.pid +++ /dev/null @@ -1 +0,0 @@ -96619