Initial commit
This commit is contained in:
commit
a961619d08
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
db.sqlite3
|
||||
__pycache__
|
0
beesgospel/__init__.py
Normal file
0
beesgospel/__init__.py
Normal file
64
beesgospel/static/css/main.css
Normal file
64
beesgospel/static/css/main.css
Normal file
|
@ -0,0 +1,64 @@
|
|||
@font-face {
|
||||
font-family:"Harlow Solid";
|
||||
src: url("../fonts/harlow-solid-regular.ttf");
|
||||
}
|
||||
|
||||
body {
|
||||
color: #fff;
|
||||
background: #333;
|
||||
overflow-x: hidden;
|
||||
}
|
||||
a {
|
||||
color: #ffab82;
|
||||
}
|
||||
nav {
|
||||
border-bottom: 5px solid red;
|
||||
}
|
||||
.nav-link.active {
|
||||
border-bottom: 1px solid red;
|
||||
}
|
||||
.nav-sep {
|
||||
margin-top: 0.5em;
|
||||
color: #d77070;
|
||||
}
|
||||
@media only screen and (max-width : 992px) {
|
||||
.nav-sep { display: none; }
|
||||
.navbar-brand img { max-width: 5em; }
|
||||
.hometitle { font-size: 280%; }
|
||||
}
|
||||
|
||||
.alert-danger { background-color: #FFD79C; }
|
||||
.main-text { max-width: 100vw; }
|
||||
.red-bottom { border-bottom: 1px solid red; }
|
||||
.overleft { margin-left: -4rem; }
|
||||
.overright { margin-right: -4rem; }
|
||||
.harlow { font-family: "Harlow Solid"; }
|
||||
.homeurl { color: white; text-decoration: none; }
|
||||
.homeurl:hover { color: lightgrey; }
|
||||
.homediv {
|
||||
margin-top: -1.5rem;
|
||||
padding-top: 8rem;
|
||||
min-height: 700px;
|
||||
background-image: url("../img/photo_contact_back.webp");
|
||||
background-position-x: center;
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
.hometitle {
|
||||
font-size: 320%;
|
||||
padding-bottom: 6rem;
|
||||
}
|
||||
.#homeaudio audio { opacity: 0.7; }
|
||||
|
||||
.home-img {
|
||||
width: 600px;
|
||||
max-width: 100%;
|
||||
border: 2px solid white;
|
||||
}
|
||||
.bottom-red {
|
||||
border-bottom: 1px solid #c42626;
|
||||
padding-bottom: 0.2em;
|
||||
margin-bottom: 0.5em;
|
||||
}
|
||||
.left-red {
|
||||
border-left: 2px solid red;
|
||||
}
|
BIN
beesgospel/static/fonts/harlow-solid-regular.ttf
Executable file
BIN
beesgospel/static/fonts/harlow-solid-regular.ttf
Executable file
Binary file not shown.
BIN
beesgospel/static/img/abeille.png
Normal file
BIN
beesgospel/static/img/abeille.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 14 KiB |
BIN
beesgospel/static/img/photo_braderie_2019.jpg
Normal file
BIN
beesgospel/static/img/photo_braderie_2019.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 145 KiB |
BIN
beesgospel/static/img/photo_contact.jpg
Normal file
BIN
beesgospel/static/img/photo_contact.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 319 KiB |
BIN
beesgospel/static/img/photo_contact_back.webp
Normal file
BIN
beesgospel/static/img/photo_contact_back.webp
Normal file
Binary file not shown.
After Width: | Height: | Size: 197 KiB |
BIN
beesgospel/static/songs/WeShallOvercome.mp3
Normal file
BIN
beesgospel/static/songs/WeShallOvercome.mp3
Normal file
Binary file not shown.
7
beesgospel/static/vendor/bootstrap.bundle.min.js
vendored
Normal file
7
beesgospel/static/vendor/bootstrap.bundle.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
5
beesgospel/static/vendor/bootstrap.min.css
vendored
Normal file
5
beesgospel/static/vendor/bootstrap.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
0
common/__init__.py
Normal file
0
common/__init__.py
Normal file
16
common/asgi.py
Normal file
16
common/asgi.py
Normal file
|
@ -0,0 +1,16 @@
|
|||
"""
|
||||
ASGI config for beesgospel project.
|
||||
|
||||
It exposes the ASGI callable as a module-level variable named ``application``.
|
||||
|
||||
For more information on this file, see
|
||||
https://docs.djangoproject.com/en/5.2/howto/deployment/asgi/
|
||||
"""
|
||||
|
||||
import os
|
||||
|
||||
from django.core.asgi import get_asgi_application
|
||||
|
||||
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'beesgospel.settings')
|
||||
|
||||
application = get_asgi_application()
|
113
common/settings.py
Normal file
113
common/settings.py
Normal file
|
@ -0,0 +1,113 @@
|
|||
"""
|
||||
Django settings for beesgospel project.
|
||||
"""
|
||||
|
||||
from pathlib import Path
|
||||
|
||||
# Build paths inside the project like this: BASE_DIR / "subdir".
|
||||
BASE_DIR = Path(__file__).resolve().parent.parent
|
||||
|
||||
SECRET_KEY = "django-insecure-c9p_1ckesz8!6))(#n2hio16*_8_-nv8n@9n*od8kqoufiq13h"
|
||||
|
||||
# SECURITY WARNING: don"t run with debug turned on in production!
|
||||
DEBUG = True
|
||||
|
||||
ALLOWED_HOSTS = []
|
||||
|
||||
|
||||
# Application definition
|
||||
|
||||
INSTALLED_APPS = [
|
||||
"django.contrib.admin",
|
||||
"django.contrib.auth",
|
||||
"django.contrib.contenttypes",
|
||||
"django.contrib.sessions",
|
||||
"django.contrib.messages",
|
||||
"django.contrib.staticfiles",
|
||||
"beesgospel",
|
||||
]
|
||||
|
||||
MIDDLEWARE = [
|
||||
"django.middleware.security.SecurityMiddleware",
|
||||
"django.contrib.sessions.middleware.SessionMiddleware",
|
||||
"django.middleware.common.CommonMiddleware",
|
||||
"django.middleware.csrf.CsrfViewMiddleware",
|
||||
"django.contrib.auth.middleware.AuthenticationMiddleware",
|
||||
"django.contrib.messages.middleware.MessageMiddleware",
|
||||
"django.middleware.clickjacking.XFrameOptionsMiddleware",
|
||||
]
|
||||
|
||||
ROOT_URLCONF = "common.urls"
|
||||
|
||||
TEMPLATES = [
|
||||
{
|
||||
"BACKEND": "django.template.backends.django.DjangoTemplates",
|
||||
"DIRS": [BASE_DIR / "templates"],
|
||||
"APP_DIRS": True,
|
||||
"OPTIONS": {
|
||||
"context_processors": [
|
||||
"django.template.context_processors.request",
|
||||
"django.contrib.auth.context_processors.auth",
|
||||
"django.contrib.messages.context_processors.messages",
|
||||
],
|
||||
"builtins": [
|
||||
"django.templatetags.static",
|
||||
],
|
||||
},
|
||||
},
|
||||
]
|
||||
|
||||
WSGI_APPLICATION = "common.wsgi.application"
|
||||
|
||||
|
||||
# Database
|
||||
# https://docs.djangoproject.com/en/5.2/ref/settings/#databases
|
||||
|
||||
DATABASES = {
|
||||
"default": {
|
||||
"ENGINE": "django.db.backends.sqlite3",
|
||||
"NAME": BASE_DIR / "db.sqlite3",
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# Password validation
|
||||
# https://docs.djangoproject.com/en/5.2/ref/settings/#auth-password-validators
|
||||
|
||||
AUTH_PASSWORD_VALIDATORS = [
|
||||
{
|
||||
"NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator",
|
||||
},
|
||||
{
|
||||
"NAME": "django.contrib.auth.password_validation.MinimumLengthValidator",
|
||||
},
|
||||
{
|
||||
"NAME": "django.contrib.auth.password_validation.CommonPasswordValidator",
|
||||
},
|
||||
{
|
||||
"NAME": "django.contrib.auth.password_validation.NumericPasswordValidator",
|
||||
},
|
||||
]
|
||||
|
||||
|
||||
# Internationalization
|
||||
# https://docs.djangoproject.com/en/5.2/topics/i18n/
|
||||
|
||||
LANGUAGE_CODE = "fr"
|
||||
|
||||
TIME_ZONE = "UTC"
|
||||
|
||||
USE_I18N = False
|
||||
|
||||
USE_TZ = True
|
||||
|
||||
|
||||
# Static files (CSS, JavaScript, Images)
|
||||
# https://docs.djangoproject.com/en/5.2/howto/static-files/
|
||||
|
||||
STATIC_URL = "static/"
|
||||
|
||||
# Default primary key field type
|
||||
# https://docs.djangoproject.com/en/5.2/ref/settings/#default-auto-field
|
||||
|
||||
#DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField"
|
10
common/urls.py
Normal file
10
common/urls.py
Normal file
|
@ -0,0 +1,10 @@
|
|||
from django.contrib import admin
|
||||
from django.urls import path
|
||||
from django.views.generic import TemplateView
|
||||
|
||||
urlpatterns = [
|
||||
path("admin/", admin.site.urls),
|
||||
path("", TemplateView.as_view(template_name="index.html"), name="home"),
|
||||
path("presentation/", TemplateView.as_view(template_name="presentation.html"), name="presentation"),
|
||||
path("contact/", TemplateView.as_view(template_name="contact.html"), name="contact"),
|
||||
]
|
16
common/wsgi.py
Normal file
16
common/wsgi.py
Normal file
|
@ -0,0 +1,16 @@
|
|||
"""
|
||||
WSGI config for beesgospel project.
|
||||
|
||||
It exposes the WSGI callable as a module-level variable named ``application``.
|
||||
|
||||
For more information on this file, see
|
||||
https://docs.djangoproject.com/en/5.2/howto/deployment/wsgi/
|
||||
"""
|
||||
|
||||
import os
|
||||
|
||||
from django.core.wsgi import get_wsgi_application
|
||||
|
||||
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'beesgospel.settings')
|
||||
|
||||
application = get_wsgi_application()
|
22
manage.py
Executable file
22
manage.py
Executable file
|
@ -0,0 +1,22 @@
|
|||
#!/usr/bin/env python
|
||||
"""Django's command-line utility for administrative tasks."""
|
||||
import os
|
||||
import sys
|
||||
|
||||
|
||||
def main():
|
||||
"""Run administrative tasks."""
|
||||
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'common.settings')
|
||||
try:
|
||||
from django.core.management import execute_from_command_line
|
||||
except ImportError as exc:
|
||||
raise ImportError(
|
||||
"Couldn't import Django. Are you sure it's installed and "
|
||||
"available on your PYTHONPATH environment variable? Did you "
|
||||
"forget to activate a virtual environment?"
|
||||
) from exc
|
||||
execute_from_command_line(sys.argv)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
44
templates/base.html
Normal file
44
templates/base.html
Normal file
|
@ -0,0 +1,44 @@
|
|||
<!doctype html>
|
||||
<html lang="fr">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Le Gospel de l’Abeille - Bee's Gospel</title>
|
||||
<link href="{% static 'vendor/bootstrap.min.css' %}" rel="stylesheet">
|
||||
<link href="{% static 'css/main.css' %}" rel="stylesheet">
|
||||
<script src="{% static 'vendor/bootstrap.bundle.min.js' %}"></script>
|
||||
</head>
|
||||
<body>
|
||||
{% block header %}
|
||||
<nav class="navbar navbar-expand-lg bg-dark border-bottom border-body sticky-top" data-bs-theme="dark">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-brand d-flex align-items-center"><a href="/">
|
||||
<img src="{% static 'img/abeille.png' %}"></a>
|
||||
<div class="harlow">Gospel de l’Abeille<br>The Bee's Gospel Singers</div>
|
||||
</div>
|
||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarColor01"
|
||||
aria-controls="navbarColor01" aria-expanded="false" aria-label="Toggle navigation">
|
||||
<span class="navbar-toggler-icon"></span>
|
||||
</button>
|
||||
<div class="collapse navbar-collapse" id="navbarColor01">
|
||||
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
|
||||
<li class="nav-item"><a class="nav-link{% if request.path == "/presentation/"%} active{% endif %}" aria-current="page" href="{% url 'presentation' %}">Présentation</a></li>
|
||||
<li class="nav-sep">•</li>
|
||||
<li class="nav-item"><a class="nav-link{% if request.path == "/contact/" %} active{% endif %}" href="{% url 'contact' %}">Contact</a></li>
|
||||
<li class="nav-sep">•</li>
|
||||
<li class="nav-item"><a class="nav-link" href="#">Agenda</a></li>
|
||||
<li class="nav-sep">•</li>
|
||||
<li class="nav-item"><a class="nav-link" href="#">Médias</a></li>
|
||||
<li class="nav-sep">•</li>
|
||||
<li class="nav-item"><a class="nav-link" href="#">Espace membres</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
{% endblock header %}
|
||||
|
||||
<div class="container mt-4">
|
||||
{% block content %}{% endblock %}
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
53
templates/contact.html
Normal file
53
templates/contact.html
Normal file
|
@ -0,0 +1,53 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
<div class="row">
|
||||
<div class="col-md-6 mt-4 left-red">
|
||||
<h3>Président</h3>
|
||||
|
||||
<p>Eric Develey<br>
|
||||
Stavay-Mollondin 15<br>
|
||||
CH-2300 La Chaux-de-Fonds
|
||||
</p>
|
||||
|
||||
<p>+41 79 425 24 55<br>
|
||||
<a href="mailto:edeveley@bluewin.ch">edeveley@bluewin.ch</a>
|
||||
</p>
|
||||
</div>
|
||||
<div class="col-md-6 mt-4 left-red">
|
||||
<h3>Cheffe de cœur</h3>
|
||||
|
||||
<p>Nicole Jaquet Henry<br>
|
||||
Chapeau-Râblé 25<br>
|
||||
CH-2300 La Chaux-de-Fonds
|
||||
</p>
|
||||
|
||||
<p>+41 78 820 05 38<br>
|
||||
<a href="mailto:njaquethenry@gmail.com">njaquethenry@gmail.com</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p class="mt-5">Cette chorale vit grâce aux cotisations de ses membres et grâce aux cachets reçus lors des concerts.</p>
|
||||
|
||||
<p>Également soutenue financièrement par la paroisse réformée de la Chaux-de-Fonds, elle participe à plusieurs services religieux chaque année.</p>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<p>Si vous souhaitez nous soutenir, merci de faire vos dons à :</p>
|
||||
|
||||
<p class="ms-5 ps-3 left-red">
|
||||
<code>Banque Raiffeisen, 9001 St-Gallen<br>
|
||||
IBAN : CH82 8080 8008 1541 0361 4</code><br>
|
||||
Au nom de :<br>
|
||||
The Bee’s Gospel Singers, Gospel de l’Abeille<br>
|
||||
Jean-Charles COGNET (trésorier)<br>
|
||||
Le Breuillet 1<br>
|
||||
2056 Dombresson
|
||||
</p>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<img class="home-img" src="{% static 'img/photo_contact.jpg' %}">
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
27
templates/index.html
Normal file
27
templates/index.html
Normal file
|
@ -0,0 +1,27 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block header %}{% endblock %}
|
||||
{% block content %}
|
||||
<div class="homediv">
|
||||
<div class="hometitle text-center">
|
||||
<a class="homeurl harlow" href="{% url 'presentation' %}">
|
||||
<div class="d-flex justify-content-center mb-4">
|
||||
<div class="flex-grow-1 overleft red-bottom"> </div>
|
||||
<div class="main-text red-bottom">The Bee’s Gospel Singers</div>
|
||||
<div class="flex-grow-1 overright"> </div>
|
||||
</div>
|
||||
<div class="d-flex justify-content-center">
|
||||
<div class="flex-grow-1 overleft"> </div>
|
||||
<div class="main-text red-bottom">Gospel de l’Abeille</div>
|
||||
<div class="flex-grow-1 overright red-bottom"> </div>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
<div id="homeaudio" class="d-flex justify-content-center">
|
||||
<div class="text-start">
|
||||
<i>Écouter:</i><br>
|
||||
<audio controls src="{% static 'songs/WeShallOvercome.mp3' %}"></audio>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
34
templates/presentation.html
Normal file
34
templates/presentation.html
Normal file
|
@ -0,0 +1,34 @@
|
|||
{% extends "base.html" %}
|
||||
|
||||
{% block content %}
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<p><big>Le Gospel de l’Abeille, ou The Bee's Gospel Singers est un groupe d'amoureux de cette musique multiculturelle qui souhaite faire partager son plaisir et son émotion avec le public.</big></p>
|
||||
<div class="alert alert-danger mt-4">Prochain concert: <b>dim. 29 juin à 09:45</b>, Temple St-Jean La Chaux-de-Fonds<br>culte paroissial accompagné du Bee's Gospel Singers</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="text-center">
|
||||
<img class="home-img" src="{% static 'img/photo_braderie_2019.jpg' %}">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p class="mt-3">Ce groupe a la particularité de réunir une trentaine de chanteurs amateurs, chantant à 4 voix, en anglais, par cœur, sans amplification, et… juste pour le plaisir et l’émotion.</p>
|
||||
|
||||
<p>Il est ouvert à toutes les personnes amoureuses du Gospel et du Negro Spiritual, qu’elles aient une appartenance religieuse ou non.<br>
|
||||
Les répétitions ont lieu le mercredi soir de 18h30 à 20h30 (à l’exception des vacances scolaires) au temple St-Jean de La Chaux-de-Fonds.</p>
|
||||
|
||||
<p>Le Gospel de l’Abeille se produit régulièrement en concerts publics ou privés (cérémonies de mariages, anniversaires, décès,...) en Suisse et à l'Etranger.</p>
|
||||
|
||||
<h3 class="bottom-red mt-4">Historique</h3>
|
||||
<p>En l’an 2000, le pasteur camerounais Daniel Mabongo, actif dans la paroisse réformée de l’Abeille de la Chaux-de-Fonds lance l’idée auprès de ses paroissiens de la création d’un groupe de chant Gospel pour animer certains cultes.</p>
|
||||
|
||||
<p>Dès 2001, un directeur professionnel est engagé en la personne de M. Christophe Haug.</p>
|
||||
|
||||
<p>La notoriété auprès du public est rapidement au rendez-vous et, le nombre de choristes augmentant, il devient nécessaire de s’adjoindre les services d’un pianiste d’accompagnement.</p>
|
||||
|
||||
<p>Dès octobre 2002, Eric Develey, musicien amateur et enthousiaste, se met aux claviers et au service de l’équipe désormais nommée «The Bee’s Gospel Singers».</p>
|
||||
|
||||
<p>En mai 2010, la direction du groupe est confiée à Mme Nicole Jaquet Henry, cantatrice et professeur de chant,
|
||||
experte passionnée de Gospel et de Negro Spiritual.</p>
|
||||
{% endblock %}
|
Loading…
Reference in a new issue