Add footer in page

This commit is contained in:
2026-08-03 01:12:36 +02:00
parent e03977f1b4
commit fbe915021a
7 changed files with 100 additions and 19 deletions

View File

@@ -73,17 +73,24 @@ class DataSite:
if not page.exists():
raise FileNotFoundError(f"Le fichier page.json n'existe pas : {page}")
datas = json.loads(page.read_text())
datas = json.loads(page.read_text())['blocs']
else:
datas = self.datas
datas = self.datas['blocs'].copy()
if 'footer' in datas.keys():
del datas['footer']
return datas
def get_footer(self):
datas = self.datas['blocs']
if 'footer' in datas.keys():
return datas['footer']
else:
return None
def update_bloc(self, bloc, form, files=None):
print (form)
for field in form():
print(field)
if files != None:
f = files['image']
@@ -160,7 +167,7 @@ class DataSite:
def save_server_info(self, serverInfos=dict()):
self.datas['publish'] = serverInfos
self.update_json()
def get_theme(self):
return self.datas['config']['theme']
@@ -239,7 +246,6 @@ class DataSite:
serverInfos['Address'])
test_login = subprocess.check_output(test_connect, shell=True, stderr=subprocess.STDOUT)
if "Login incorrect" in str(test_login) :
print ("Mauvais login")
return False
else:
return True
@@ -248,15 +254,13 @@ class DataSite:
def publish(self, serverInfos=dict(), password=str()):
userDir = Path(PurePosixPath(self.user_folder))
upload = "lftp -u \"{}\",\"{}\" -p {} {} -e ' mirror -R public {}; chmod -R o+rx ./; bye;'".format(serverInfos['username'],
upload = "lftp -u \"{}\",\"{}\" -p {} {}:{} -e 'mirror -R ./public ./; bye;'".format(serverInfos['username'],
password,
serverInfos['Port'],
serverInfos['Address'],
serverInfos['folder'])
set_permissions = "lftp -u \"{}\",\"{}\" -p {} {} -e 'chmod -R o+rx ./; bye;'".format(serverInfos['username'],
set_permissions = "lftp -u \"{}\",\"{}\" -p {} {}:{} -e 'chmod -R o+rx ./; bye;'".format(serverInfos['username'],
password,
serverInfos['Port'],
serverInfos['Address'],
@@ -283,4 +287,4 @@ class DataSite:

View File

@@ -0,0 +1,4 @@
{% if footer.fg_color != footer.bg_color %}
color: {{ footer.fg_color }}; background-color: {{ footer.bg_color }};
{% endif %}

View File

@@ -2,13 +2,13 @@
<div id="myblocs" class="myblocs">
{% for item in myblocs.keys() %}
{% if item != 'footer' %}
<div class="bloc" id="bloc-{{ item }}" style="margin-top: 10px;">
<button class="btn"> {{ item }} - {{ myblocs[item]['type'] }} </button>
<input class="input-menu" id="bloc-{{ item }}" name="{{ item }}" value="" style="display:none;">
<button class="btn btn-danger" onclick="deleteItem(this)"> x </button>
</div>
{% endif %}
{% endfor %}
</div>

View File

@@ -20,17 +20,46 @@
{% include 'admin/_menu-admin.html' %}
{% macro print_colors() %}
{% endmacro %}
{% endmacro %}
{% set bloc = header %}
{% include 'themes/'+config.theme+'/header.html' ignore missing %}
{% if bloc is defined %}
<button class="btn btn-danger btn-xl pull-right"
id="close-edit-{{bloc.name}}"
onclick="hideBtn()"
hx-get="{% if page %}/{{ page }}{% endif %}/view/{{ bloc.name }}"
hx-swap="outerHTML"
hx-target="#{{ bloc.name }}" > X </button>
<button class="btn btn-success btn-xl btn-modify pull-right"
id="modify-{{ bloc.name }}"
style="margin-top:-7rem; margin-right:1rem;"
hx-get="{% if page %}/{{ page }}{% endif %}/edit/{{ bloc.name }}"
hx-target="#{{bloc.name}}"
hx-swap="oob"> Modifier </button>
{% endif %}
{% for bloc in myblocs.values() %}
{% if blocEdit == bloc.name %}
{% include 'themes/'+config.theme+'/blocs/edit/_'+bloc.type+'.html' %}
{% include 'themes/'+config.theme+'/blocs/edit/'+bloc.type+'.html' %}
{% else %}
{% include 'themes/'+config.theme+'/blocs/'+bloc.type+'.html' %}
<button class="btn btn-danger pull-right"
id="close-edit-{{bloc.name}}"
style="margin-top:-4rem; position:relative; z-index:999; margin-right:1rem; visibility: hidden;"
onclick="enableModBtn()"
hx-get="{% if page %}/{{ page }}{% endif %}/view/{{ bloc.name }}"
hx-swap="outerHTML"
hx-target="#{{ bloc.name }}" > X </button>
{% include 'themes/'+config.theme+'/blocs/_'+bloc.type+'.html' %}
<button class="btn btn-success btn-xl btn-modify pull-right"
id="modify-{{ bloc.name }}"
@@ -38,14 +67,36 @@
hx-get="{% if page %}/{{ page }}{% endif %}/edit/{{ bloc.name }}"
hx-target="#{{bloc.name}}"
hx-swap="oob"> Modifier </button>
{% endif %}
{% endfor %}
{% include '_flash_msgs.html' %}
{% set bloc = footer %}
{% include 'themes/'+config.theme+'/blocs/footer.html' ignore missing %}
{% if bloc.name %}
<button class="btn btn-danger btn-xl pull-right"
id="close-edit-{{bloc.name}}"
onclick="enableModBtn()"
hx-get="{% if page %}/{{ page }}{% endif %}/view/{{ bloc.name }}"
hx-swap="outerHTML"
hx-target="#{{ bloc.name }}" > X </button>
<button class="btn btn-success btn-xl btn-modify pull-right"
id="modify-{{ bloc.name }}"
style="margin-top:-7rem; margin-right:1rem;"
hx-get="{% if page %}/{{ page }}{% endif %}/edit/{{ bloc.name }}"
hx-target="#{{bloc.name}}"
hx-swap="oob"> Modifier </button>
{% endif %}
{% endblock %}
{% block js %}
<script>
</script>
<!-- Include the Quill library -->
<!-- Bootstrap core JavaScript -->
<script src="/static/vendors/jquery/jquery.min.js"></script>

View File

@@ -16,8 +16,11 @@
{% include 'themes/'+config.theme+'/_nav.html' %}
{% for bloc in myblocs.values() %}
{% include 'themes/'+config.theme+'/blocs/_'+bloc.type+'.html' %}
{% include 'themes/'+config.theme+'/blocs/'+bloc.type+'.html' %}
{% endfor %}
{% set bloc = footer %}
{% include 'themes/'+config.theme+'/blocs/footer.html' %}
{% endblock %}

View File

@@ -0,0 +1,15 @@
<div class="container">
<form method='POST' action='/edit-footer' >
{{ form.csrf_token }}
<div class="row">
<div class="col-lg-8 mx-auto text-center">
{% include 'edit-tools/_form-base.html' %}
{% include 'edit-tools/_editor-wysiwyg.html' %}
</div>
</div>
{% include 'edit-tools/_btn-save-cancel.html' %}
</form>
</div>
{% include 'edit-tools/_disable-modify-button.html' %}

View File

@@ -0,0 +1,4 @@
<footer class="{{ bloc.property }}" id="{{ bloc.name }}" style="{% include '_print_colors.css' %}">
{{ bloc.text|safe }}
</footer>