mirror of
https://github.com/partitioncloud/partitioncloud-server.git
synced 2025-01-23 17:26:26 +01:00
Add launch page
This commit is contained in:
parent
3f888c39d2
commit
ebc454f7a2
@ -30,3 +30,6 @@ ENABLED_LOGS=["NEW_GROUPE", "NEW_ALBUM", "NEW_PARTITION", "NEW_USER", "SERVER_RE
|
|||||||
|
|
||||||
# Available languages
|
# Available languages
|
||||||
LANGUAGES=['en', 'fr']
|
LANGUAGES=['en', 'fr']
|
||||||
|
|
||||||
|
# Show Launch page
|
||||||
|
LAUNCH_PAGE=True
|
@ -8,11 +8,11 @@ import datetime
|
|||||||
import subprocess
|
import subprocess
|
||||||
import importlib.util
|
import importlib.util
|
||||||
|
|
||||||
from flask import Flask, g, redirect, render_template, request, send_file, flash, session, abort
|
from flask import Flask, g, redirect, render_template, request, send_file, flash, session, abort, url_for
|
||||||
from werkzeug.security import generate_password_hash
|
from werkzeug.security import generate_password_hash
|
||||||
from flask_babel import Babel, _
|
from flask_babel import Babel, _
|
||||||
|
|
||||||
from .modules.utils import User, Album, get_all_albums
|
from .modules.utils import User, Album, get_all_albums, user_count, partition_count
|
||||||
from .modules import albums, auth, partition, admin, groupe, thumbnails, logging
|
from .modules import albums, auth, partition, admin, groupe, thumbnails, logging
|
||||||
from .modules.auth import admin_required, login_required
|
from .modules.auth import admin_required, login_required
|
||||||
from .modules.db import get_db
|
from .modules.db import get_db
|
||||||
@ -101,8 +101,20 @@ logging.log([], logging.LogEntry.SERVER_RESTART)
|
|||||||
|
|
||||||
@app.route("/")
|
@app.route("/")
|
||||||
def home():
|
def home():
|
||||||
"""Redirect to home"""
|
"""Show launch page if enabled"""
|
||||||
return redirect("/albums/")
|
if g.user is None:
|
||||||
|
if app.config["LAUNCH_PAGE"]:
|
||||||
|
return redirect(url_for("launch_page"))
|
||||||
|
return redirect(url_for("auth.login"))
|
||||||
|
return redirect(url_for("albums.index"))
|
||||||
|
|
||||||
|
|
||||||
|
@app.route("/launch")
|
||||||
|
def launch_page():
|
||||||
|
"""Show launch page if enabled"""
|
||||||
|
if not app.config["LAUNCH_PAGE"]:
|
||||||
|
return home()
|
||||||
|
return render_template("launch.html", user_count=user_count(), partition_count=partition_count())
|
||||||
|
|
||||||
|
|
||||||
@app.route("/add-user", methods=["GET", "POST"])
|
@app.route("/add-user", methods=["GET", "POST"])
|
||||||
@ -133,10 +145,10 @@ def add_user():
|
|||||||
if album_uuid != "":
|
if album_uuid != "":
|
||||||
user.join_album(album_uuid)
|
user.join_album(album_uuid)
|
||||||
flash(_("Created user %(username)s", username=username))
|
flash(_("Created user %(username)s", username=username))
|
||||||
return redirect("/albums")
|
return redirect(url_for("albums.index"))
|
||||||
except LookupError:
|
except LookupError:
|
||||||
flash(_("This album does not exists, but user %(username)s has been created", username=username))
|
flash(_("This album does not exists, but user %(username)s has been created", username=username))
|
||||||
return redirect("/albums")
|
return redirect(url_for("albums.index"))
|
||||||
|
|
||||||
flash(error)
|
flash(error)
|
||||||
return render_template("auth/register.html", albums=get_all_albums(), user=current_user)
|
return render_template("auth/register.html", albums=get_all_albums(), user=current_user)
|
||||||
|
@ -130,6 +130,7 @@ def register():
|
|||||||
[user.username, user.id, False],
|
[user.username, user.id, False],
|
||||||
logging.LogEntry.NEW_USER
|
logging.LogEntry.NEW_USER
|
||||||
)
|
)
|
||||||
|
return redirect(url_for("auth.login"))
|
||||||
|
|
||||||
return render_template("auth/register.html")
|
return render_template("auth/register.html")
|
||||||
|
|
||||||
@ -169,4 +170,4 @@ def login():
|
|||||||
def logout():
|
def logout():
|
||||||
"""Clear the current session, including the stored user id."""
|
"""Clear the current session, including the stored user id."""
|
||||||
session.clear()
|
session.clear()
|
||||||
return redirect(url_for("auth.login"))
|
return redirect("/")
|
||||||
|
@ -72,3 +72,25 @@ def get_all_albums():
|
|||||||
"uuid": a["uuid"]
|
"uuid": a["uuid"]
|
||||||
} for a in albums
|
} for a in albums
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
def user_count():
|
||||||
|
db = get_db()
|
||||||
|
count = db.execute(
|
||||||
|
"""
|
||||||
|
SELECT COUNT(*) as count FROM user
|
||||||
|
"""
|
||||||
|
).fetchone()
|
||||||
|
|
||||||
|
return count[0]
|
||||||
|
|
||||||
|
|
||||||
|
def partition_count():
|
||||||
|
db = get_db()
|
||||||
|
count = db.execute(
|
||||||
|
"""
|
||||||
|
SELECT COUNT(*) FROM partition
|
||||||
|
"""
|
||||||
|
).fetchone()
|
||||||
|
|
||||||
|
return count[0]
|
BIN
partitioncloud/static/images/dark-preview.png
Normal file
BIN
partitioncloud/static/images/dark-preview.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 146 KiB |
BIN
partitioncloud/static/images/light-preview.png
Normal file
BIN
partitioncloud/static/images/light-preview.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 150 KiB |
110
partitioncloud/static/style/launch.css
Normal file
110
partitioncloud/static/style/launch.css
Normal file
@ -0,0 +1,110 @@
|
|||||||
|
@import url('/static/style/colors.css');
|
||||||
|
|
||||||
|
|
||||||
|
* {
|
||||||
|
font-family: var(--font-family);
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
color: var(--color-subtext1);
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
text-decoration: none;
|
||||||
|
color: var(--color-blue);
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
color: var(--color-text);
|
||||||
|
background-color: var(--color-base);
|
||||||
|
}
|
||||||
|
|
||||||
|
.no-color-link {
|
||||||
|
color: var(--color-text);
|
||||||
|
}
|
||||||
|
|
||||||
|
button {
|
||||||
|
padding: 10px 20px;
|
||||||
|
margin: 5px;
|
||||||
|
border-radius: 3px;
|
||||||
|
cursor: pointer;
|
||||||
|
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 0.95em;
|
||||||
|
|
||||||
|
border: var(--color-subtext0);
|
||||||
|
border-width: 2px;
|
||||||
|
border-style: solid;
|
||||||
|
|
||||||
|
background-color: var(--color-subtext0);
|
||||||
|
color: var(--color-base);
|
||||||
|
}
|
||||||
|
|
||||||
|
button.blue {
|
||||||
|
background-color: var(--color-blue);
|
||||||
|
border-color: var(--color-blue);
|
||||||
|
}
|
||||||
|
|
||||||
|
button:hover {
|
||||||
|
background-color: var(--color-crust);
|
||||||
|
border-color: var(--color-blue);
|
||||||
|
color: var(--color-blue);
|
||||||
|
}
|
||||||
|
|
||||||
|
header {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
#login {
|
||||||
|
position: absolute;
|
||||||
|
right: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#logo-container {
|
||||||
|
margin: 25px;
|
||||||
|
}
|
||||||
|
|
||||||
|
main {
|
||||||
|
margin: 5vw;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
#instance-stats {
|
||||||
|
margin: 35px 0px;
|
||||||
|
color: var(--color-subtext1);
|
||||||
|
}
|
||||||
|
|
||||||
|
img.preview {
|
||||||
|
max-width: 85vw;
|
||||||
|
border-style: solid;
|
||||||
|
border-radius: 5px;
|
||||||
|
border-color: var(--color-overlay1);
|
||||||
|
border-width: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
img#light-preview {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
img#dark-preview {
|
||||||
|
display: initial;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: light) {
|
||||||
|
img#light-preview {
|
||||||
|
display: initial;
|
||||||
|
}
|
||||||
|
|
||||||
|
img#dark-preview {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
footer {
|
||||||
|
color: var(--color-subtext1);
|
||||||
|
position: fixed;
|
||||||
|
bottom: 0;
|
||||||
|
width: 100%;
|
||||||
|
text-align: center;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
62
partitioncloud/templates/launch.html
Normal file
62
partitioncloud/templates/launch.html
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="{{ lang }}">
|
||||||
|
<head>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
||||||
|
<meta name="description" content="PartitionCloud launch page" />
|
||||||
|
<meta name="theme-color" media="(prefers-color-scheme: light)" content="#eff1f5">
|
||||||
|
<meta name="theme-color" media="(prefers-color-scheme: dark)" content="#1e1e2e">
|
||||||
|
<title>PartitionCloud</title>
|
||||||
|
<link rel="stylesheet" href="{{ url_for('static', filename='style/launch.css') }}">
|
||||||
|
<link rel="icon" type="image/png" href="{{ url_for('static', filename='icons/512.png') }}" />
|
||||||
|
<link rel="apple-touch-icon" href="{{ url_for('static', filename='icons/512.png') }}">
|
||||||
|
<link rel="manifest" href="{{ url_for('static', filename='manifest.webmanifest') }}" />
|
||||||
|
</head>
|
||||||
|
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<header>
|
||||||
|
<a id="logo-container" href="/">
|
||||||
|
<img src="/static/icons/icon.png" width="60px" height="auto" alt="Logo">
|
||||||
|
</a>
|
||||||
|
<div>
|
||||||
|
<a href="/auth/login">
|
||||||
|
<button class="blue" id="login">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 24 24" class="iconify inline" data-icon="fluent:key-24-filled" style="vertical-align: -0.125em; transform: rotate(360deg);"><path fill="currentColor" d="M8.95 8.6a6.554 6.554 0 0 1 6.55-6.55c3.596 0 6.55 2.819 6.55 6.45a6.554 6.554 0 0 1-6.55 6.55a6.243 6.243 0 0 1-1.552-.204A1.25 1.25 0 0 1 12.7 16.05h-1.75v1.75c0 .69-.56 1.25-1.25 1.25H7.95v1.25a1.75 1.75 0 0 1-1.75 1.75H3.7a1.75 1.75 0 0 1-1.75-1.75v-2.172c0-.73.29-1.429.806-1.944L8.99 9.948a.275.275 0 0 0 .07-.244A6.386 6.386 0 0 1 8.95 8.6Zm9.3-1.6a1.25 1.25 0 1 0-2.5 0a1.25 1.25 0 0 0 2.5 0Z"></path></svg>
|
||||||
|
{{ _("Log in") }}
|
||||||
|
</button>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<main>
|
||||||
|
<h1>{{ _("PartitionCloud is an open-source score library server, to help you in all your musical activities") }}</h1>
|
||||||
|
<div id="actions">
|
||||||
|
<a href="/auth/login" class="no-color-link">
|
||||||
|
<button class="blue">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M4 13a8 8 0 0 1 7 7a6 6 0 0 0 3 -5a9 9 0 0 0 6 -8a3 3 0 0 0 -3 -3a9 9 0 0 0 -8 6a6 6 0 0 0 -5 3" /><path d="M7 14a6 6 0 0 0 -3 6a6 6 0 0 0 6 -3" /><path d="M15 9m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0" /></svg>
|
||||||
|
{{ _("Let's go !") }}
|
||||||
|
</button>
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/partitioncloud/partitioncloud-server" class="no-color-link">
|
||||||
|
<button>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M16 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0" /><path d="M12 8m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0" /><path d="M12 16m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0" /><path d="M12 15v-6" /><path d="M15 11l-2 -2" /><path d="M11 7l-1.9 -1.9" /><path d="M13.446 2.6l7.955 7.954a2.045 2.045 0 0 1 0 2.892l-7.955 7.955a2.045 2.045 0 0 1 -2.892 0l-7.955 -7.955a2.045 2.045 0 0 1 0 -2.892l7.955 -7.955a2.045 2.045 0 0 1 2.892 0z" /></svg>
|
||||||
|
{{ _("Check code") }}
|
||||||
|
</button>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div id="instance-stats">
|
||||||
|
{% set user_bold %}
|
||||||
|
<b>{{ user_count }}</b>
|
||||||
|
{% endset %}
|
||||||
|
{% set partition_bold %}
|
||||||
|
<b>{{ partition_count }}</b>
|
||||||
|
{% endset %}
|
||||||
|
{{ _("This instance is used by %(users)s users with a total of %(scores)s scores.", users=user_bold, scores=partition_bold) }}
|
||||||
|
</div>
|
||||||
|
<img class="preview" id="dark-preview" src="/static/images/dark-preview.png" loading="lazy">
|
||||||
|
<img class="preview" id="light-preview" src="/static/images/light-preview.png" loading="lazy">
|
||||||
|
</main>
|
||||||
|
<footer>{{ version }}</footer>
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: PROJECT VERSION\n"
|
"Project-Id-Version: PROJECT VERSION\n"
|
||||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||||
"POT-Creation-Date: 2024-01-25 16:19+0100\n"
|
"POT-Creation-Date: 2024-01-29 18:32+0100\n"
|
||||||
"PO-Revision-Date: 2024-01-22 15:38+0100\n"
|
"PO-Revision-Date: 2024-01-22 15:38+0100\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language: en\n"
|
"Language: en\n"
|
||||||
@ -18,12 +18,12 @@ msgstr ""
|
|||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Generated-By: Babel 2.14.0\n"
|
"Generated-By: Babel 2.14.0\n"
|
||||||
|
|
||||||
#: partitioncloud/__init__.py:135
|
#: partitioncloud/__init__.py:147
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Created user %(username)s"
|
msgid "Created user %(username)s"
|
||||||
msgstr "Created user %(username)s"
|
msgstr "Created user %(username)s"
|
||||||
|
|
||||||
#: partitioncloud/__init__.py:138
|
#: partitioncloud/__init__.py:150
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "This album does not exists, but user %(username)s has been created"
|
msgid "This album does not exists, but user %(username)s has been created"
|
||||||
msgstr "This album does not exists, but user %(username)s has been created"
|
msgstr "This album does not exists, but user %(username)s has been created"
|
||||||
@ -141,7 +141,7 @@ msgstr "New users registration is disabled by owner."
|
|||||||
msgid "Successfully created new user. You can log in."
|
msgid "Successfully created new user. You can log in."
|
||||||
msgstr "Successfully created new user. You can log in."
|
msgstr "Successfully created new user. You can log in."
|
||||||
|
|
||||||
#: partitioncloud/modules/auth.py:152
|
#: partitioncloud/modules/auth.py:153
|
||||||
msgid "Incorrect username or password"
|
msgid "Incorrect username or password"
|
||||||
msgstr "Incorrect username or password"
|
msgstr "Incorrect username or password"
|
||||||
|
|
||||||
@ -217,82 +217,108 @@ msgstr "You are not allowed to delete this score."
|
|||||||
msgid "Score deleted."
|
msgid "Score deleted."
|
||||||
msgstr "Score deleted."
|
msgstr "Score deleted."
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:23
|
#: partitioncloud/templates/base.html:25
|
||||||
msgid "New Album"
|
msgid "New Album"
|
||||||
msgstr "New Album"
|
msgstr "New Album"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:25 partitioncloud/templates/base.html:36
|
#: partitioncloud/templates/base.html:27 partitioncloud/templates/base.html:38
|
||||||
#: partitioncloud/templates/groupe/index.html:10
|
#: partitioncloud/templates/groupe/index.html:10
|
||||||
#: partitioncloud/templates/partition/attachments.html:11
|
#: partitioncloud/templates/partition/attachments.html:11
|
||||||
msgid "Name"
|
msgid "Name"
|
||||||
msgstr "Name"
|
msgstr "Name"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:26 partitioncloud/templates/base.html:37
|
#: partitioncloud/templates/base.html:28 partitioncloud/templates/base.html:39
|
||||||
msgid "Create"
|
msgid "Create"
|
||||||
msgstr "Create"
|
msgstr "Create"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:30
|
#: partitioncloud/templates/base.html:32
|
||||||
msgid "I want to create a collection of albums."
|
msgid "I want to create a collection of albums."
|
||||||
msgstr "I want to create a collection of albums."
|
msgstr "I want to create a collection of albums."
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:30
|
#: partitioncloud/templates/base.html:32
|
||||||
msgid "Create group"
|
msgid "Create group"
|
||||||
msgstr "Create group"
|
msgstr "Create group"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:34
|
#: partitioncloud/templates/base.html:36
|
||||||
msgid "Create new group"
|
msgid "Create new group"
|
||||||
msgstr "Create new group"
|
msgstr "Create new group"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:61
|
#: partitioncloud/templates/base.html:63
|
||||||
msgid "Search"
|
msgid "Search"
|
||||||
msgstr "Search"
|
msgstr "Search"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:63
|
#: partitioncloud/templates/base.html:65
|
||||||
msgid "Number of online searches"
|
msgid "Number of online searches"
|
||||||
msgstr "Number of online searches"
|
msgstr "Number of online searches"
|
||||||
|
|
||||||
#: partitioncloud/templates/admin/index.html:23
|
#: partitioncloud/templates/admin/index.html:23
|
||||||
#: partitioncloud/templates/base.html:71
|
#: partitioncloud/templates/base.html:73
|
||||||
#: partitioncloud/templates/partition/details.html:41
|
#: partitioncloud/templates/partition/details.html:41
|
||||||
msgid "Albums"
|
msgid "Albums"
|
||||||
msgstr "Albums"
|
msgstr "Albums"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:75
|
#: partitioncloud/templates/base.html:77
|
||||||
msgid "New album"
|
msgid "New album"
|
||||||
msgstr "New album"
|
msgstr "New album"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:92
|
#: partitioncloud/templates/base.html:94
|
||||||
msgid "No albums"
|
msgid "No albums"
|
||||||
msgstr "No albums"
|
msgstr "No albums"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:111
|
#: partitioncloud/templates/base.html:113
|
||||||
msgid "No album available"
|
msgid "No album available"
|
||||||
msgstr "No album available"
|
msgstr "No album available"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:125
|
#: partitioncloud/templates/base.html:127
|
||||||
msgid "Log in to see your albums"
|
msgid "Log in to see your albums"
|
||||||
msgstr "Log in to see your albums"
|
msgstr "Log in to see your albums"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:139
|
#: partitioncloud/templates/base.html:141
|
||||||
msgid "Log out"
|
msgid "Log out"
|
||||||
msgstr "Log out"
|
msgstr "Log out"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:154
|
#: partitioncloud/templates/base.html:156
|
||||||
msgid "Admin Panel"
|
msgid "Admin Panel"
|
||||||
msgstr "Admin Panel"
|
msgstr "Admin Panel"
|
||||||
|
|
||||||
#: partitioncloud/templates/auth/register.html:5
|
#: partitioncloud/templates/auth/register.html:5
|
||||||
#: partitioncloud/templates/auth/register.html:20
|
#: partitioncloud/templates/auth/register.html:20
|
||||||
#: partitioncloud/templates/base.html:166
|
#: partitioncloud/templates/base.html:168
|
||||||
msgid "Create account"
|
msgid "Create account"
|
||||||
msgstr "Create account"
|
msgstr "Create account"
|
||||||
|
|
||||||
#: partitioncloud/templates/auth/login.html:5
|
#: partitioncloud/templates/auth/login.html:5
|
||||||
#: partitioncloud/templates/auth/login.html:10
|
#: partitioncloud/templates/auth/login.html:10
|
||||||
#: partitioncloud/templates/base.html:168
|
#: partitioncloud/templates/base.html:170
|
||||||
|
#: partitioncloud/templates/launch.html:26
|
||||||
msgid "Log in"
|
msgid "Log in"
|
||||||
msgstr "Log in"
|
msgstr "Log in"
|
||||||
|
|
||||||
|
#: partitioncloud/templates/launch.html:33
|
||||||
|
msgid ""
|
||||||
|
"PartitionCloud is an open-source score library server, to help you in all"
|
||||||
|
" your musical activities"
|
||||||
|
msgstr ""
|
||||||
|
"PartitionCloud is an open-source score library server, to help you in all"
|
||||||
|
" your musical activities"
|
||||||
|
|
||||||
|
#: partitioncloud/templates/launch.html:38
|
||||||
|
msgid "Let's go !"
|
||||||
|
msgstr "Let's go !"
|
||||||
|
|
||||||
|
#: partitioncloud/templates/launch.html:44
|
||||||
|
msgid "Check code"
|
||||||
|
msgstr "Check code"
|
||||||
|
|
||||||
|
#: partitioncloud/templates/launch.html:55
|
||||||
|
#, python-format
|
||||||
|
msgid ""
|
||||||
|
"This instance is used by %(users)s users with a total of %(scores)s "
|
||||||
|
"scores."
|
||||||
|
msgstr ""
|
||||||
|
"This instance has %(users)s users with a total of %(scores)s "
|
||||||
|
"scores."
|
||||||
|
|
||||||
#: partitioncloud/templates/admin/index.html:5
|
#: partitioncloud/templates/admin/index.html:5
|
||||||
msgid "Administration Panel"
|
msgid "Administration Panel"
|
||||||
msgstr "Administration Panel"
|
msgstr "Administration Panel"
|
||||||
@ -462,7 +488,7 @@ msgstr "author"
|
|||||||
msgid "lyrics"
|
msgid "lyrics"
|
||||||
msgstr "lyrics"
|
msgstr "lyrics"
|
||||||
|
|
||||||
#: partitioncloud/templates/components/add_partition.html:10
|
#: partitioncloud/templates/components/add_partition.html:12
|
||||||
#: partitioncloud/templates/groupe/index.html:11
|
#: partitioncloud/templates/groupe/index.html:11
|
||||||
#: partitioncloud/templates/partition/attachments.html:13
|
#: partitioncloud/templates/partition/attachments.html:13
|
||||||
msgid "Add"
|
msgid "Add"
|
||||||
|
@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: PROJECT VERSION\n"
|
"Project-Id-Version: PROJECT VERSION\n"
|
||||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||||
"POT-Creation-Date: 2024-01-25 16:19+0100\n"
|
"POT-Creation-Date: 2024-01-29 18:32+0100\n"
|
||||||
"PO-Revision-Date: 2024-01-22 15:24+0100\n"
|
"PO-Revision-Date: 2024-01-22 15:24+0100\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language: fr\n"
|
"Language: fr\n"
|
||||||
@ -18,12 +18,12 @@ msgstr ""
|
|||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Generated-By: Babel 2.14.0\n"
|
"Generated-By: Babel 2.14.0\n"
|
||||||
|
|
||||||
#: partitioncloud/__init__.py:135
|
#: partitioncloud/__init__.py:147
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Created user %(username)s"
|
msgid "Created user %(username)s"
|
||||||
msgstr "Utilisateur %(username)s créé"
|
msgstr "Utilisateur %(username)s créé"
|
||||||
|
|
||||||
#: partitioncloud/__init__.py:138
|
#: partitioncloud/__init__.py:150
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "This album does not exists, but user %(username)s has been created"
|
msgid "This album does not exists, but user %(username)s has been created"
|
||||||
msgstr "Cet album n'existe pas. L'utilisateur %(username)s a été créé"
|
msgstr "Cet album n'existe pas. L'utilisateur %(username)s a été créé"
|
||||||
@ -143,7 +143,7 @@ msgstr ""
|
|||||||
msgid "Successfully created new user. You can log in."
|
msgid "Successfully created new user. You can log in."
|
||||||
msgstr "Utilisateur créé avec succès. Vous pouvez vous connecter."
|
msgstr "Utilisateur créé avec succès. Vous pouvez vous connecter."
|
||||||
|
|
||||||
#: partitioncloud/modules/auth.py:152
|
#: partitioncloud/modules/auth.py:153
|
||||||
msgid "Incorrect username or password"
|
msgid "Incorrect username or password"
|
||||||
msgstr "Nom d'utilisateur ou mot de passe incorrect."
|
msgstr "Nom d'utilisateur ou mot de passe incorrect."
|
||||||
|
|
||||||
@ -219,84 +219,110 @@ msgstr "Vous n'êtes pas autorisé à supprimer cette partition."
|
|||||||
msgid "Score deleted."
|
msgid "Score deleted."
|
||||||
msgstr "Partition supprimée."
|
msgstr "Partition supprimée."
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:23
|
#: partitioncloud/templates/base.html:25
|
||||||
msgid "New Album"
|
msgid "New Album"
|
||||||
msgstr "Créer un nouvel album"
|
msgstr "Créer un nouvel album"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:25 partitioncloud/templates/base.html:36
|
#: partitioncloud/templates/base.html:27 partitioncloud/templates/base.html:38
|
||||||
#: partitioncloud/templates/groupe/index.html:10
|
#: partitioncloud/templates/groupe/index.html:10
|
||||||
#: partitioncloud/templates/partition/attachments.html:11
|
#: partitioncloud/templates/partition/attachments.html:11
|
||||||
msgid "Name"
|
msgid "Name"
|
||||||
msgstr "Nom"
|
msgstr "Nom"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:26 partitioncloud/templates/base.html:37
|
#: partitioncloud/templates/base.html:28 partitioncloud/templates/base.html:39
|
||||||
msgid "Create"
|
msgid "Create"
|
||||||
msgstr "Créer"
|
msgstr "Créer"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:30
|
#: partitioncloud/templates/base.html:32
|
||||||
msgid "I want to create a collection of albums."
|
msgid "I want to create a collection of albums."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Je souhaite créer plusieurs albums et pouvoir tous les partager avec un "
|
"Je souhaite créer plusieurs albums et pouvoir tous les partager avec un "
|
||||||
"seul lien."
|
"seul lien."
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:30
|
#: partitioncloud/templates/base.html:32
|
||||||
msgid "Create group"
|
msgid "Create group"
|
||||||
msgstr "Créer un groupe"
|
msgstr "Créer un groupe"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:34
|
#: partitioncloud/templates/base.html:36
|
||||||
msgid "Create new group"
|
msgid "Create new group"
|
||||||
msgstr "Créer un nouveau groupe"
|
msgstr "Créer un nouveau groupe"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:61
|
#: partitioncloud/templates/base.html:63
|
||||||
msgid "Search"
|
msgid "Search"
|
||||||
msgstr "Rechercher"
|
msgstr "Rechercher"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:63
|
#: partitioncloud/templates/base.html:65
|
||||||
msgid "Number of online searches"
|
msgid "Number of online searches"
|
||||||
msgstr "Nombre de recherches en ligne"
|
msgstr "Nombre de recherches en ligne"
|
||||||
|
|
||||||
#: partitioncloud/templates/admin/index.html:23
|
#: partitioncloud/templates/admin/index.html:23
|
||||||
#: partitioncloud/templates/base.html:71
|
#: partitioncloud/templates/base.html:73
|
||||||
#: partitioncloud/templates/partition/details.html:41
|
#: partitioncloud/templates/partition/details.html:41
|
||||||
msgid "Albums"
|
msgid "Albums"
|
||||||
msgstr "Albums"
|
msgstr "Albums"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:75
|
#: partitioncloud/templates/base.html:77
|
||||||
msgid "New album"
|
msgid "New album"
|
||||||
msgstr "Créer un album"
|
msgstr "Créer un album"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:92
|
#: partitioncloud/templates/base.html:94
|
||||||
msgid "No albums"
|
msgid "No albums"
|
||||||
msgstr "Aucun album disponible"
|
msgstr "Aucun album disponible"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:111
|
#: partitioncloud/templates/base.html:113
|
||||||
msgid "No album available"
|
msgid "No album available"
|
||||||
msgstr "Aucun album disponible"
|
msgstr "Aucun album disponible"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:125
|
#: partitioncloud/templates/base.html:127
|
||||||
msgid "Log in to see your albums"
|
msgid "Log in to see your albums"
|
||||||
msgstr "Connectez vous pour avoir accès à vos albums"
|
msgstr "Connectez vous pour avoir accès à vos albums"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:139
|
#: partitioncloud/templates/base.html:141
|
||||||
msgid "Log out"
|
msgid "Log out"
|
||||||
msgstr "Déconnexion"
|
msgstr "Déconnexion"
|
||||||
|
|
||||||
#: partitioncloud/templates/base.html:154
|
#: partitioncloud/templates/base.html:156
|
||||||
msgid "Admin Panel"
|
msgid "Admin Panel"
|
||||||
msgstr "Panneau admin"
|
msgstr "Panneau admin"
|
||||||
|
|
||||||
#: partitioncloud/templates/auth/register.html:5
|
#: partitioncloud/templates/auth/register.html:5
|
||||||
#: partitioncloud/templates/auth/register.html:20
|
#: partitioncloud/templates/auth/register.html:20
|
||||||
#: partitioncloud/templates/base.html:166
|
#: partitioncloud/templates/base.html:168
|
||||||
msgid "Create account"
|
msgid "Create account"
|
||||||
msgstr "Créer un compte"
|
msgstr "Créer un compte"
|
||||||
|
|
||||||
#: partitioncloud/templates/auth/login.html:5
|
#: partitioncloud/templates/auth/login.html:5
|
||||||
#: partitioncloud/templates/auth/login.html:10
|
#: partitioncloud/templates/auth/login.html:10
|
||||||
#: partitioncloud/templates/base.html:168
|
#: partitioncloud/templates/base.html:170
|
||||||
|
#: partitioncloud/templates/launch.html:26
|
||||||
msgid "Log in"
|
msgid "Log in"
|
||||||
msgstr "Se connecter"
|
msgstr "Se connecter"
|
||||||
|
|
||||||
|
#: partitioncloud/templates/launch.html:33
|
||||||
|
msgid ""
|
||||||
|
"PartitionCloud is an open-source score library server, to help you in all"
|
||||||
|
" your musical activities"
|
||||||
|
msgstr ""
|
||||||
|
"PartitionCloud est une bibliothèque de partitions open-source, pour vous "
|
||||||
|
"aider dans toutes vos activités musicales"
|
||||||
|
|
||||||
|
#: partitioncloud/templates/launch.html:38
|
||||||
|
msgid "Let's go !"
|
||||||
|
msgstr "C'est parti !"
|
||||||
|
|
||||||
|
#: partitioncloud/templates/launch.html:44
|
||||||
|
msgid "Check code"
|
||||||
|
msgstr "Voir le code"
|
||||||
|
|
||||||
|
#: partitioncloud/templates/launch.html:55
|
||||||
|
#, python-format
|
||||||
|
msgid ""
|
||||||
|
"This instance is used by %(users)s users with a total of %(scores)s "
|
||||||
|
"scores."
|
||||||
|
msgstr ""
|
||||||
|
"Cette instance est utilisée par %(users)s personnes avec un total de "
|
||||||
|
"%(scores)s partitions."
|
||||||
|
|
||||||
#: partitioncloud/templates/admin/index.html:5
|
#: partitioncloud/templates/admin/index.html:5
|
||||||
msgid "Administration Panel"
|
msgid "Administration Panel"
|
||||||
msgstr "Panneau d'administration"
|
msgstr "Panneau d'administration"
|
||||||
@ -466,7 +492,7 @@ msgstr "auteur"
|
|||||||
msgid "lyrics"
|
msgid "lyrics"
|
||||||
msgstr "paroles"
|
msgstr "paroles"
|
||||||
|
|
||||||
#: partitioncloud/templates/components/add_partition.html:10
|
#: partitioncloud/templates/components/add_partition.html:12
|
||||||
#: partitioncloud/templates/groupe/index.html:11
|
#: partitioncloud/templates/groupe/index.html:11
|
||||||
#: partitioncloud/templates/partition/attachments.html:13
|
#: partitioncloud/templates/partition/attachments.html:13
|
||||||
msgid "Add"
|
msgid "Add"
|
||||||
|
Loading…
Reference in New Issue
Block a user