1.started removal of CDNs.\n 2. Improved modular structure for all parts of project including database.
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
<!-- Store Product Category Card -->
|
||||
<div class="card" {{ model.attr_product_category_id }}="{{ cat.id_category }}">
|
||||
<h3 style="width: 100%; justify-self: left; margin-left: 3vh; display: inline-flex;">{{ cat.name }}</h4>
|
||||
<div class="container">
|
||||
{% for product in cat.products %}
|
||||
{% include '_block_store_product.html' %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
@@ -24,8 +24,8 @@
|
||||
</div>
|
||||
|
||||
<div class="topnav">
|
||||
<a href="{{ url_for('home') }}">Home</a> <!-- -->
|
||||
<a href="{{ url_for('store_home') }}">Store</a>
|
||||
<a href="{{ url_for('routes_core.home') }}">Home</a> <!-- -->
|
||||
<a href="{{ url_for('routes_store.store_home') }}">Store</a>
|
||||
<!--
|
||||
<a href="{{ url_for('get_publishable_key') }}">Get Key</a>
|
||||
<a href="{{ url_for('get_checkout_session') }}">Get Session</a>
|
||||
@@ -37,7 +37,7 @@
|
||||
</form>
|
||||
<a href="#" onclick="document.getElementById('formCreateCheckoutSession').submit();">About - Post Session</a>
|
||||
-->
|
||||
<a href="{{ url_for('contact') }}" style="float:right">Contact</a>
|
||||
<a href="{{ url_for('routes_core.contact') }}" style="float:right">Contact</a>
|
||||
</div>
|
||||
|
||||
<div class="content">
|
||||
1
templates/_block_button_slider.html
Normal file
1
templates/_block_button_slider.html
Normal file
@@ -0,0 +1 @@
|
||||
<div class="{{ model.FLAG_BUTTON_SLIDER }}">☰</div>
|
||||
@@ -1,8 +1,8 @@
|
||||
|
||||
{% if is_blank_row %}
|
||||
<tr class="{{ model.FLAG_ROW_NEW }}" {{ model.ATTR_ID_PERMUTATION }}>
|
||||
<td class="{{ model.FLAG_CATEGORY }}">
|
||||
<select class="{{ model.FLAG_CATEGORY}}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}>
|
||||
<td class="{{ model.FLAG_PRODUCT_CATEGORY }}">
|
||||
<select class="{{ model.FLAG_PRODUCT_CATEGORY}}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}>
|
||||
{% for cat in model.category_list.categories %}
|
||||
<option value="{{ cat.id_category }}">{{ cat.name }}</option>
|
||||
{% endfor %}
|
||||
@@ -32,8 +32,8 @@
|
||||
</tr>
|
||||
{% else %}
|
||||
<tr {{ model.ATTR_ID_PERMUTATION }}="{{ permutation.id_permutation }}">
|
||||
<td class="{{ model.FLAG_CATEGORY }}">
|
||||
<select class="{{ model.FLAG_CATEGORY }}" {{ model.ATTR_VALUE_CURRENT }}="{{ category.id_category }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ category.id_category }}"> <!-- {{ model.ATTR_ID_CATEGORY }}="{{ category.id_category }}" -->
|
||||
<td class="{{ model.FLAG_PRODUCT_CATEGORY }}">
|
||||
<select class="{{ model.FLAG_PRODUCT_CATEGORY }}" {{ model.ATTR_VALUE_CURRENT }}="{{ category.id_category }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ category.id_category }}"> <!-- {{ model.ATTR_ID_CATEGORY }}="{{ category.id_category }}" -->
|
||||
{% for c in model.category_list.categories %}
|
||||
<option value="{{ c.id_category }}" {{ "selected" if c.id_category == category.id_category else "" }}>{{ c.name }}</option>
|
||||
{% endfor %}
|
||||
|
||||
@@ -1,9 +1,37 @@
|
||||
<!-- Store Product Category Card -->
|
||||
<div class="card" {{ model.attr_product_category_id }}="{{ cat.id_category }}">
|
||||
<h3 style="width: 100%; justify-self: left; margin-left: 3vh; display: inline-flex;">{{ cat.name }}</h4>
|
||||
<div class="container">
|
||||
{% for product in cat.products %}
|
||||
{% include '_block_store_product.html' %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
{% if is_blank_row %}
|
||||
<tr class="{{ model.FLAG_ROW_NEW }}" {{ model.ATTR_ID_CATEGORY }}>
|
||||
<td class="{{ model.FLAG_DISPLAY_ORDER }}">
|
||||
{% include '_block_button_slider.html' %}
|
||||
</td>
|
||||
<td class="{{ model.FLAG_CODE }}">
|
||||
<textarea class="{{ model.FLAG_CODE }}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}></select>
|
||||
</td>
|
||||
<td class="{{ model.FLAG_NAME }}">
|
||||
<textarea class="{{ model.FLAG_NAME }}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}></textarea>
|
||||
</td>
|
||||
<td class="{{ model.FLAG_DESCRIPTION }}">
|
||||
<textarea class="{{ model.FLAG_DESCRIPTION }}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}>
|
||||
</td>
|
||||
<td class="{{ model.FLAG_ACTIVE }}">
|
||||
<input class="{{ model.FLAG_ACTIVE }}" type="checkbox" checked {{ model.ATTR_VALUE_CURRENT }}="true" {{ model.ATTR_VALUE_PREVIOUS }}="true">
|
||||
</td>
|
||||
</tr>
|
||||
{% else %}
|
||||
<tr {{ model.ATTR_ID_CATEGORY }}="{{ category.id_category }}">
|
||||
<td class="{{ model.FLAG_DISPLAY_ORDER }}">
|
||||
{% include '_block_button_slider.html' %}
|
||||
</td>
|
||||
<td class="{{ model.FLAG_CODE }}">
|
||||
<textarea class="{{ model.FLAG_CODE }}" value="{{ category.code }}" {{ model.ATTR_VALUE_CURRENT }}="{{ category.code }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ category.code }}"></select>
|
||||
</td>
|
||||
<td class="{{ model.FLAG_NAME }}">
|
||||
<textarea class="{{ model.FLAG_NAME }}" value="{{ category.name }}" {{ model.ATTR_VALUE_CURRENT }}="{{ category.name }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ category.name }}"></textarea>
|
||||
</td>
|
||||
<td class="{{ model.FLAG_DESCRIPTION }}">
|
||||
<textarea class="{{ model.FLAG_DESCRIPTION }}" value="{{ category.description }}" {{ model.ATTR_VALUE_CURRENT }}="{{ category.description }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ category.description }}">
|
||||
</td>
|
||||
<td class="{{ model.FLAG_ACTIVE }}">
|
||||
<input class="{{ model.FLAG_ACTIVE }}" type="checkbox" {% if category.active %}checked{% endif %} {{ model.ATTR_VALUE_CURRENT }}="{{ str(category.active).lower() }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ str(category.active).lower() }}">
|
||||
</td>
|
||||
</tr>
|
||||
{% endif %}
|
||||
@@ -1,8 +1,8 @@
|
||||
|
||||
{% if is_blank_row %}
|
||||
<tr class="{{ model.FLAG_ROW_NEW }}" {{ model.ATTR_ID_STOCK_ITEM }}>
|
||||
<td class="{{ model.FLAG_CATEGORY }}">
|
||||
<select class="{{ model.FLAG_CATEGORY}}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}>
|
||||
<td class="{{ model.FLAG_PRODUCT_CATEGORY }}">
|
||||
<select class="{{ model.FLAG_PRODUCT_CATEGORY}}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}>
|
||||
{% for cat in model.category_list.categories %}
|
||||
<option value="{{ cat.id_category }}">{{ cat.name }}</option>
|
||||
{% endfor %}
|
||||
@@ -48,8 +48,8 @@
|
||||
</tr>
|
||||
{% else %}
|
||||
<tr {{ model.ATTR_ID_STOCK_ITEM }}="{{ stock_item.id_stock_item }}">
|
||||
<td class="{{ model.FLAG_CATEGORY }}">
|
||||
<select class="{{ model.FLAG_CATEGORY }}" {{ model.ATTR_VALUE_CURRENT }}="{{ category.id_category }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ category.id_category }}"> <!-- {{ model.ATTR_ID_CATEGORY }}="{{ category.id_category }}" -->
|
||||
<td class="{{ model.FLAG_PRODUCT_CATEGORY }}">
|
||||
<select class="{{ model.FLAG_PRODUCT_CATEGORY }}" {{ model.ATTR_VALUE_CURRENT }}="{{ category.id_category }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ category.id_category }}"> <!-- {{ model.ATTR_ID_CATEGORY }}="{{ category.id_category }}" -->
|
||||
{% for c in model.category_list.categories %}
|
||||
<option value="{{ c.id_category }}" {{ "selected" if c.id_category == category.id_category else "" }}>{{ c.name }}</option>
|
||||
{% endfor %}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
{% if block_id == 'button_save' %}
|
||||
<button id="{{ model.ID_BUTTON_SAVE }}" type="submit" class="{{ model.FLAG_BUTTON_SUBMIT }}">Save</button>
|
||||
<button id="{{ model.ID_BUTTON_SAVE }}" type="button" class="{{ model.FLAG_BUTTON_SUBMIT }}">Save</button>
|
||||
{% elif block_id == 'button_cancel' %}
|
||||
<button id="{{ model.ID_BUTTON_CANCEL }}" class="{{ model.FLAG_BUTTON_CANCEL }}">Cancel</button>
|
||||
<button id="{{ model.ID_BUTTON_CANCEL }}" type="button" class="{{ model.FLAG_BUTTON_CANCEL }}">Cancel</button>
|
||||
{% elif block_id == 'button_add' %}
|
||||
<button id="{{ model.ID_BUTTON_ADD }}" class="{{ model.FLAG_BUTTON_ADD }}">Add new</button>
|
||||
<button id="{{ model.ID_BUTTON_ADD }}" type="button" class="{{ model.FLAG_ADD }}">Add new</button>
|
||||
{% elif block_id == 'button_confirm' %}
|
||||
<button id="{{ model.ID_BUTTON_CONFIRM }}" class="{{ model.FLAG_BUTTON_SUBMIT }}">Confirm</button>
|
||||
<button id="{{ model.ID_BUTTON_CONFIRM }}" type="button" class="{{ model.FLAG_BUTTON_SUBMIT }}">Confirm</button>
|
||||
{% endif %}
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
{% block page_body %}
|
||||
<!-- Include Stylesheet -->
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/services.css') }}">
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/pages/page_services.css') }}">
|
||||
|
||||
<!-- HTML content -->
|
||||
<div class="{{ model.FLAG_CARD }} {{ model.FLAG_COLUMN }}">
|
||||
@@ -198,17 +198,9 @@
|
||||
[Note: publishing the test report is optional but doing so may allow you to make your accessibility statement shorter and more focused.]
|
||||
https://www.w3.org/WAI/eval/report-tool/#/
|
||||
-->
|
||||
<p>You can read the full accessibility test report {{ model.URL_HOST }}{{ url_for('accessibility_report') }}.</p>
|
||||
<p>You can read the full accessibility test report {{ model.URL_HOST }}{{ url_for('routes_legal.accessibility_report') }}.</p>
|
||||
</div>
|
||||
|
||||
<!-- Include JavaScript -->
|
||||
<script src="{{ url_for('static', filename='js/accessibility_statement.js') }}"></script>
|
||||
|
||||
<script>
|
||||
var hashPageCurrent = "{{ model.HASH_PAGE_ACCESSIBILITY_STATEMENT }}";
|
||||
|
||||
$(document).ready(function() {
|
||||
hookupPageAccessibilityStatement();
|
||||
});
|
||||
</script>
|
||||
<script type="module" src="{{ url_for('static', filename='js/pages/page_accessibility_statement.js') }}"></script>
|
||||
{% endblock %}
|
||||
52
templates/_page_admin_home.html
Normal file
52
templates/_page_admin_home.html
Normal file
@@ -0,0 +1,52 @@
|
||||
{% extends 'layout.html' %}
|
||||
|
||||
{% block title %}{{ model.title }}{% endblock %}
|
||||
|
||||
{% block page_body %}
|
||||
<!-- Include Stylesheet -->
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/pages/page_admin_home.css') }}">
|
||||
|
||||
<!-- HTML content -->
|
||||
<div class="{{ model.FLAG_CARD }} {{ model.FLAG_ROW }}">
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
|
||||
<h2>Store</h2>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<button class="{{ model.FLAG_NAV_STORE_PRODUCT_CATEGORIES }}">Product Categories</button>
|
||||
</div>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<button class="{{ model.FLAG_NAV_STORE_PRODUCTS }}">Products</button>
|
||||
</div>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<button class="{{ model.FLAG_NAV_STORE_PRODUCT_PERMUTATIONS }}">Product Permutations</button>
|
||||
</div>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<button class="{{ model.FLAG_NAV_STORE_PRODUCT_PRICES }}">Product Prices</button>
|
||||
</div>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<button class="{{ model.FLAG_NAV_STORE_STOCK_ITEMS }}">Product Stock</button>
|
||||
</div>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<button class="{{ model.FLAG_NAV_STORE_PRODUCT_VARIATIONS }}">Product Variations</button>
|
||||
</div>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<button class="{{ model.FLAG_NAV_ADMIN_STORE_STRIPE_PRODUCTS }}">Add new Stripe products</button>
|
||||
</div>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<button class="{{ model.FLAG_NAV_ADMIN_STORE_STRIPE_PRICES }}">Add new Stripe prices</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Include JavaScript -->
|
||||
<script type="module" src="{{ url_for('static', filename='js/pages/page_admin_home.js') }}"></script>
|
||||
<script type="module" src="{{ url_for('static', filename='js/pages/page_store_base.js') }}"></script>
|
||||
|
||||
<!--
|
||||
<script>
|
||||
var hashPageCurrent = "{{ model.HASH_PAGE_STORE_ADMIN_HOME }}";
|
||||
|
||||
$(document).ready(function() {
|
||||
hookupPageAdminHome();
|
||||
});
|
||||
</script>
|
||||
-->
|
||||
{% endblock %}
|
||||
@@ -4,34 +4,36 @@
|
||||
|
||||
{% block page_body %}
|
||||
<!-- Include Stylesheet -->
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/contact.css') }}">
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/pages/page_contact.css') }}">
|
||||
|
||||
<script src="https://www.google.com/recaptcha/enterprise.js?render=6Lf8Q8cpAAAAAFAawGu4-ma60bvbEixNVTVvRzKe"></script> <!-- reCaptcha Integration -->
|
||||
|
||||
<!-- HTML content -->
|
||||
<div class="card">
|
||||
<form id="{{ model.ID_FORM_CONTACT }}" class="container" action="{{ url_for('contact') }}" method="POST">
|
||||
<form id="{{ model.ID_FORM_CONTACT }}" class="container" action="{{ url_for('routes_core.contact') }}" method="POST">
|
||||
<h2 class="label-title">Complete the form or find our details below.</h2>
|
||||
<!--
|
||||
<div class="container-input">
|
||||
<div class="{{ model.FLAG_CONTAINER_INPUT }}">
|
||||
<label for="sender_email">Email address</label> <!-- class="input-label" --
|
||||
<input type="email" id="sender_email" name="sender_email" placeholder="Please enter your email address so we can get back to you." style="width: 50%;"/>
|
||||
</div>
|
||||
<div class="container-input">
|
||||
<div class="{{ model.FLAG_CONTAINER_INPUT }}">
|
||||
<label for="sender_CC">
|
||||
<input type="checkbox" id="sender_CC" name="sender_CC" checked/>Uncheck this box if you do not wish to receive a copy of the email
|
||||
</label>
|
||||
</div>
|
||||
<div class="container-input">
|
||||
<div class="{{ model.FLAG_CONTAINER_INPUT }}">
|
||||
<label for="sender_name">Name</label> <!-- class="input-label" --
|
||||
<input type="text" id="sender_name" name="sender_name" placeholder="Please enter your preferred name." style="width: 30%;"/>
|
||||
</div>
|
||||
<div class="container-input">
|
||||
<div class="{{ model.FLAG_CONTAINER_INPUT }}">
|
||||
<label for="sender_message">Message</label> <!-- class="input-label" --
|
||||
<textarea id="sender_message" name="sender_message" rows="4" cols="80" placeholder="How can we help?"></textarea>
|
||||
</div>
|
||||
<button type="submit" id="submit_form_email">Submit request</button>
|
||||
-->
|
||||
{{ model.form_contact.hidden_tag() }}
|
||||
<div class="container-input">
|
||||
<div class="{{ model.FLAG_CONTAINER_INPUT }}">
|
||||
{{ model.form_contact.email.label }}
|
||||
{{ model.form_contact.email(size=254) }}
|
||||
{% for error in model.form_contact.email.errors %}
|
||||
@@ -39,7 +41,7 @@
|
||||
{% endfor %}
|
||||
</div>
|
||||
<!--
|
||||
<div class="container-input">
|
||||
<div class="{{ model.FLAG_CONTAINER_INPUT }}">
|
||||
{{ model.form_contact.CC.label }}
|
||||
{{ model.form_contact.CC(checked=True) }}
|
||||
{% for error in model.form_contact.name.errors %}
|
||||
@@ -47,24 +49,24 @@
|
||||
{% endfor %}
|
||||
</div>
|
||||
-->
|
||||
<div class="container-input">
|
||||
<div class="{{ model.FLAG_CONTAINER_INPUT }}">
|
||||
{{ model.form_contact.name.label }}
|
||||
{{ model.form_contact.name(size=50) }}
|
||||
{% for error in model.form_contact.name.errors %}
|
||||
<p class="error">{{ error }}</p>
|
||||
{% endfor %}
|
||||
</div>
|
||||
<div class="container-input">
|
||||
<div class="{{ model.FLAG_CONTAINER_INPUT }}">
|
||||
{{ model.form_contact.message.label }}
|
||||
{{ model.form_contact.message(rows=4, cols=80) }}
|
||||
{% for error in model.form_contact.name.errors %}
|
||||
<p class="error">{{ error }}</p>
|
||||
{% endfor %}
|
||||
</div>
|
||||
<div class="container-input">
|
||||
<div class="{{ model.FLAG_CONTAINER_INPUT }}">
|
||||
{{ model.form_contact.recaptcha() }}
|
||||
</div>
|
||||
<div class="container-input">
|
||||
<div class="{{ model.FLAG_CONTAINER_INPUT }}">
|
||||
{{ model.form_contact.submit() }}
|
||||
</div>
|
||||
</form>
|
||||
@@ -78,23 +80,24 @@
|
||||
<h4>{{ model.app.MAIL_CONTACT_PUBLIC }}</h4>
|
||||
</div>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}" style="padding-top: 0; width: fit-content;">
|
||||
<a href="{{ model.url_LinkedIn }}" class="container-icon-label"><img class="img-icon" src="{{ url_for('static', filename='images/Logo_LinkedIn.png') }}" alt="LinkedIn"></img><!--<h4>LinkedIn</h4>--></a>
|
||||
<a href="{{ model.url_GitHub }}" class="container-icon-label"><img class="img-icon" src="{{ url_for('static', filename='images/Logo_GitHub.png') }}" alt="GitHub"></img><!--<h4>GitHub</h4>--></a>
|
||||
<a href="{{ model.url_LinkedIn }}" class="container-icon-label"><img class="img-icon" src="{{ url_for('static', filename='images/Logo_LinkedIn.png') }}" alt="LinkedIn" aria-label="LinkedIn"></img><!--<h4>LinkedIn</h4>--></a>
|
||||
<a href="{{ model.url_GitHub }}" class="container-icon-label"><img class="img-icon" src="{{ url_for('static', filename='images/Logo_GitHub.png') }}" alt="GitHub" aria-label="GitHub"></img><!--<h4>GitHub</h4>--></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Include JavaScript -->
|
||||
<script src="{{ url_for('static', filename='js/contact.js') }}"></script>
|
||||
<script type="module" src="{{ url_for('static', filename='js/pages/page_contact.js') }}"></script>
|
||||
|
||||
<script>
|
||||
var hashPageCurrent = "{{ model.HASH_PAGE_CONTACT }}";
|
||||
var idEmail = "#{{ model.ID_EMAIL }}";
|
||||
var idMessage = "#{{ model.ID_MESSAGE }}";
|
||||
var idName = "#{{ model.ID_NAME }}";
|
||||
|
||||
/*
|
||||
$(document).ready(function() {
|
||||
stylePageContact();
|
||||
hookupPageContact();
|
||||
});
|
||||
*/
|
||||
</script>
|
||||
{% endblock %}
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
{% block page_body %}
|
||||
<!-- Include Stylesheet -->
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/home.css') }}" />
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/pages/page_home.css') }}" />
|
||||
|
||||
<!-- HTML content -->
|
||||
<div>
|
||||
@@ -14,8 +14,9 @@
|
||||
</div>
|
||||
|
||||
<!-- Include JavaScript -->
|
||||
<script src="{{ url_for('static', filename='js/home.js') }}"></script>
|
||||
<script type="module" src="{{ url_for('static', filename='js/pages/page_home.js') }}"></script>
|
||||
|
||||
<!--
|
||||
<script>
|
||||
var hashPageCurrent = "{{ model.HASH_PAGE_HOME }}";
|
||||
|
||||
@@ -23,4 +24,5 @@
|
||||
hookupPageHome();
|
||||
});
|
||||
</script>
|
||||
-->
|
||||
{% endblock %}
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
{% block page_body %}
|
||||
<!-- Include Stylesheet -->
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/contact.css') }}">
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/pages/page_license.css') }}">
|
||||
|
||||
<!-- HTML content -->
|
||||
<div class="{{ model.FLAG_CARD }} {{ model.FLAG_COLUMN }}">
|
||||
@@ -21,8 +21,9 @@
|
||||
</div>
|
||||
|
||||
<!-- Include JavaScript -->
|
||||
<script src="{{ url_for('static', filename='js/contact.js') }}"></script>
|
||||
<script type="module" src="{{ url_for('static', filename='js/pages/page_license.js') }}"></script>
|
||||
|
||||
<!--
|
||||
<script>
|
||||
var hashPageCurrent = "{{ model.HASH_PAGE_LICENSE }}";
|
||||
|
||||
@@ -30,4 +31,5 @@
|
||||
hookupPageLicense();
|
||||
});
|
||||
</script>
|
||||
-->
|
||||
{% endblock %}
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
{% block page_body %}
|
||||
<!-- Include Stylesheet -->
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/services.css') }}">
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/pages/page_services.css') }}">
|
||||
|
||||
<!-- HTML content -->
|
||||
<div class="{{ model.FLAG_CARD }} {{ model.FLAG_COLUMN }}">
|
||||
@@ -80,8 +80,9 @@
|
||||
</div>
|
||||
|
||||
<!-- Include JavaScript -->
|
||||
<script src="{{ url_for('static', filename='js/accessibility_statement.js') }}"></script>
|
||||
<script type="module" src="{{ url_for('static', filename='js/pages/page_accessibility_statement.js') }}"></script>
|
||||
|
||||
<!--
|
||||
<script>
|
||||
var hashPageCurrent = "{{ model.HASH_PAGE_ACCESSIBILITY_STATEMENT }}";
|
||||
|
||||
@@ -89,4 +90,5 @@
|
||||
hookupPageAccessibilityStatement();
|
||||
});
|
||||
</script>
|
||||
-->
|
||||
{% endblock %}
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
{% block page_body %}
|
||||
<!-- Include Stylesheet -->
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/services.css') }}">
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/pages/page_services.css') }}">
|
||||
|
||||
<!-- HTML content -->
|
||||
<div class="{{ model.FLAG_CARD }} {{ model.FLAG_COLUMN }}">
|
||||
@@ -1946,8 +1946,9 @@
|
||||
</div>
|
||||
|
||||
<!-- Include JavaScript -->
|
||||
<script src="{{ url_for('static', filename='js/retention_schedule.js') }}"></script>
|
||||
<script type="module" src="{{ url_for('static', filename='js/pages/page_retention_schedule.js') }}"></script>
|
||||
|
||||
<!--
|
||||
<script>
|
||||
var hashPageCurrent = "{{ model.HASH_PAGE_RETENTION_SCHEDULE }}";
|
||||
|
||||
@@ -1955,5 +1956,6 @@
|
||||
hookupPageRetentionSchedule();
|
||||
});
|
||||
</script>
|
||||
-->
|
||||
{% endblock %}
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
{% block page_body %}
|
||||
<!-- Include Stylesheet -->
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/services.css') }}" />
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/pages/page_services.css') }}" />
|
||||
|
||||
<!-- HTML content -->
|
||||
<div class="{{ model.FLAG_CARD }}">
|
||||
@@ -101,8 +101,9 @@
|
||||
</div>
|
||||
|
||||
<!-- Include JavaScript -->
|
||||
<script src="{{ url_for('static', filename='js/services.js') }}"></script>
|
||||
<script type="module" src="{{ url_for('static', filename='js/pages/page_services.js') }}"></script>
|
||||
|
||||
<!--
|
||||
<script>
|
||||
var hashPageCurrent = "{{ model.HASH_PAGE_SERVICES }}";
|
||||
|
||||
@@ -110,4 +111,5 @@
|
||||
hookupPageServices();
|
||||
});
|
||||
</script>
|
||||
-->
|
||||
{% endblock %}
|
||||
|
||||
@@ -1,78 +0,0 @@
|
||||
{% extends 'layout.html' %}
|
||||
|
||||
{% block title %}{{ model.title }}{% endblock %}
|
||||
|
||||
{% block page_body %}
|
||||
<!-- Include Stylesheet -->
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/home.css') }}">
|
||||
|
||||
<!-- HTML content -->
|
||||
<div class="row">
|
||||
<div class="leftcolumn">
|
||||
<div class="card">
|
||||
<div class="container column">
|
||||
<button id="{{ model.id_btn_admin_stripe_product_new }}">Add new Stripe products</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card">
|
||||
<div class="container column">
|
||||
<button id="{{ model.id_btn_admin_stripe_price_new }}">Add new Stripe prices</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card">
|
||||
<div class="container column">
|
||||
<button>Admin template 1</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="rightcolumn">
|
||||
<div class="card">
|
||||
<div class="container">
|
||||
<h3 class="label-title">About Us</h3>
|
||||
<img class="img-featured" src="{{ url_for('static', filename='images/Tag_Molly1.jpg')}}" alt="Molly tag image">
|
||||
<p>We are open for business!</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card">
|
||||
<div class="container">
|
||||
<h3 class="label-title">Promoted content</h3>
|
||||
<div class="card">
|
||||
<div class="container">
|
||||
<img class="img-featured" src="{{ url_for('static', filename='images/Braille_Translator_Demo.png')}}" alt="Braille translator demo image">
|
||||
</div>
|
||||
<div class="container">
|
||||
<p>Braille Keyboard Learning Tool</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card">
|
||||
<div class="container">
|
||||
<img class="img-featured" src="{{ url_for('static', filename='images/Prosthetics_Demo.gif')}}" alt="Prosthetics demo gif">
|
||||
</div>
|
||||
<div class="container">
|
||||
<p>FREE Prosthetic Hands by e-NABLE</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card">
|
||||
<div class="container">
|
||||
<h3 class="label-title">Where to find us</h3>
|
||||
<a href="{{ model.url_LinkedIn }}" class="container-icon-label"><img class="img-icon" src="{{ url_for('static', filename='images/Logo_LinkedIn.png') }}"/><h4>LinkedIn</h4></a>
|
||||
<a href="{{ model.url_GitHub }}" class="container-icon-label"><img class="img-icon" src="{{ url_for('static', filename='images/Logo_GitHub.png') }}"/><h4>GitHub</h4></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Include JavaScript -->
|
||||
<script src="{{ url_for('static', filename='js/store_admin.js') }}"></script>
|
||||
<script src="{{ url_for('static', filename='js/store_shared.js') }}"></script>
|
||||
|
||||
<script>
|
||||
var hashPageCurrent = "{{ model.HASH_PAGE_STORE_ADMIN_HOME }}";
|
||||
|
||||
$(document).ready(function() {
|
||||
hookupPageStoreAdminHome();
|
||||
});
|
||||
</script>
|
||||
{% endblock %}
|
||||
@@ -53,9 +53,10 @@
|
||||
<!-- Include JavaScript -->
|
||||
{% set block_id = 'scripts' %}
|
||||
{% include '_shared_store.html' %}
|
||||
<script src="{{ url_for('static', filename='js/store_page_basket.js') }}"></script>
|
||||
<script type="module" src="{{ url_for('static', filename='js/pages/page_store_basket.js') }}"></script>
|
||||
{% set block_id = 'checkout' %}
|
||||
{% include '_shared_store.html' %}
|
||||
<!--
|
||||
<script>
|
||||
var hashPageCurrent = "{{ model.HASH_PAGE_STORE_BASKET }}";
|
||||
|
||||
@@ -65,4 +66,5 @@
|
||||
// hookupStorePageBilling();
|
||||
});
|
||||
</script>
|
||||
-->
|
||||
{% endblock %}
|
||||
@@ -6,7 +6,6 @@
|
||||
<!-- Include Stylesheets -->
|
||||
{% set block_id = 'styles' %}
|
||||
{% include '_shared_store.html' %}
|
||||
<!-- <link rel="stylesheet" href="{{ url_for('static', filename='css/store_home.css') }}"> css/store_basket.css -->
|
||||
|
||||
<!-- HTML content -->
|
||||
<div class="{{ model.FLAG_CARD }}">
|
||||
@@ -29,9 +28,10 @@
|
||||
<!-- Include JavaScript -->
|
||||
{% set block_id = 'scripts' %}
|
||||
{% include '_shared_store.html' %}
|
||||
<script src="{{ url_for('static', filename='js/store_page_basket.js') }}"></script>
|
||||
<script type="module" src="{{ url_for('static', filename='js/pages/page_store_basket.js') }}"></script>
|
||||
{% set block_id = 'checkout' %}
|
||||
{% include '_shared_store.html' %}
|
||||
<!--
|
||||
<script>
|
||||
var hashPageCurrent = "{{ model.HASH_PAGE_STORE_BASKET }}";
|
||||
|
||||
@@ -40,4 +40,5 @@
|
||||
hookupStorePageCheckoutSuccess();
|
||||
});
|
||||
</script>
|
||||
-->
|
||||
{% endblock %}
|
||||
81
templates/_page_store_product_categories.html
Normal file
81
templates/_page_store_product_categories.html
Normal file
@@ -0,0 +1,81 @@
|
||||
{% extends 'layout.html' %}
|
||||
|
||||
{% block page_body %}
|
||||
{% set block_id = 'styles' %}
|
||||
{% include '_shared_store.html' %}
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/pages/page_store_product_categories.css') }}">
|
||||
|
||||
<form id="{{ model.ID_FORM_FILTERS_CATEGORIES }}" class="{{ model.FLAG_ROW }} {{ model.FLAG_CARD }}" action="{{ url_for('routes_store.category_save') }}" method="POST"> <!-- {{ model.FLAG_CONTAINER }} -->
|
||||
{{ model.form_filters.hidden_tag() }}
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
|
||||
<div class="{{ model.FLAG_CONTAINER_INPUT }} {{ model.FLAG_ROW }}">
|
||||
{{ model.form_filters.is_not_empty.label }}
|
||||
{{ model.form_filters.is_not_empty() }}
|
||||
{% for error in model.form_filters.is_not_empty.errors %}
|
||||
<p class="error">{{ error }}</p>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
<!--
|
||||
-->
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
|
||||
<div class="{{ model.FLAG_CONTAINER_INPUT }}">
|
||||
{% set block_id = 'button_add' %}
|
||||
{% include '_blocks_button_save_cancel.html' %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
|
||||
<div class="{{ model.FLAG_CONTAINER_INPUT }}">
|
||||
{% set block_id = 'button_save' %}
|
||||
{% include '_blocks_button_save_cancel.html' %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
|
||||
<div class="{{ model.FLAG_CONTAINER_INPUT }}">
|
||||
{% set block_id = 'button_cancel' %}
|
||||
{% include '_blocks_button_save_cancel.html' %}
|
||||
</div>
|
||||
</div>
|
||||
<!--
|
||||
<div class="{{ model.FLAG_ROW }} {{ model.FLAG_CARD }}">
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
|
||||
</div>
|
||||
</div>
|
||||
-->
|
||||
</form>
|
||||
<table id="{{ model.ID_TABLE_MAIN }}" class="{{ model.FLAG_ROW }} {{ model.FLAG_CARD }}">
|
||||
<thead>
|
||||
<tr class="{{ model.FLAG_PRODUCT_CATEGORY }}">
|
||||
<th class="{{ model.FLAG_DISPLAY_ORDER }}">Display Order</th>
|
||||
<th class="{{ model.FLAG_CODE }}">Code</th>
|
||||
<th class="{{ model.FLAG_NAME }}">Name</th>
|
||||
<th class="{{ model.FLAG_DESCRIPTION }}">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% set is_blank_row = False %}
|
||||
{% for category in model.category_list.categories %}
|
||||
{% include '_block_store_product_category.html' %}
|
||||
{% endfor %}
|
||||
|
||||
{% set is_blank_row = True %}
|
||||
{% include '_block_store_product_category.html' %}
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
{% include '_block_overlay_confirm.html' %}
|
||||
{% include '_block_overlay_error.html' %}
|
||||
|
||||
{% set block_id = 'scripts' %}
|
||||
{% include '_shared_store.html' %}
|
||||
<!-- Include JavaScript -->
|
||||
<script type="module" src="{{ url_for('static', filename='js/pages/page_store_product_permutations.js') }}"></script>
|
||||
|
||||
<script>
|
||||
// pass arguments from model to JS
|
||||
var idFormFiltersProductCategories = "#{{ model.ID_FORM_FILTERS_PRODUCT_CATEGORIES }}";
|
||||
var keyProductCategory = "{{ model.KEY_PRODUCT_CATEGORY }}";
|
||||
var listCategories = {{ model.category_list.to_list_categories() | tojson | safe }};
|
||||
|
||||
</script>
|
||||
{% endblock %}
|
||||
@@ -8,10 +8,10 @@
|
||||
{% set block_id = 'styles' %}
|
||||
{% include '_shared_store.html' %}
|
||||
<script>console.log("test 1");</script>
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/store_product_permutation.css') }}">
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/pages/page_store_product_permutations.css') }}">
|
||||
|
||||
<!-- HTML content -->
|
||||
<form id="{{ model.ID_FORM_FILTERS_PERMUTATIONS }}" class="{{ model.FLAG_ROW }} {{ model.FLAG_CARD }}" action="{{ url_for('permutation_save') }}" method="POST"> <!-- {{ model.FLAG_CONTAINER }} -->
|
||||
<form id="{{ model.ID_FORM_FILTERS_PERMUTATIONS }}" class="{{ model.FLAG_ROW }} {{ model.FLAG_CARD }}" action="{{ url_for('routes_store_product_permutation.permutation_save') }}" method="POST"> <!-- {{ model.FLAG_CONTAINER }} -->
|
||||
{{ model.form_filters.hidden_tag() }}
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
|
||||
<div class="{{ model.FLAG_CONTAINER_INPUT }}">
|
||||
@@ -81,17 +81,17 @@
|
||||
{% include '_blocks_button_save_cancel.html' %}
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<!--
|
||||
<div class="{{ model.FLAG_ROW }} {{ model.FLAG_CARD }}">
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
|
||||
<!--
|
||||
<div class="{{ model.FLAG_ROW }} {{ model.FLAG_CARD }}">
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
-->
|
||||
-->
|
||||
</form>
|
||||
<table id="{{ model.ID_TABLE_MAIN }}" class="{{ model.FLAG_ROW }} {{ model.FLAG_CARD }}">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="{{ model.FLAG_CATEGORY }}">Category</th>
|
||||
<th class="{{ model.FLAG_PRODUCT_CATEGORY }}">Category</th>
|
||||
<th class="{{ model.FLAG_PRODUCT }}">Product</th>
|
||||
<th class="{{ model.FLAG_VARIATIONS }}">Variations</th>
|
||||
<th class="{{ model.FLAG_QUANTITY_STOCK }}">Quantity Stock</th>
|
||||
@@ -123,30 +123,20 @@
|
||||
{% set block_id = 'scripts' %}
|
||||
{% include '_shared_store.html' %}
|
||||
<!-- Include JavaScript -->
|
||||
<script src="{{ url_for('static', filename='js/store_product_permutation.js') }}"></script>
|
||||
<script type="module" src="{{ url_for('static', filename='js/pages/page_store_product_permutations.js') }}"></script>
|
||||
|
||||
<script>
|
||||
// pass arguments from model to JS
|
||||
var attrIdCategory = "{{ model.ATTR_ID_CATEGORY }}";
|
||||
var attrIdProduct = "{{ model.ATTR_ID_PRODUCT }}";
|
||||
var attrIdPermutation = "{{ model.ATTR_ID_PERMUTATION }}";
|
||||
var flagCategory = "{{ model.FLAG_CATEGORY }}";
|
||||
var flagProduct = "{{ model.FLAG_PRODUCT }}";
|
||||
var flagVariations = "{{ model.FLAG_VARIATIONS }}";
|
||||
var flagQuantityStock = "{{ model.FLAG_QUANTITY_STOCK }}";
|
||||
var flagQuantityMin = "{{ model.FLAG_QUANTITY_MIN }}";
|
||||
var flagQuantityMax = "{{ model.FLAG_QUANTITY_MAX }}";
|
||||
var flagCostLocalVATIncl = "{{ model.FLAG_COST_LOCAL_VAT_INCL }}";
|
||||
var flagIsOutOfStock = "{{ model.FLAG_IS_OUT_OF_STOCK }}";
|
||||
var hashPageCurrent = "{{ model.HASH_PAGE_STORE_PRODUCT_PERMUTATION }}";
|
||||
/*
|
||||
var idFilterCategory = "#{{ model.ID_FILTER_CATEGORY }}";
|
||||
var idFilterProduct = "#{{ model.ID_FILTER_PRODUCT }}";
|
||||
var idFilterIsOutOfStock = "#{{ model.ID_FILTER_IS_OUT_OF_STOCK }}";
|
||||
var idFilterQuantityMin = "#{{ model.ID_FILTER_QUANTITY_MIN }}";
|
||||
var idFilterQuantityMax = "#{{ model.ID_FILTER_QUANTITY_MAX }}";
|
||||
*/
|
||||
var idFormFiltersPermutations = "#{{ model.ID_FORM_FILTERS_PERMUTATIONS }}";
|
||||
var keyPermutations = "{{ model.KEY_PERMUTATIONS }}";
|
||||
var dictListsProducts = {{ model.category_list.to_dict_lists_products() | tojson | safe }};
|
||||
var productsByCategory = {{ model.category_list.to_dict_lists_products() | tojson | safe }};
|
||||
var listCategories = {{ model.category_list.to_list_categories() | tojson | safe }};
|
||||
var listProducts = {{ model.category_list.to_list_products() | tojson | safe }};
|
||||
var listVariations = {{ model.variations.to_list_variations() | tojson | safe }};
|
||||
@@ -156,10 +146,12 @@
|
||||
listVariations = listVariations.map((variation, index) => { return variation[attrIdVariation]; });
|
||||
listVariationTypes = listVariationTypes.map((variationType, index) => { return variationType[attrIdVariationType]; });
|
||||
|
||||
/*
|
||||
// hookup elements
|
||||
$(document).ready(function() {
|
||||
console.log('Hooking up store product permutation page...');
|
||||
hookupStorePageProductPermutation();
|
||||
});
|
||||
*/
|
||||
</script>
|
||||
{% endblock %}
|
||||
@@ -4,10 +4,10 @@
|
||||
{% set block_id = 'styles' %}
|
||||
{% include '_shared_store.html' %}
|
||||
<script>console.log("test 1");</script>
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/store_stock_item.css') }}">
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/pages/page_store_stock_items.css') }}">
|
||||
|
||||
<!-- HTML content -->
|
||||
<form id="{{ model.ID_FORM_FILTERS_STOCK }}" class="{{ model.FLAG_ROW }} {{ model.FLAG_CARD }}" action="{{ url_for('stock_filter') }}" method="POST"> <!-- {{ model.FLAG_CONTAINER }} -->
|
||||
<form id="{{ model.ID_FORM_FILTERS_STOCK }}" class="{{ model.FLAG_ROW }} {{ model.FLAG_CARD }}" action="{{ url_for('routes_store.stock_filter') }}" method="POST"> <!-- {{ model.FLAG_CONTAINER }} -->
|
||||
{{ model.form_filters.hidden_tag() }}
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
|
||||
<div class="{{ model.FLAG_CONTAINER_INPUT }}">
|
||||
@@ -75,7 +75,7 @@
|
||||
<table id="{{ model.ID_TABLE_MAIN }}" class="{{ model.FLAG_ROW }} {{ model.FLAG_CARD }}">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="{{ model.FLAG_CATEGORY }}">Category</th>
|
||||
<th class="{{ model.FLAG_PRODUCT_CATEGORY }}">Category</th>
|
||||
<th class="{{ model.FLAG_PRODUCT }}">Product</th>
|
||||
<th class="{{ model.FLAG_VARIATIONS }}">Variations</th>
|
||||
<th class="{{ model.FLAG_CURRENCY }}">Currency</th>
|
||||
@@ -115,37 +115,29 @@
|
||||
{% set block_id = 'scripts' %}
|
||||
{% include '_shared_store.html' %}
|
||||
<!-- Include JavaScript -->
|
||||
<script src="{{ url_for('static', filename='js/store_stock_item.js') }}"></script>
|
||||
<script type="module" src="{{ url_for('static', filename='js/pages/page_store_stock_items.js') }}"></script>
|
||||
|
||||
<script>
|
||||
// pass arguments from model to JS
|
||||
var attrIdCategory = "{{ model.ATTR_ID_CATEGORY }}";
|
||||
var attrIdProduct = "{{ model.ATTR_ID_PRODUCT }}";
|
||||
var attrIdPermutation = "{{ model.ATTR_ID_PERMUTATION }}";
|
||||
var flagCategory = "{{ model.FLAG_CATEGORY }}";
|
||||
var flagProduct = "{{ model.FLAG_PRODUCT }}";
|
||||
var flagVariations = "{{ model.FLAG_VARIATIONS }}";
|
||||
var flagQuantityStock = "{{ model.FLAG_QUANTITY_STOCK }}";
|
||||
var flagQuantityMin = "{{ model.FLAG_QUANTITY_MIN }}";
|
||||
var flagQuantityMax = "{{ model.FLAG_QUANTITY_MAX }}";
|
||||
var flagCostLocal = "{{ model.FLAG_COST_LOCAL }}";
|
||||
var flagIsOutOfStock = "{{ model.FLAG_IS_OUT_OF_STOCK }}";
|
||||
var hashPageCurrent = "{{ model.HASH_PAGE_STORE_STOCK }}";
|
||||
/*
|
||||
var idFilterCategory = "#{{ model.ID_FILTER_CATEGORY }}";
|
||||
var idFilterProduct = "#{{ model.ID_FILTER_PRODUCT }}";
|
||||
var idFilterIsOutOfStock = "#{{ model.ID_FILTER_IS_OUT_OF_STOCK }}";
|
||||
var idFilterQuantityMin = "#{{ model.ID_FILTER_QUANTITY_MIN }}";
|
||||
var idFilterQuantityMax = "#{{ model.ID_FILTER_QUANTITY_MAX }}";
|
||||
*/
|
||||
var idFormFiltersPermutations = "#{{ model.ID_FORM_FILTERS_PERMUTATIONS }}";
|
||||
var keyPermutations = "{{ model.KEY_PERMUTATIONS }}";
|
||||
var dictListsProducts = {{ model.category_list.to_dict_lists_products() | tojson | safe }};
|
||||
var listCategories = {{ model.category_list.to_list_categories() | tojson | safe }};
|
||||
var listProducts = {{ model.category_list.to_list_products() | tojson | safe }};
|
||||
|
||||
/*
|
||||
// hookup elements
|
||||
$(document).ready(function() {
|
||||
console.log('Hooking up store stock page...');
|
||||
hookupStorePageStockItem();
|
||||
});
|
||||
*/
|
||||
</script>
|
||||
{% endblock %}
|
||||
@@ -7,11 +7,11 @@
|
||||
{% set block_id = 'styles' %}
|
||||
{% include '_shared_store.html' %}
|
||||
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/store_supplier.css') }}">
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/pages/page_store_supplier.css') }}">
|
||||
|
||||
<!-- HTML content -->
|
||||
<div class="card">
|
||||
<form id="{{ model.ID_FORM_SUPPLIER }}" class="{{ model.FLAG_CONTAINER }}" action="{{ url_for('supplier') }}" method="POST">
|
||||
<form id="{{ model.ID_FORM_SUPPLIER }}" class="{{ model.FLAG_CONTAINER }}" action="{{ url_for('routes_store.supplier') }}" method="POST">
|
||||
<h2 class="label-title">Supplier</h2>
|
||||
{{ model.form.hidden_tag() }}
|
||||
<div class="card subcard">
|
||||
@@ -95,16 +95,20 @@
|
||||
{% set block_id = 'scripts' %}
|
||||
{% include '_shared_store.html' %}
|
||||
<!-- Include JavaScript -->
|
||||
<script src="{{ url_for('static', filename='js/store_product.js') }}"></script>
|
||||
<script type="module" src="{{ url_for('static', filename='js/pages/page_store_supplier.js') }}"></script>
|
||||
|
||||
<!--
|
||||
<script>
|
||||
// pass arguments from model to JS
|
||||
var hashPageCurrent = "{{ model.HASH_PAGE_STORE_SUPPLIER }}";
|
||||
|
||||
/*
|
||||
// hookup elements
|
||||
$(document).ready(function() {
|
||||
console.log('Hooking up store supplier page...');
|
||||
hookupStorePageSupplier();
|
||||
});
|
||||
*/
|
||||
</script>
|
||||
-->
|
||||
{% endblock %}
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
{% block page_body %}
|
||||
<!-- Include Stylesheet -->
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/home.css') }}" />
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/pages/page_user.css') }}" />
|
||||
|
||||
<!-- HTML content -->
|
||||
<div>
|
||||
@@ -15,8 +15,9 @@
|
||||
</div>
|
||||
|
||||
<!-- Include JavaScript -->
|
||||
<script src="{{ url_for('static', filename='js/user.js') }}"></script>
|
||||
<script type="module" src="{{ url_for('static', filename='js/pages/page_user.js') }}"></script>
|
||||
|
||||
<!--
|
||||
<script>
|
||||
var hashPageCurrent = "{{ model.HASH_PAGE_USER_ACCOUNT }}";
|
||||
|
||||
@@ -24,4 +25,5 @@
|
||||
hookupPageUserAccount();
|
||||
});
|
||||
</script>
|
||||
-->
|
||||
{% endblock %}
|
||||
@@ -1,4 +1,4 @@
|
||||
|
||||
{% if block_id == 'button_get_in_touch' %}
|
||||
<button class="button-contact" alt="Get in touch" aria-label="Get in touch">Get in touch</button>
|
||||
<button class="{{ model.FLAG_NAV_CONTACT_US }}" alt="Get in touch" aria-label="Get in touch">Get in touch</button>
|
||||
{% endif %}
|
||||
@@ -4,20 +4,29 @@
|
||||
</div>
|
||||
{% elif block_id == 'styles' %}
|
||||
<!-- Include Stylesheet -->
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/store_shared.css') }}">
|
||||
<link rel="stylesheet" href="{{ url_for('static', filename='css/sections/store.css') }}">
|
||||
{% elif block_id == 'scripts' %}
|
||||
<!-- Include JavaScript -->
|
||||
<script src="{{ url_for('static', filename='js/store_shared.js') }}"></script>
|
||||
<!-- Variables from Model_View_Store + model-->
|
||||
<script>
|
||||
var attrFormType = "{{ model.ATTR_FORM_TYPE }}";
|
||||
var attrIdCategory = "{{ model.ATTR_ID_CATEGORY }}";
|
||||
var attrIdPermutation = "{{ model.ATTR_ID_PERMUTATION }}";
|
||||
var attrIdProduct = "{{ model.ATTR_ID_PRODUCT }}";
|
||||
var attrIdProductCategory = "{{ model.ATTR_ID_PRODUCT_CATEGORY }}";
|
||||
var attrIdVariation = "{{ model.ATTR_ID_VARIATION }}";
|
||||
var attrIdVariationType = "{{ model.ATTR_ID_VARIATION_TYPE }}";
|
||||
var flagBtnBasketAdd = "{{ model.FLAG_BTN_BASKET_ADD }}";
|
||||
var flagBtnBuyNow = "{{ model.FLAG_BTN_BUY_NOW }}";
|
||||
var flagButtonBasketAdd = "{{ model.FLAG_BUTTON_BASKET_ADD }}";
|
||||
var flagButtonBuyNow = "{{ model.FLAG_BUTTON_BUY_NOW }}";
|
||||
var flagCategory = "{{ model.FLAG_PRODUCT_CATEGORY }}";
|
||||
var flagCostLocal = "{{ model.FLAG_COST_LOCAL }}";
|
||||
var flagIsOutOfStock = "{{ model.FLAG_IS_OUT_OF_STOCK }}";
|
||||
var flagProduct = "{{ model.FLAG_PRODUCT }}";
|
||||
var flagQuantityMin = "{{ model.FLAG_QUANTITY_MIN }}";
|
||||
var flagQuantityMax = "{{ model.FLAG_QUANTITY_MAX }}";
|
||||
var flagQuantityStock = "{{ model.FLAG_QUANTITY_STOCK }}";
|
||||
var flagVariations = "{{ model.FLAG_VARIATIONS }}";
|
||||
var hashStoreBasketAdd = "{{ model.HASH_STORE_BASKET_ADD }}";
|
||||
var hashStoreBasketDelete = "{{ model.HASH_STORE_BASKET_DELETE }}";
|
||||
var hashStoreBasketEdit = "{{ model.HASH_STORE_BASKET_EDIT }}";
|
||||
@@ -30,6 +39,7 @@
|
||||
var idBasketContainer = "#{{ model.ID_BASKET_CONTAINER }}";
|
||||
var idBasketTotal = "#{{ model.ID_BASKET_TOTAL }}";
|
||||
var idBtnCheckout = "#{{ model.ID_BUTTON_CHECKOUT }}";
|
||||
var idCategoryDefault = "{{ model.ID_CATEGORY_DEFAULT }}";
|
||||
var idCurrency = "#{{ model.ID_CURRENCY }}";
|
||||
var idLabelBasketEmpty = "#{{ model.ID_LABEL_BASKET_EMPTY }}";
|
||||
var idRegionDelivery = "#{{ model.ID_REGION_DELIVERY }}";
|
||||
@@ -42,18 +52,7 @@
|
||||
var keyNameVariation = "{{ model.KEY_NAME_VARIATION }}";
|
||||
var keyNameVariationType = "{{ model.KEY_NAME_VARIATION_TYPE }}";
|
||||
var typeFormBasketAdd = "{{ model.TYPE_FORM_BASKET_ADD }}";
|
||||
var typeFormBasketEdit = "{{ model.TYPE_FORM_BASKET_EDIT }}";
|
||||
|
||||
/*
|
||||
if (!isEmpty({ { model.basket.items }})) {
|
||||
localStorage.setItem(keyBasket, JSON.parse(JSON.stringify({'items': "{ { model.basket.items }}"})));
|
||||
}
|
||||
*/
|
||||
|
||||
$(document).ready(function() {
|
||||
// hookupStore();
|
||||
});
|
||||
|
||||
var typeFormBasketEdit = "{{ model.TYPE_FORM_BASKET_EDIT }}";
|
||||
</script>
|
||||
{% elif block_id == 'checkout' %}
|
||||
<!-- Variables from Model_View_Store + model-->
|
||||
|
||||
@@ -36,9 +36,15 @@
|
||||
<meta id="{{ model.ID_CSRF_TOKEN }}" name="{{ model.NAME_CSRF_TOKEN }}" content="{{ csrf_token() }}" />
|
||||
|
||||
<!-- Scripts -->
|
||||
<script src="{{ url_for('static', filename='js/shared.js') }}"></script>
|
||||
<script src="https://code.jquery.com/jquery-3.7.1.js"></script> <!-- Include jQuery from a CDN -->
|
||||
<script src="https://www.google.com/recaptcha/enterprise.js?render=6Lf8Q8cpAAAAAFAawGu4-ma60bvbEixNVTVvRzKe"></script> <!-- reCaptcha Integration -->
|
||||
<script src="{{ url_for('static', filename='js/lib/common.js') }}"></script>
|
||||
<script src="{{ url_for('static', filename='js/lib/constants.js') }}"></script>
|
||||
<script src="{{ url_for('static', filename='js/lib/events.js') }}"></script>
|
||||
<script src="{{ url_for('static', filename='js/lib/extras.js') }}"></script>
|
||||
<script src="{{ url_for('static', filename='js/lib/init.js') }}"></script>
|
||||
<script src="{{ url_for('static', filename='js/lib/local_storage.js') }}"></script>
|
||||
<script src="{{ url_for('static', filename='js/lib/utils.js') }}"></script>
|
||||
<script src="{{ url_for('static', filename='js/lib/validation.js') }}"></script>
|
||||
<script type="module" src="{{ url_for('static', filename='js/app.js') }}"></script>
|
||||
|
||||
<script>
|
||||
var attrTextCollapsed = "{{ model.ATTR_TEXT_COLLAPSED }}";
|
||||
@@ -47,62 +53,98 @@
|
||||
var attrValuePrevious = "{{ model.ATTR_VALUE_PREVIOUS }}";
|
||||
var attrValueNew = "{{ model.ATTR_VALUE_NEW }}";
|
||||
var flagAdd = "{{ model.FLAG_ADD }}";
|
||||
var flagBtnOverlayClose = "{{ model.FLAG_BTN_OVERLAY_CLOSE }}";
|
||||
var flagBtnSubmit = "{{ model.FLAG_BTN_SUBMIT }}";
|
||||
var flagCancel = "{{ model.FLAG_CANCEL }}";
|
||||
var flagCard = "{{ model.FLAG_CARD }}";
|
||||
var flagCollapsed = "{{ model.FLAG_COLLAPSED }}";
|
||||
var flagCollapsible = "{{ model.FLAG_COLLAPSIBLE }}";
|
||||
var flagColumn = "{{ model.FLAG_COLUMN }}";
|
||||
// var flagContactUs = "{{ model.FLAG_CONTACT_US }}";
|
||||
var flagContainer = "{{ model.FLAG_CONTAINER }}";
|
||||
var flagContainerInput = "{{ model.FLAG_CONTAINER_INPUT }}";
|
||||
var flagDelete = "{{ model.FLAG_DELETE }}";
|
||||
var flagDetail = "{{ model.FLAG_DETAIL }}";
|
||||
var flagDirty = "{{ model.FLAG_DIRTY }}";
|
||||
var flagExpanded = "{{ model.FLAG_EXPANDED }}";
|
||||
var flagImageLogo = "{{ model.FLAG_IMAGE_LOGO }}";
|
||||
var flagInitialised = "{{ model.FLAG_INITIALISED }}";
|
||||
var flagNavAdminHome = "{{ model.FLAG_NAV_ADMIN_HOME }}";
|
||||
var flagNavAdminStoreStripePrices = "{{ model.FLAG_NAV_ADMIN_STORE_STRIPE_PRICES }}";
|
||||
var flagNavAdminStoreStripeProducts = "{{ model.FLAG_NAV_ADMIN_STORE_STRIPE_PRODUCTS }}";
|
||||
var flagNavContact = "{{ model.FLAG_NAV_CONTACT }}";
|
||||
var flagNavHome = "{{ model.FLAG_NAV_HOME }}";
|
||||
var flagNavServices = "{{ model.FLAG_NAV_SERVICES }}";
|
||||
var flagNavStoreHome = "{{ model.FLAG_NAV_STORE_HOME }}";
|
||||
var flagNavStoreProducts = "{{ model.FLAG_NAV_STORE_PRODUCTS }}";
|
||||
var flagNavStoreProductCategories = "{{ model.FLAG_NAV_STORE_PRODUCT_CATEGORIES }}";
|
||||
var flagNavStoreProductPermutations = "{{ model.FLAG_NAV_STORE_PRODUCT_PERMUTATIONS }}";
|
||||
var flagNavStoreProductPrices = "{{ model.FLAG_NAV_STORE_PRODUCT_PRICES }}";
|
||||
var flagNavStoreProductVariations = "{{ model.FLAG_NAV_STORE_PRODUCT_VARIATIONS }}";
|
||||
var flagNavStoreStockItems = "{{ model.FLAG_NAV_STORE_STOCK_ITEMS }}";
|
||||
var flagNavUserAccount = "{{ model.FLAG_NAV_USER_ACCOUNT }}";
|
||||
var flagNavUserAdmin = "{{ model.FLAG_NAV_USER_ADMIN }}";
|
||||
var flagNavUserLogin = "{{ model.FLAG_NAV_USER_LOGIN }}";
|
||||
var flagNavUserLogout = "{{ model.FLAG_NAV_USER_LOGOUT }}";
|
||||
var flagOverlay = "{{ model.FLAG_OVERLAY }}";
|
||||
var flagOverlayClose = "{{ model.FLAG_OVERLAY_CLOSE }}";
|
||||
var flagRow = "{{ model.FLAG_ROW }}";
|
||||
var flagRowNew = "{{ model.FLAG_ROW_NEW }}";
|
||||
var flagScrollable = "{{ model.FLAG_SCROLLABLE }}";
|
||||
var flagSubmit = "{{ model.FLAG_SUBMIT }}";
|
||||
var flagSubmitted = "{{ model.FLAG_SUBMITTED }}";
|
||||
var hashApplyFiltersStoreProductPermutation = "{{ model.HASH_APPLY_FILTERS_STORE_PRODUCT_PERMUTATION }}";
|
||||
var hashPageAccessibilityStatement = "{{ model.HASH_PAGE_ACCESSIBILITY_STATEMENT }}";
|
||||
var hashPageAdminHome = "{{ model.HASH_PAGE_ADMIN_HOME }}";
|
||||
var hashPageContact = "{{ model.HASH_PAGE_CONTACT }}";
|
||||
// var hashPageCurrent = "{{ model.hash_page_current }}";
|
||||
var hashPageErrorNoPermission = "{{ model.HASH_PAGE_ERROR_NO_PERMISSION }}";
|
||||
var hashPageAdminHome = "{{ model.HASH_PAGE_ADMIN_HOME }}";
|
||||
var hashPageHome = "{{ model.HASH_PAGE_HOME }}";
|
||||
var hashPageLicense = "{{ model.HASH_PAGE_LICENSE }}";
|
||||
var hashPageServices = "{{ model.HASH_PAGE_SERVICES }}";
|
||||
var hashPageStoreAdmin = "{{ model.HASH_PAGE_STORE_ADMIN }}";
|
||||
var hashPageStoreAdminStripePrices = "{{ model.HASH_PAGE_STORE_ADMIN_STRIPE_PRICES }}";
|
||||
var hashPageStoreAdminStripeProducts = "{{ model.HASH_PAGE_STORE_ADMIN_STRIPE_PRODUCTS }}";
|
||||
var hashPageStoreBasket = "{{ model.HASH_PAGE_STORE_BASKET }}";
|
||||
var hashPageStoreHome = "{{ model.HASH_PAGE_STORE_HOME }}";
|
||||
var hashPageStoreProductCategories = "{{ model.HASH_PAGE_STORE_PRODUCT_CATEGORIES }}";
|
||||
var hashPageStoreProducts = "{{ model.HASH_PAGE_STORE_PRODUCTS }}";
|
||||
var hashPageStoreProductPermutations = "{{ model.HASH_PAGE_STORE_PRODUCT_PERMUTATIONS }}";
|
||||
var hashPageStoreProductPrices = "{{ model.HASH_PAGE_STORE_PRODUCT_PRICES }}";
|
||||
var hashPageStoreProductVariations = "{{ model.HASH_PAGE_STORE_PRODUCT_VARIATIONS }}";
|
||||
var hashPageStoreStockItems = "{{ model.HASH_PAGE_STORE_STOCK_ITEMS }}";
|
||||
var hashPageUserAccount = "{{ model.HASH_PAGE_USER_ACCOUNT }}";
|
||||
var hashPageUserAdmin = "{{ model.HASH_PAGE_USER_ADMIN }}";
|
||||
var hashPageUserLogin = "{{ model.HASH_PAGE_USER_LOGIN }}";
|
||||
var hashPageUserLogout = "{{ model.HASH_PAGE_USER_LOGOUT }}";
|
||||
var hashSaveStoreProductPermutation = "{{ model.HASH_SAVE_STORE_PRODUCT_PERMUTATION }}";
|
||||
/*
|
||||
var idButtonAdd = "#{{ model.ID_BUTTON_ADD }}";
|
||||
var idButtonCancel = "#{{ model.ID_BUTTON_CANCEL }}";
|
||||
var idButtonConfirm = "#{{ model.ID_BUTTON_CONFIRM }}";
|
||||
*/
|
||||
var idButtonHamburger = "#{{ model.ID_BUTTON_HAMBURGER }}";
|
||||
/*
|
||||
var idButtonNavAdminHome = "#{{ model.ID_NAV_ADMIN_HOME }}";
|
||||
// var idButtonNavContact = "#{{ model.ID_NAV_CONTACT }}";
|
||||
var idButtonNavHome = "#{{ model.ID_NAV_HOME }}";
|
||||
var idButtonNavServices = "#{{ model.ID_NAV_SERVICES }}";
|
||||
var idButtonNavStoreHome = "#{{ model.ID_NAV_STORE_HOME }}";
|
||||
var idButtonNavStoreProduct = "#{{ model.ID_NAV_STORE_PRODUCT }}";
|
||||
var idButtonNavStoreProductCategories = "#{{ model.ID_NAV_STORE_PRODUCT_CATEGORIES }}";
|
||||
var idButtonNavStoreProductPermutations = "#{{ model.ID_NAV_STORE_PRODUCT_PERMUTATIONS }}";
|
||||
var idButtonNavStoreProductPrices = "#{{ model.ID_NAV_STORE_PRODUCT_PRICES }}";
|
||||
var idButtonNavStoreProductVariations = "#{{ model.ID_NAV_STORE_PRODUCT_VARIATIONS }}";
|
||||
var idButtonNavStoreStockItems = "#{{ model.ID_NAV_STORE_STOCK_ITEMS }}";
|
||||
var idButtonNavUserAccount = "#{{ model.ID_NAV_USER_ACCOUNT }}";
|
||||
var idButtonNavUserAdmin = "#{{ model.ID_NAV_USER_ADMIN }}";
|
||||
var idButtonNavUserLogin = "#{{ model.ID_NAV_USER_LOGIN }}";
|
||||
var idButtonNavUserLogout = "#{{ model.ID_NAV_USER_LOGOUT }}";
|
||||
var idButtonSave = "#{{ model.ID_BUTTON_SAVE }}";
|
||||
*/
|
||||
var idCSRFToken = "#{{ model.ID_CSRF_TOKEN }}";
|
||||
var idFormCurrency = "#{{ model.ID_FORM_CURRENCY }}";
|
||||
var idFormDeliveryRegion = "#{{ model.ID_FORM_DELIVERY_REGION }}";
|
||||
var idFormIsIncludedVAT = "#{{ model.ID_FORM_IS_INCLUDED_VAT }}";
|
||||
var idLabelError = "#{{ model.ID_LABEL_ERROR }}";
|
||||
var idNavAdminHome = "#{{ model.ID_NAV_ADMIN_HOME }}";
|
||||
var idNavContact = "#{{ model.ID_NAV_CONTACT }}";
|
||||
var idNavHome = "#{{ model.ID_NAV_HOME }}";
|
||||
var idNavServices = "#{{ model.ID_NAV_SERVICES }}";
|
||||
var idNavStoreAdmin = "#{{ model.ID_NAV_STORE_ADMIN }}";
|
||||
var idNavStoreHome = "#{{ model.ID_NAV_STORE_HOME }}";
|
||||
var idNavStorePermutations = "#{{ model.ID_NAV_STORE_PERMUTATIONS }}";
|
||||
var idNavStoreProduct = "#{{ model.ID_NAV_STORE_PRODUCT }}";
|
||||
var idNavStoreStockItems = "#{{ model.ID_NAV_STORE_STOCK_ITEMS }}";
|
||||
var idNavUserAccount = "#{{ model.ID_NAV_USER_ACCOUNT }}";
|
||||
var idNavUserAdmin = "#{{ model.ID_NAV_USER_ADMIN }}";
|
||||
var idNavUserLogin = "#{{ model.ID_NAV_USER_LOGIN }}";
|
||||
var idNavUserLogout = "#{{ model.ID_NAV_USER_LOGOUT }}";
|
||||
var idOverlayConfirm = "#{{ model.ID_OVERLAY_CONFIRM }}";
|
||||
var idOverlayError = "#{{ model.ID_OVERLAY_ERROR }}";
|
||||
var idOverlayHamburger = "#{{ model.ID_OVERLAY_HAMBURGER }}";
|
||||
@@ -118,13 +160,14 @@
|
||||
var keyShared = "shared";
|
||||
var nameCSRFToken = "{{ model.NAME_CSRF_TOKEN }}";
|
||||
var _pathHost = "{{ model.get_url_host() }}";
|
||||
var titlePageCurrent = "{{ model.title }}";
|
||||
</script>
|
||||
|
||||
|
||||
<!-- Stylesheets -->
|
||||
<link href="{{ url_for('static', filename='css/shared.css') }}" rel="stylesheet" type="text/css"/>
|
||||
<link href="{{ url_for('static', filename='css/main.css') }}" rel="stylesheet" type="text/css"/>
|
||||
</head>
|
||||
<body>
|
||||
<body data-page="{{ model.hash_page_current }}">
|
||||
{% set user = model.get_user_session() %}
|
||||
<!--
|
||||
{ % set is_admin_store_user = model.get_is_admin_store_user() % }
|
||||
@@ -138,28 +181,28 @@
|
||||
<h1 class="company-name">{{ model.NAME_COMPANY }} - {{ model.title }}</h1>
|
||||
</div>
|
||||
<div class="{{ model.FLAG_CONTAINER }}" style="width: 7vw; min-width: 7vw; max-width: 15vw; justify-content: flex-end; "> <!-- padding-left: 25%; -->
|
||||
<button id="{{ model.ID_BUTTON_HAMBURGER }}" tabindex="1" alt="Hamburger menu button" aria-label="Hamburger menu button">=</button>
|
||||
<button id="{{ model.ID_BUTTON_HAMBURGER }}" tabindex="1" alt="Hamburger menu button" aria-label="Hamburger menu button">☰</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="{{ model.ID_OVERLAY_HAMBURGER }}" class="{{ model.FLAG_OVERLAY}} {{ model.FLAG_HAMBURGER }} {{ model.FLAG_COLLAPSED }}"> <!-- style="height: {{ 27 * 3 }}px" {- { 4.5 * 3 }}vh -->
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<a id="{{ model.ID_NAV_HOME }}">Home</a>
|
||||
<a class="{{ model.FLAG_NAV_HOME }}">Home</a>
|
||||
</div>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<a id="{{ model.ID_NAV_SERVICES }}">Services</a>
|
||||
<a class="{{ model.FLAG_NAV_SERVICES }}">Services</a>
|
||||
</div>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<a id="{{ model.ID_NAV_CONTACT }}">Contact</a>
|
||||
<a class="{{ model.FLAG_NAV_CONTACT }}">Contact</a>
|
||||
</div>
|
||||
|
||||
{% if model.is_page_store and user.can_admin_store %}
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<a id="{{ model.ID_NAV_STORE_PERMUTATIONS }}">Product Permutations</a>
|
||||
<a class="{{ model.FLAG_NAV_STORE_PRODUCT_PERMUTATIONS }}">Product Permutations</a>
|
||||
</div>
|
||||
{% if user.can_admin_store %}
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<a id="{{ model.ID_NAV_STORE_STOCK_ITEMS }}">Stock Items</a>
|
||||
<a class="{{ model.FLAG_NAV_STORE_STOCK_ITEMS }}">Stock Items</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
<!--
|
||||
@@ -201,31 +244,31 @@
|
||||
</form>
|
||||
</div>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<a href="{ { url_for('logout') if model.is_user_logged_in else url_for('login') }}" style="float:right">{{ 'Logout' if model.is_user_logged_in else 'Login' }}</a>
|
||||
<a href="{ { url_for('routes_user.logout') if model.is_user_logged_in else url_for('routes_user.login') }}" style="float:right">{{ 'Logout' if model.is_user_logged_in else 'Login' }}</a>
|
||||
</div>
|
||||
-->
|
||||
{% else %}
|
||||
{% if user.can_admin_store %}
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<a id="{{ model.ID_NAV_STORE_HOME }}">Shop</a>
|
||||
<a class="{{ model.FLAG_NAV_STORE_HOME }}">Shop</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% if user.can_admin_store %}
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<a id="{{ model.ID_NAV_ADMIN }}">Admin</a>
|
||||
<a class="{{ model.FLAG_NAV_ADMIN_HOME }}">Admin</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if user.is_logged_in %}
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<a id="{{ model.ID_NAV_USER_ACCOUNT }}">Account</a>
|
||||
<a class="{{ model.FLAG_NAV_USER_ACCOUNT }}">Account</a>
|
||||
</div>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<a id="{{ model.ID_NAV_USER_LOGOUT }}">Logout</a>
|
||||
<a class="{{ model.FLAG_NAV_USER_LOGOUT }}">Logout</a>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<a id="{{ model.ID_NAV_USER_LOGIN }}">Login</a>
|
||||
<a class="{{ model.FLAG_NAV_USER_LOGIN }}">Login</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
@@ -237,17 +280,18 @@
|
||||
|
||||
|
||||
<div class="footer">
|
||||
<h4 style="padding-top: 1vh;">Copyright © {{ model.NAME_COMPANY }}. <a href="{{ url_for('license') }}" alt="License" aria-label="License">All rights reserved.</a></h4>
|
||||
<h4 style="padding-top: 1vh;">Copyright © {{ model.NAME_COMPANY }}. <a href="{{ url_for('routes_legal.license') }}" alt="License" aria-label="License">All rights reserved.</a></h4>
|
||||
<h5>Company number 13587499</h5>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}"><p><a href="{{ url_for('accessibility_statement') }}" alt="Accessibility statement" aria-label="Accessibility statement">Accessibility statement</a></p></div>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}"><p><a href="{{ url_for('privacy_notice') }}" alt="Privacy notice" aria-label="Privacy notice">Privacy notice</a></p></div>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}"><p><a href="{{ url_for('routes_legal.accessibility_statement') }}" alt="Accessibility statement" aria-label="Accessibility statement">Accessibility statement</a></p></div>
|
||||
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}"><p><a href="{{ url_for('routes_legal.privacy_notice') }}" alt="Privacy notice" aria-label="Privacy notice">Privacy notice</a></p></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
||||
<!--
|
||||
<script>
|
||||
|
||||
$(document).ready(function() {
|
||||
@@ -255,4 +299,4 @@
|
||||
hookupShared();
|
||||
});
|
||||
</script>
|
||||
|
||||
-->
|
||||
|
||||
Reference in New Issue
Block a user