mirror of
https://github.com/partitioncloud/partitioncloud-server.git
synced 2025-02-02 13:49:40 +01:00
Compare commits
No commits in common. "ffbf1907ad406ee7e5febc3cc3ec08dd4a65d91b" and "b71953fd1b8e07a81b93ac7fa95edf3b73439a92" have entirely different histories.
ffbf1907ad
...
b71953fd1b
@ -1,5 +1,2 @@
|
|||||||
[extractors]
|
|
||||||
jinja2 = jinja2.ext:babel_extract
|
|
||||||
|
|
||||||
[python: partitioncloud/**.py]
|
[python: partitioncloud/**.py]
|
||||||
[jinja2: partitioncloud/templates/**.html]
|
[jinja2: partitioncloud/templates/**.html]
|
@ -75,16 +75,6 @@ class Partition():
|
|||||||
)
|
)
|
||||||
db.commit()
|
db.commit()
|
||||||
|
|
||||||
def update_file(self, file, instance_path):
|
|
||||||
partition_path = os.path.join(
|
|
||||||
instance_path,
|
|
||||||
"partitions",
|
|
||||||
f"{self.uuid}.pdf"
|
|
||||||
)
|
|
||||||
file.save(partition_path)
|
|
||||||
if os.path.exists(f"{instance_path}/cache/thumbnails/{self.uuid}.jpg"):
|
|
||||||
os.remove(f"{instance_path}/cache/thumbnails/{self.uuid}.jpg")
|
|
||||||
|
|
||||||
def get_user(self):
|
def get_user(self):
|
||||||
db = get_db()
|
db = get_db()
|
||||||
user = db.execute(
|
user = db.execute(
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
Partition module
|
Partition module
|
||||||
"""
|
"""
|
||||||
import os
|
import os
|
||||||
import pypdf
|
|
||||||
from uuid import uuid4
|
from uuid import uuid4
|
||||||
from flask import (Blueprint, abort, send_file, render_template,
|
from flask import (Blueprint, abort, send_file, render_template,
|
||||||
request, redirect, flash, session, current_app)
|
request, redirect, flash, session, current_app)
|
||||||
@ -161,17 +160,6 @@ def edit(uuid):
|
|||||||
flash(error)
|
flash(error)
|
||||||
return redirect(f"/partition/{ uuid }/edit")
|
return redirect(f"/partition/{ uuid }/edit")
|
||||||
|
|
||||||
if request.files.get('file', None):
|
|
||||||
new_file = request.files["file"]
|
|
||||||
try:
|
|
||||||
pypdf.PdfReader(new_file)
|
|
||||||
new_file.seek(0)
|
|
||||||
except (pypdf.errors.PdfReadError, pypdf.errors.PdfStreamError):
|
|
||||||
flash(_("Invalid PDF file"))
|
|
||||||
return redirect(request.referrer)
|
|
||||||
|
|
||||||
partition.update_file(new_file, current_app.instance_path)
|
|
||||||
|
|
||||||
partition.update(
|
partition.update(
|
||||||
name=request.form["name"],
|
name=request.form["name"],
|
||||||
author=request.form["author"],
|
author=request.form["author"],
|
||||||
|
@ -718,56 +718,3 @@ midi-player {
|
|||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
background-color: var(--color-crust);
|
background-color: var(--color-crust);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Input[file] */
|
|
||||||
.file-area {
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
.file-area input[type=file] {
|
|
||||||
position: absolute;
|
|
||||||
height: 100%;
|
|
||||||
top: 0;
|
|
||||||
left: 0;
|
|
||||||
right: 0;
|
|
||||||
bottom: 0;
|
|
||||||
opacity: 0;
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
|
|
||||||
.file-area .inner-file-area {
|
|
||||||
padding: 30px;
|
|
||||||
background: var(--color-mantle);
|
|
||||||
border: 2px dashed var(--color-red);
|
|
||||||
text-align: center;
|
|
||||||
transition: background 0.3s ease-in-out;
|
|
||||||
}
|
|
||||||
|
|
||||||
.file-area .inner-file-area .success {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.file-area:hover > .inner-file-area {
|
|
||||||
background: var(--color-surface0);
|
|
||||||
}
|
|
||||||
|
|
||||||
.file-area input[type=file]:valid + .inner-file-area {
|
|
||||||
border-color: var(--color-green);
|
|
||||||
}
|
|
||||||
.file-area input[type=file]:not(:required) + .inner-file-area {
|
|
||||||
border-color: var(--color-blue);
|
|
||||||
}
|
|
||||||
|
|
||||||
.file-area input[type=file]:valid + .inner-file-area .success {
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
.file-area input[type=file]:valid + .inner-file-area .default {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.file-area input[type=file]:not(:required) + .inner-file-area .success {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.file-area input[type=file]:not(:required) + .inner-file-area .default {
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
@ -7,11 +7,7 @@
|
|||||||
{% if partition_uuid %}
|
{% if partition_uuid %}
|
||||||
<input name="partition-uuid" value="{{ partition_uuid }}" type="hidden">
|
<input name="partition-uuid" value="{{ partition_uuid }}" type="hidden">
|
||||||
{% else %}
|
{% else %}
|
||||||
{% block input_file %}
|
<input name="file" type="file" accept=".pdf" required=""><br/>
|
||||||
{% set required=true %}
|
|
||||||
{% set filetype=".pdf" %}
|
|
||||||
{% include 'components/input_file.html' %}
|
|
||||||
{% endblock %}
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<input type="submit" value="{{ _('Add') }}" />
|
<input type="submit" value="{{ _('Add') }}" />
|
||||||
</form>
|
</form>
|
@ -1,7 +0,0 @@
|
|||||||
<div class="file-area">
|
|
||||||
<input name="file" type="file" accept="{{ filetype }}" {% if required %}required=""{% endif %}>
|
|
||||||
<div class="inner-file-area">
|
|
||||||
<div class="success">{{ _("Your file is selected.") }}</div>
|
|
||||||
<div class="default">{{ _("Select or drag & drop your file") }} ({{ filetype }}).</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
@ -9,11 +9,7 @@
|
|||||||
<h2>{{ _("Add an attachment to %(name)s", name=partition.name) }}</h2>
|
<h2>{{ _("Add an attachment to %(name)s", name=partition.name) }}</h2>
|
||||||
<form action="/partition/{{ partition.uuid }}/add-attachment" method="post" enctype="multipart/form-data">
|
<form action="/partition/{{ partition.uuid }}/add-attachment" method="post" enctype="multipart/form-data">
|
||||||
<input type="text" name="name" id="name" placeholder="{{ _('Name') }}"><br/>
|
<input type="text" name="name" id="name" placeholder="{{ _('Name') }}"><br/>
|
||||||
{% block input_file %}
|
<input name="file" type="file" accept=".mp3,.mid" required=""><br/>
|
||||||
{% set required=true %}
|
|
||||||
{% set filetype=".mp3,.mid" %}
|
|
||||||
{% include 'components/input_file.html' %}
|
|
||||||
{% endblock %}
|
|
||||||
<input type="submit" value="{{ _('Add') }}">
|
<input type="submit" value="{{ _('Add') }}">
|
||||||
</form>
|
</form>
|
||||||
<a href="#!" class="close-dialog">Close</a>
|
<a href="#!" class="close-dialog">Close</a>
|
||||||
@ -59,7 +55,7 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<br/>
|
<br/>
|
||||||
{% if g.user %}
|
{% if user %}
|
||||||
<div class="centered">
|
<div class="centered">
|
||||||
<a href="#create-attachment"><button>{{ _("Add an attachment") }}</button></a>
|
<a href="#create-attachment"><button>{{ _("Add an attachment") }}</button></a>
|
||||||
</div>
|
</div>
|
||||||
|
@ -52,13 +52,7 @@
|
|||||||
<td>{{ _("File") }}</td>
|
<td>{{ _("File") }}</td>
|
||||||
<td><a href="/partition/{{ partition.uuid }}">
|
<td><a href="/partition/{{ partition.uuid }}">
|
||||||
<img class="partition-thumbnail" src="/thumbnails/{{ partition.uuid }}.jpg" loading="lazy">
|
<img class="partition-thumbnail" src="/thumbnails/{{ partition.uuid }}.jpg" loading="lazy">
|
||||||
</a><br/>
|
</a></td>
|
||||||
{% block input_file %}
|
|
||||||
{% set required=false %}
|
|
||||||
{% set filetype=".pdf" %}
|
|
||||||
{% include 'components/input_file.html' %}
|
|
||||||
{% endblock %}
|
|
||||||
</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>{{ _("Title") }}</td>
|
<td>{{ _("Title") }}</td>
|
||||||
|
@ -13,13 +13,7 @@
|
|||||||
<td>{{ _("File") }}</td>
|
<td>{{ _("File") }}</td>
|
||||||
<td><a href="/partition/{{ partition.uuid }}">
|
<td><a href="/partition/{{ partition.uuid }}">
|
||||||
<img class="partition-thumbnail" src="/thumbnails/{{ partition.uuid }}.jpg" loading="lazy">
|
<img class="partition-thumbnail" src="/thumbnails/{{ partition.uuid }}.jpg" loading="lazy">
|
||||||
</a><br/>
|
</a></td>
|
||||||
{% block input_file %}
|
|
||||||
{% set required=false %}
|
|
||||||
{% set filetype=".pdf" %}
|
|
||||||
{% include 'components/input_file.html' %}
|
|
||||||
{% endblock %}
|
|
||||||
</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
{% if partition.source != "unknown" and partition.source != "upload" %}
|
{% if partition.source != "unknown" and partition.source != "upload" %}
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -75,12 +75,12 @@ msgstr "You don't own this album."
|
|||||||
msgid "Album deleted."
|
msgid "Album deleted."
|
||||||
msgstr "Album deleted."
|
msgstr "Album deleted."
|
||||||
|
|
||||||
#: partitioncloud/modules/albums.py:278 partitioncloud/modules/partition.py:154
|
#: partitioncloud/modules/albums.py:278 partitioncloud/modules/partition.py:153
|
||||||
#: partitioncloud/modules/partition.py:211
|
#: partitioncloud/modules/partition.py:199
|
||||||
msgid "Missing title"
|
msgid "Missing title"
|
||||||
msgstr "Missing title"
|
msgstr "Missing title"
|
||||||
|
|
||||||
#: partitioncloud/modules/albums.py:280 partitioncloud/modules/partition.py:64
|
#: partitioncloud/modules/albums.py:280 partitioncloud/modules/partition.py:63
|
||||||
msgid "Missing file"
|
msgid "Missing file"
|
||||||
msgstr "Missing file"
|
msgstr "Missing file"
|
||||||
|
|
||||||
@ -88,7 +88,7 @@ msgstr "Missing file"
|
|||||||
msgid "Search results expired"
|
msgid "Search results expired"
|
||||||
msgstr "Search results expired"
|
msgstr "Search results expired"
|
||||||
|
|
||||||
#: partitioncloud/modules/albums.py:302 partitioncloud/modules/partition.py:170
|
#: partitioncloud/modules/albums.py:302
|
||||||
msgid "Invalid PDF file"
|
msgid "Invalid PDF file"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -183,43 +183,43 @@ msgstr "Group deleted."
|
|||||||
msgid "You are not admin of this group."
|
msgid "You are not admin of this group."
|
||||||
msgstr "You are not admin of this group."
|
msgstr "You are not admin of this group."
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:59
|
#: partitioncloud/modules/partition.py:58
|
||||||
msgid "You don't own this score."
|
msgid "You don't own this score."
|
||||||
msgstr "You don't own this score."
|
msgstr "You don't own this score."
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:72
|
#: partitioncloud/modules/partition.py:71
|
||||||
msgid "Missing filename."
|
msgid "Missing filename."
|
||||||
msgstr "Missing filename."
|
msgstr "Missing filename."
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:77
|
#: partitioncloud/modules/partition.py:76
|
||||||
msgid "Unsupported file type."
|
msgid "Unsupported file type."
|
||||||
msgstr "Unsupported file type."
|
msgstr "Unsupported file type."
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:145
|
#: partitioncloud/modules/partition.py:144
|
||||||
msgid "You are not allowed to edit this file."
|
msgid "You are not allowed to edit this file."
|
||||||
msgstr "You are not allowed to edit this file."
|
msgstr "You are not allowed to edit this file."
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:156
|
#: partitioncloud/modules/partition.py:155
|
||||||
#: partitioncloud/modules/partition.py:213
|
#: partitioncloud/modules/partition.py:201
|
||||||
msgid "Missing author in request body (can be null)."
|
msgid "Missing author in request body (can be null)."
|
||||||
msgstr "Missing author in request body (can be null)."
|
msgstr "Missing author in request body (can be null)."
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:158
|
#: partitioncloud/modules/partition.py:157
|
||||||
#: partitioncloud/modules/partition.py:215
|
#: partitioncloud/modules/partition.py:203
|
||||||
msgid "Missing lyrics (can be null)."
|
msgid "Missing lyrics (can be null)."
|
||||||
msgstr "Missing lyrics (can be null)."
|
msgstr "Missing lyrics (can be null)."
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:181
|
#: partitioncloud/modules/partition.py:169
|
||||||
#: partitioncloud/modules/partition.py:227
|
#: partitioncloud/modules/partition.py:215
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Successfully modified %(name)s"
|
msgid "Successfully modified %(name)s"
|
||||||
msgstr "Successfully modified %(name)s"
|
msgstr "Successfully modified %(name)s"
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:242
|
#: partitioncloud/modules/partition.py:230
|
||||||
msgid "You are not allowed to delete this score."
|
msgid "You are not allowed to delete this score."
|
||||||
msgstr "You are not allowed to delete this score."
|
msgstr "You are not allowed to delete this score."
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:250
|
#: partitioncloud/modules/partition.py:238
|
||||||
msgid "Score deleted."
|
msgid "Score deleted."
|
||||||
msgstr "Score deleted."
|
msgstr "Score deleted."
|
||||||
|
|
||||||
@ -411,8 +411,8 @@ msgstr "Do you really want to delete this album?"
|
|||||||
#: partitioncloud/templates/groupe/index.html:20
|
#: partitioncloud/templates/groupe/index.html:20
|
||||||
#: partitioncloud/templates/groupe/index.html:57
|
#: partitioncloud/templates/groupe/index.html:57
|
||||||
#: partitioncloud/templates/partition/delete.html:10
|
#: partitioncloud/templates/partition/delete.html:10
|
||||||
#: partitioncloud/templates/partition/details.html:92
|
#: partitioncloud/templates/partition/details.html:86
|
||||||
#: partitioncloud/templates/partition/edit.html:63
|
#: partitioncloud/templates/partition/edit.html:57
|
||||||
#: partitioncloud/templates/settings/index.html:19
|
#: partitioncloud/templates/settings/index.html:19
|
||||||
msgid "Delete"
|
msgid "Delete"
|
||||||
msgstr "Delete"
|
msgstr "Delete"
|
||||||
@ -526,20 +526,12 @@ msgstr "author"
|
|||||||
msgid "lyrics"
|
msgid "lyrics"
|
||||||
msgstr "lyrics"
|
msgstr "lyrics"
|
||||||
|
|
||||||
#: partitioncloud/templates/components/add_partition.html:16
|
#: partitioncloud/templates/components/add_partition.html:12
|
||||||
#: partitioncloud/templates/groupe/index.html:11
|
#: partitioncloud/templates/groupe/index.html:11
|
||||||
#: partitioncloud/templates/partition/attachments.html:17
|
#: partitioncloud/templates/partition/attachments.html:13
|
||||||
msgid "Add"
|
msgid "Add"
|
||||||
msgstr "Add"
|
msgstr "Add"
|
||||||
|
|
||||||
#: partitioncloud/templates/components/input_file.html:4
|
|
||||||
msgid "Your file is selected."
|
|
||||||
msgstr "Your file is selected."
|
|
||||||
|
|
||||||
#: partitioncloud/templates/components/input_file.html:5
|
|
||||||
msgid "Select or drag & drop your file"
|
|
||||||
msgstr "Select or drag & drop your file"
|
|
||||||
|
|
||||||
#: partitioncloud/templates/groupe/index.html:8
|
#: partitioncloud/templates/groupe/index.html:8
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Add an album to group %(name)s"
|
msgid "Add an album to group %(name)s"
|
||||||
@ -576,7 +568,7 @@ msgstr "Attachments of %(name)s"
|
|||||||
msgid "Add an attachment to %(name)s"
|
msgid "Add an attachment to %(name)s"
|
||||||
msgstr "Add an attachment to %(name)s"
|
msgstr "Add an attachment to %(name)s"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/attachments.html:26
|
#: partitioncloud/templates/partition/attachments.html:22
|
||||||
msgid ""
|
msgid ""
|
||||||
"No pdf viewer available in this browser.\n"
|
"No pdf viewer available in this browser.\n"
|
||||||
" You can use Firefox on Android."
|
" You can use Firefox on Android."
|
||||||
@ -584,11 +576,11 @@ msgstr ""
|
|||||||
"No pdf viewer available in this browser.\n"
|
"No pdf viewer available in this browser.\n"
|
||||||
" You can use Firefox on Android."
|
" You can use Firefox on Android."
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/attachments.html:50
|
#: partitioncloud/templates/partition/attachments.html:46
|
||||||
msgid "JavaScript is mandatory to read MIDI files"
|
msgid "JavaScript is mandatory to read MIDI files"
|
||||||
msgstr "JavaScript is mandatory to read MIDI files"
|
msgstr "JavaScript is mandatory to read MIDI files"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/attachments.html:64
|
#: partitioncloud/templates/partition/attachments.html:60
|
||||||
msgid "Add an attachment"
|
msgid "Add an attachment"
|
||||||
msgstr "Add an attachment"
|
msgstr "Add an attachment"
|
||||||
|
|
||||||
@ -618,45 +610,45 @@ msgstr "Type"
|
|||||||
msgid "File"
|
msgid "File"
|
||||||
msgstr "File"
|
msgstr "File"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/details.html:64
|
#: partitioncloud/templates/partition/details.html:58
|
||||||
#: partitioncloud/templates/partition/details.html:65
|
#: partitioncloud/templates/partition/details.html:59
|
||||||
#: partitioncloud/templates/partition/edit.html:35
|
#: partitioncloud/templates/partition/edit.html:29
|
||||||
#: partitioncloud/templates/partition/edit.html:36
|
#: partitioncloud/templates/partition/edit.html:30
|
||||||
msgid "Title"
|
msgid "Title"
|
||||||
msgstr "Title"
|
msgstr "Title"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/details.html:68
|
#: partitioncloud/templates/partition/details.html:62
|
||||||
#: partitioncloud/templates/partition/details.html:69
|
#: partitioncloud/templates/partition/details.html:63
|
||||||
#: partitioncloud/templates/partition/edit.html:39
|
#: partitioncloud/templates/partition/edit.html:33
|
||||||
#: partitioncloud/templates/partition/edit.html:40
|
#: partitioncloud/templates/partition/edit.html:34
|
||||||
msgid "Author"
|
msgid "Author"
|
||||||
msgstr "Author"
|
msgstr "Author"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/details.html:72
|
#: partitioncloud/templates/partition/details.html:66
|
||||||
#: partitioncloud/templates/partition/details.html:73
|
#: partitioncloud/templates/partition/details.html:67
|
||||||
#: partitioncloud/templates/partition/edit.html:43
|
#: partitioncloud/templates/partition/edit.html:37
|
||||||
#: partitioncloud/templates/partition/edit.html:44
|
#: partitioncloud/templates/partition/edit.html:38
|
||||||
msgid "Lyrics"
|
msgid "Lyrics"
|
||||||
msgstr "Lyrics"
|
msgstr "Lyrics"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/details.html:76
|
#: partitioncloud/templates/partition/details.html:70
|
||||||
#: partitioncloud/templates/partition/edit.html:47
|
#: partitioncloud/templates/partition/edit.html:41
|
||||||
msgid "Attachments"
|
msgid "Attachments"
|
||||||
msgstr "Attachments"
|
msgstr "Attachments"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/details.html:81
|
#: partitioncloud/templates/partition/details.html:75
|
||||||
#: partitioncloud/templates/partition/edit.html:52
|
#: partitioncloud/templates/partition/edit.html:46
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Yes, %(number)s"
|
msgid "Yes, %(number)s"
|
||||||
msgstr "Yes, %(number)s"
|
msgstr "Yes, %(number)s"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/details.html:83
|
#: partitioncloud/templates/partition/details.html:77
|
||||||
#: partitioncloud/templates/partition/edit.html:54
|
#: partitioncloud/templates/partition/edit.html:48
|
||||||
msgid "Add one"
|
msgid "Add one"
|
||||||
msgstr "Add one"
|
msgstr "Add one"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/details.html:89
|
#: partitioncloud/templates/partition/details.html:83
|
||||||
#: partitioncloud/templates/partition/edit.html:60
|
#: partitioncloud/templates/partition/edit.html:54
|
||||||
msgid "Update"
|
msgid "Update"
|
||||||
msgstr "Update"
|
msgstr "Update"
|
||||||
|
|
||||||
@ -665,7 +657,7 @@ msgstr "Update"
|
|||||||
msgid "Modify \"%(name)s\""
|
msgid "Modify \"%(name)s\""
|
||||||
msgstr "Modify \"%(name)s\""
|
msgstr "Modify \"%(name)s\""
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/edit.html:27
|
#: partitioncloud/templates/partition/edit.html:21
|
||||||
msgid "Source"
|
msgid "Source"
|
||||||
msgstr "Source"
|
msgstr "Source"
|
||||||
|
|
||||||
|
@ -75,12 +75,12 @@ msgstr "Vous ne possédez pas cet album."
|
|||||||
msgid "Album deleted."
|
msgid "Album deleted."
|
||||||
msgstr "Album supprimé."
|
msgstr "Album supprimé."
|
||||||
|
|
||||||
#: partitioncloud/modules/albums.py:278 partitioncloud/modules/partition.py:154
|
#: partitioncloud/modules/albums.py:278 partitioncloud/modules/partition.py:153
|
||||||
#: partitioncloud/modules/partition.py:211
|
#: partitioncloud/modules/partition.py:199
|
||||||
msgid "Missing title"
|
msgid "Missing title"
|
||||||
msgstr "Un titre est requis."
|
msgstr "Un titre est requis."
|
||||||
|
|
||||||
#: partitioncloud/modules/albums.py:280 partitioncloud/modules/partition.py:64
|
#: partitioncloud/modules/albums.py:280 partitioncloud/modules/partition.py:63
|
||||||
msgid "Missing file"
|
msgid "Missing file"
|
||||||
msgstr "Aucun fichier n'a été fourni."
|
msgstr "Aucun fichier n'a été fourni."
|
||||||
|
|
||||||
@ -88,7 +88,7 @@ msgstr "Aucun fichier n'a été fourni."
|
|||||||
msgid "Search results expired"
|
msgid "Search results expired"
|
||||||
msgstr "Les résultats de la recherche ont expiré."
|
msgstr "Les résultats de la recherche ont expiré."
|
||||||
|
|
||||||
#: partitioncloud/modules/albums.py:302 partitioncloud/modules/partition.py:170
|
#: partitioncloud/modules/albums.py:302
|
||||||
msgid "Invalid PDF file"
|
msgid "Invalid PDF file"
|
||||||
msgstr "Fichier PDF invalide"
|
msgstr "Fichier PDF invalide"
|
||||||
|
|
||||||
@ -185,43 +185,43 @@ msgstr "Groupe supprimé."
|
|||||||
msgid "You are not admin of this group."
|
msgid "You are not admin of this group."
|
||||||
msgstr "Vous n'êtes pas administrateur de ce groupe"
|
msgstr "Vous n'êtes pas administrateur de ce groupe"
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:59
|
#: partitioncloud/modules/partition.py:58
|
||||||
msgid "You don't own this score."
|
msgid "You don't own this score."
|
||||||
msgstr "Cette partition ne vous appartient pas"
|
msgstr "Cette partition ne vous appartient pas"
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:72
|
#: partitioncloud/modules/partition.py:71
|
||||||
msgid "Missing filename."
|
msgid "Missing filename."
|
||||||
msgstr "Pas de nom de fichier"
|
msgstr "Pas de nom de fichier"
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:77
|
#: partitioncloud/modules/partition.py:76
|
||||||
msgid "Unsupported file type."
|
msgid "Unsupported file type."
|
||||||
msgstr "Extension de fichier non supportée"
|
msgstr "Extension de fichier non supportée"
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:145
|
#: partitioncloud/modules/partition.py:144
|
||||||
msgid "You are not allowed to edit this file."
|
msgid "You are not allowed to edit this file."
|
||||||
msgstr "Vous n'êtes pas autorisé à modifier cette partition."
|
msgstr "Vous n'êtes pas autorisé à modifier cette partition."
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:156
|
#: partitioncloud/modules/partition.py:155
|
||||||
#: partitioncloud/modules/partition.py:213
|
#: partitioncloud/modules/partition.py:201
|
||||||
msgid "Missing author in request body (can be null)."
|
msgid "Missing author in request body (can be null)."
|
||||||
msgstr "Un nom d'auteur est requis (à minima nul)"
|
msgstr "Un nom d'auteur est requis (à minima nul)"
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:158
|
#: partitioncloud/modules/partition.py:157
|
||||||
#: partitioncloud/modules/partition.py:215
|
#: partitioncloud/modules/partition.py:203
|
||||||
msgid "Missing lyrics (can be null)."
|
msgid "Missing lyrics (can be null)."
|
||||||
msgstr "Des paroles sont requises (à minima nulles)"
|
msgstr "Des paroles sont requises (à minima nulles)"
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:181
|
#: partitioncloud/modules/partition.py:169
|
||||||
#: partitioncloud/modules/partition.py:227
|
#: partitioncloud/modules/partition.py:215
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Successfully modified %(name)s"
|
msgid "Successfully modified %(name)s"
|
||||||
msgstr "Partition %(name)s modifiée avec succès."
|
msgstr "Partition %(name)s modifiée avec succès."
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:242
|
#: partitioncloud/modules/partition.py:230
|
||||||
msgid "You are not allowed to delete this score."
|
msgid "You are not allowed to delete this score."
|
||||||
msgstr "Vous n'êtes pas autorisé à supprimer cette partition."
|
msgstr "Vous n'êtes pas autorisé à supprimer cette partition."
|
||||||
|
|
||||||
#: partitioncloud/modules/partition.py:250
|
#: partitioncloud/modules/partition.py:238
|
||||||
msgid "Score deleted."
|
msgid "Score deleted."
|
||||||
msgstr "Partition supprimée."
|
msgstr "Partition supprimée."
|
||||||
|
|
||||||
@ -417,8 +417,8 @@ msgstr "Êtes vous sûr de vouloir supprimer cet album ?"
|
|||||||
#: partitioncloud/templates/groupe/index.html:20
|
#: partitioncloud/templates/groupe/index.html:20
|
||||||
#: partitioncloud/templates/groupe/index.html:57
|
#: partitioncloud/templates/groupe/index.html:57
|
||||||
#: partitioncloud/templates/partition/delete.html:10
|
#: partitioncloud/templates/partition/delete.html:10
|
||||||
#: partitioncloud/templates/partition/details.html:92
|
#: partitioncloud/templates/partition/details.html:86
|
||||||
#: partitioncloud/templates/partition/edit.html:63
|
#: partitioncloud/templates/partition/edit.html:57
|
||||||
#: partitioncloud/templates/settings/index.html:19
|
#: partitioncloud/templates/settings/index.html:19
|
||||||
msgid "Delete"
|
msgid "Delete"
|
||||||
msgstr "Supprimer"
|
msgstr "Supprimer"
|
||||||
@ -532,20 +532,12 @@ msgstr "auteur"
|
|||||||
msgid "lyrics"
|
msgid "lyrics"
|
||||||
msgstr "paroles"
|
msgstr "paroles"
|
||||||
|
|
||||||
#: partitioncloud/templates/components/add_partition.html:16
|
#: partitioncloud/templates/components/add_partition.html:12
|
||||||
#: partitioncloud/templates/groupe/index.html:11
|
#: partitioncloud/templates/groupe/index.html:11
|
||||||
#: partitioncloud/templates/partition/attachments.html:17
|
#: partitioncloud/templates/partition/attachments.html:13
|
||||||
msgid "Add"
|
msgid "Add"
|
||||||
msgstr "Ajouter"
|
msgstr "Ajouter"
|
||||||
|
|
||||||
#: partitioncloud/templates/components/input_file.html:4
|
|
||||||
msgid "Your file is selected."
|
|
||||||
msgstr "Fichier sélectionné."
|
|
||||||
|
|
||||||
#: partitioncloud/templates/components/input_file.html:5
|
|
||||||
msgid "Select or drag & drop your file"
|
|
||||||
msgstr "Sélectionner ou déposer un fichier"
|
|
||||||
|
|
||||||
#: partitioncloud/templates/groupe/index.html:8
|
#: partitioncloud/templates/groupe/index.html:8
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Add an album to group %(name)s"
|
msgid "Add an album to group %(name)s"
|
||||||
@ -585,7 +577,7 @@ msgstr "Attachments de %(name)s"
|
|||||||
msgid "Add an attachment to %(name)s"
|
msgid "Add an attachment to %(name)s"
|
||||||
msgstr "Ajouter un attachment à %(name)s"
|
msgstr "Ajouter un attachment à %(name)s"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/attachments.html:26
|
#: partitioncloud/templates/partition/attachments.html:22
|
||||||
msgid ""
|
msgid ""
|
||||||
"No pdf viewer available in this browser.\n"
|
"No pdf viewer available in this browser.\n"
|
||||||
" You can use Firefox on Android."
|
" You can use Firefox on Android."
|
||||||
@ -593,11 +585,11 @@ msgstr ""
|
|||||||
"Impossible d'afficher le pdf dans ce navigateur.\n"
|
"Impossible d'afficher le pdf dans ce navigateur.\n"
|
||||||
" Il est conseillé d'utiliser Firefox sur Android."
|
" Il est conseillé d'utiliser Firefox sur Android."
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/attachments.html:50
|
#: partitioncloud/templates/partition/attachments.html:46
|
||||||
msgid "JavaScript is mandatory to read MIDI files"
|
msgid "JavaScript is mandatory to read MIDI files"
|
||||||
msgstr "JavaScript est nécessaire pour lire les fichiers MIDI"
|
msgstr "JavaScript est nécessaire pour lire les fichiers MIDI"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/attachments.html:64
|
#: partitioncloud/templates/partition/attachments.html:60
|
||||||
msgid "Add an attachment"
|
msgid "Add an attachment"
|
||||||
msgstr "Ajouter un attachment"
|
msgstr "Ajouter un attachment"
|
||||||
|
|
||||||
@ -627,45 +619,45 @@ msgstr "Type d'ajout"
|
|||||||
msgid "File"
|
msgid "File"
|
||||||
msgstr "Fichier"
|
msgstr "Fichier"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/details.html:64
|
#: partitioncloud/templates/partition/details.html:58
|
||||||
#: partitioncloud/templates/partition/details.html:65
|
#: partitioncloud/templates/partition/details.html:59
|
||||||
#: partitioncloud/templates/partition/edit.html:35
|
#: partitioncloud/templates/partition/edit.html:29
|
||||||
#: partitioncloud/templates/partition/edit.html:36
|
#: partitioncloud/templates/partition/edit.html:30
|
||||||
msgid "Title"
|
msgid "Title"
|
||||||
msgstr "Titre"
|
msgstr "Titre"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/details.html:68
|
#: partitioncloud/templates/partition/details.html:62
|
||||||
#: partitioncloud/templates/partition/details.html:69
|
#: partitioncloud/templates/partition/details.html:63
|
||||||
#: partitioncloud/templates/partition/edit.html:39
|
#: partitioncloud/templates/partition/edit.html:33
|
||||||
#: partitioncloud/templates/partition/edit.html:40
|
#: partitioncloud/templates/partition/edit.html:34
|
||||||
msgid "Author"
|
msgid "Author"
|
||||||
msgstr "Auteur"
|
msgstr "Auteur"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/details.html:72
|
#: partitioncloud/templates/partition/details.html:66
|
||||||
#: partitioncloud/templates/partition/details.html:73
|
#: partitioncloud/templates/partition/details.html:67
|
||||||
#: partitioncloud/templates/partition/edit.html:43
|
#: partitioncloud/templates/partition/edit.html:37
|
||||||
#: partitioncloud/templates/partition/edit.html:44
|
#: partitioncloud/templates/partition/edit.html:38
|
||||||
msgid "Lyrics"
|
msgid "Lyrics"
|
||||||
msgstr "Paroles"
|
msgstr "Paroles"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/details.html:76
|
#: partitioncloud/templates/partition/details.html:70
|
||||||
#: partitioncloud/templates/partition/edit.html:47
|
#: partitioncloud/templates/partition/edit.html:41
|
||||||
msgid "Attachments"
|
msgid "Attachments"
|
||||||
msgstr "Pièces jointes"
|
msgstr "Pièces jointes"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/details.html:81
|
#: partitioncloud/templates/partition/details.html:75
|
||||||
#: partitioncloud/templates/partition/edit.html:52
|
#: partitioncloud/templates/partition/edit.html:46
|
||||||
#, python-format
|
#, python-format
|
||||||
msgid "Yes, %(number)s"
|
msgid "Yes, %(number)s"
|
||||||
msgstr "Oui, %(number)s"
|
msgstr "Oui, %(number)s"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/details.html:83
|
#: partitioncloud/templates/partition/details.html:77
|
||||||
#: partitioncloud/templates/partition/edit.html:54
|
#: partitioncloud/templates/partition/edit.html:48
|
||||||
msgid "Add one"
|
msgid "Add one"
|
||||||
msgstr "En rajouter"
|
msgstr "En rajouter"
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/details.html:89
|
#: partitioncloud/templates/partition/details.html:83
|
||||||
#: partitioncloud/templates/partition/edit.html:60
|
#: partitioncloud/templates/partition/edit.html:54
|
||||||
msgid "Update"
|
msgid "Update"
|
||||||
msgstr "Mettre à jour"
|
msgstr "Mettre à jour"
|
||||||
|
|
||||||
@ -674,7 +666,7 @@ msgstr "Mettre à jour"
|
|||||||
msgid "Modify \"%(name)s\""
|
msgid "Modify \"%(name)s\""
|
||||||
msgstr "Modifier \"%(name)s\""
|
msgstr "Modifier \"%(name)s\""
|
||||||
|
|
||||||
#: partitioncloud/templates/partition/edit.html:27
|
#: partitioncloud/templates/partition/edit.html:21
|
||||||
msgid "Source"
|
msgid "Source"
|
||||||
msgstr "Source"
|
msgstr "Source"
|
||||||
|
|
||||||
|
@ -36,8 +36,8 @@ hooks = [
|
|||||||
("v1.5.0", [("Move to instance directory", v1_hooks.move_instance)]),
|
("v1.5.0", [("Move to instance directory", v1_hooks.move_instance)]),
|
||||||
("v1.5.1", [("Move thumbnails", v1_hooks.move_thumbnails)]),
|
("v1.5.1", [("Move thumbnails", v1_hooks.move_thumbnails)]),
|
||||||
("v1.7.0", [("Install babel", v1_hooks.install_babel)]),
|
("v1.7.0", [("Install babel", v1_hooks.install_babel)]),
|
||||||
("v1.8.2", [("Install pypdf", v1_hooks.install_pypdf)]),
|
("v1.8.2", [("Install pypdf", v1_hooks.install_pypdf)])
|
||||||
("v1.10.3", [("Install unidecode", v1_hooks.install_unidecode)]),
|
("v1.10.3", [("Install unidecode", v1_hooks.install_unidecode)])
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user