This commit is contained in:
Jonas Legion 2021-12-10 15:36:01 +04:00
parent df21c3f664
commit 6bdedda993
4 changed files with 855 additions and 793 deletions

View File

@ -31,7 +31,7 @@ var $collapse = $('.navbar .collapse');
var $html = $('html'); var $html = $('html');
var $tagsinput = $('.tagsinput'); var $tagsinput = $('.tagsinput');
(function() { (function () {
var isWindows = navigator.platform.indexOf('Win') > -1 ? true : false; var isWindows = navigator.platform.indexOf('Win') > -1 ? true : false;
if (isWindows) { if (isWindows) {
@ -40,24 +40,23 @@ var $tagsinput = $('.tagsinput');
if ($('.tab-content .table-responsive').length != 0) { if ($('.tab-content .table-responsive').length != 0) {
$('.table-responsive').each(function() { $('.table-responsive').each(function () {
var ps2 = new PerfectScrollbar($(this)[0]); var ps2 = new PerfectScrollbar($(this)[0]);
}); });
} }
$html.addClass('perfect-scrollbar-on'); $html.addClass('perfect-scrollbar-on');
} else { } else {
$html.addClass('perfect-scrollbar-off'); $html.addClass('perfect-scrollbar-off');
} }
})(); })();
$(document).ready(function() { $(document).ready(function () {
// Multilevel Dropdown menu // Multilevel Dropdown menu
$('.dropdown-menu a.dropdown-toggle').on('click', function(e) { $('.dropdown-menu a.dropdown-toggle').on('click', function (e) {
var $el = $(this); var $el = $(this);
var $parent = $(this).offsetParent(".dropdown-menu"); var $parent = $(this).offsetParent(".dropdown-menu");
if (!$(this).next().hasClass('show')) { if (!$(this).next().hasClass('show')) {
@ -68,7 +67,7 @@ $(document).ready(function() {
$(this).closest("a").toggleClass('open'); $(this).closest("a").toggleClass('open');
$(this).parents('a.dropdown-item.dropdown.show').on('hidden.bs.dropdown', function(e) { $(this).parents('a.dropdown-item.dropdown.show').on('hidden.bs.dropdown', function (e) {
$('.dropdown-menu .show').removeClass("show"); $('.dropdown-menu .show').removeClass("show");
}); });
@ -100,7 +99,8 @@ $(document).ready(function() {
iconBase: "tim-icons", iconBase: "tim-icons",
tickIcon: "icon-check-2" tickIcon: "icon-check-2"
}); });
}; }
;
if ($(window).width() >= 768) { if ($(window).width() >= 768) {
big_image = $('.header[data-parallax="true"]'); big_image = $('.header[data-parallax="true"]');
@ -111,7 +111,7 @@ $(document).ready(function() {
// Activate Popovers and set color for popovers // Activate Popovers and set color for popovers
$('[data-toggle="popover"]').each(function() { $('[data-toggle="popover"]').each(function () {
color_class = $(this).data('color'); color_class = $(this).data('color');
$(this).popover({ $(this).popover({
template: '<div class="popover popover-' + color_class + '" role="tooltip"><div class="arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>' template: '<div class="popover popover-' + color_class + '" role="tooltip"><div class="arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'
@ -130,7 +130,7 @@ $(document).ready(function() {
if (!(/^((?!chrome|android).)*safari/i.test(navigator.userAgent))) { if (!(/^((?!chrome|android).)*safari/i.test(navigator.userAgent))) {
if ($('.square').length != 0) { if ($('.square').length != 0) {
$(document).mousemove(function(e) { $(document).mousemove(function (e) {
posX = event.clientX - window.innerWidth / 2; posX = event.clientX - window.innerWidth / 2;
posY = event.clientY - window.innerWidth / 6; posY = event.clientY - window.innerWidth / 6;
@ -159,14 +159,14 @@ $(document).ready(function() {
$(window).on('scroll', blackKit.checkScrollForTransparentNavbar) $(window).on('scroll', blackKit.checkScrollForTransparentNavbar)
} }
$('.form-control').on("focus", function() { $('.form-control').on("focus", function () {
$(this).parent('.input-group').addClass("input-group-focus"); $(this).parent('.input-group').addClass("input-group-focus");
}).on("blur", function() { }).on("blur", function () {
$(this).parent(".input-group").removeClass("input-group-focus"); $(this).parent(".input-group").removeClass("input-group-focus");
}); });
// Activate bootstrapSwitch // Activate bootstrapSwitch
$('.bootstrap-switch').each(function() { $('.bootstrap-switch').each(function () {
$this = $(this); $this = $(this);
data_on_label = $this.data('on-label') || ''; data_on_label = $this.data('on-label') || '';
data_off_label = $this.data('off-label') || ''; data_off_label = $this.data('off-label') || '';
@ -245,10 +245,38 @@ $(document).ready(function() {
function up(max) { function up(max) {
let input_id = this.id.replace("up_", "inputqty_"); let input_id = this.id.replace("up_", "inputqty_");
console.log(input_id)
document.getElementById(input_id).value = parseInt(document.getElementById(input_id).value) + 1; document.getElementById(input_id).value = parseInt(document.getElementById(input_id).value) + 1;
if (document.getElementById(input_id).value >= parseInt(max)) { if (document.getElementById(input_id).value >= parseInt(max)) {
document.getElementById(input_id).value = max; document.getElementById(input_id).value = max;
} }
let uuid = this.id.replace("up_", "");
document.getElementById('name_ticket').insertAdjacentHTML('beforeend', `
<div class="row">
<div class="col-sm-12 col-lg-6">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i
class="tim-icons icon-email-85"></i></span>
</div>
<input type="email" class="form-control"
placeholder="Votre email">
</div>
</div>
<div class="col-sm-12 col-lg-6">
<div class="input-group">
<div class="input-group-prepend">
<span class="input-group-text"><i
class="tim-icons icon-email-85"></i></span>
</div>
<input type="email" class="form-control"
placeholder="Vérifiez votre email">
</div>
</div>
</div>
`);
} }
function down(min) { function down(min) {
@ -260,8 +288,6 @@ function down(min) {
} }
// Returns a function, that, as long as it continues to be invoked, will not // Returns a function, that, as long as it continues to be invoked, will not
// be triggered. The function will be called after it stops being called for // be triggered. The function will be called after it stops being called for
// N milliseconds. If `immediate` is passed, trigger the function on the // N milliseconds. If `immediate` is passed, trigger the function on the
@ -293,7 +319,7 @@ function hasScrolled() {
lastScrollTop = st; lastScrollTop = st;
}; };
$(window).on('resize', function() { $(window).on('resize', function () {
blackKit.initNavbarImage(); blackKit.initNavbarImage();
}); });
@ -303,7 +329,7 @@ blackKit = {
navbar_menu_visible: 0 navbar_menu_visible: 0
}, },
checkScrollForTransparentNavbar: debounce(function() { checkScrollForTransparentNavbar: debounce(function () {
if ($(document).scrollTop() > scroll_distance) { if ($(document).scrollTop() > scroll_distance) {
if (transparent) { if (transparent) {
transparent = false; transparent = false;
@ -317,7 +343,7 @@ blackKit = {
} }
}, 17), }, 17),
initDatePicker: function() { initDatePicker: function () {
if ($datepicker.length != 0) { if ($datepicker.length != 0) {
$datepicker.datetimepicker({ $datepicker.datetimepicker({
icons: { icons: {
@ -335,7 +361,7 @@ blackKit = {
} }
}, },
initNavbarImage: function() { initNavbarImage: function () {
var $navbar = $('.navbar').find('.navbar-translate').siblings('.navbar-collapse'); var $navbar = $('.navbar').find('.navbar-translate').siblings('.navbar-collapse');
var background_image = $navbar.data('nav-image'); var background_image = $navbar.data('nav-image');
@ -354,7 +380,7 @@ blackKit = {
} }
}, },
initSliders: function() { initSliders: function () {
// Sliders for demo purpose in refine cards section // Sliders for demo purpose in refine cards section
var slider = document.getElementById('sliderRegular'); var slider = document.getElementById('sliderRegular');
@ -379,16 +405,16 @@ blackKit = {
}); });
}, },
checkScrollForMovingNavbar: function() { checkScrollForMovingNavbar: function () {
// Hide Header on on scroll down // Hide Header on on scroll down
navbarHeight = $('.navbar').outerHeight(); navbarHeight = $('.navbar').outerHeight();
$(window).scroll(function(event) { $(window).scroll(function (event) {
didScroll = true; didScroll = true;
}); });
setInterval(function() { setInterval(function () {
if (didScroll) { if (didScroll) {
hasScrolled(); hasScrolled();
didScroll = false; didScroll = false;
@ -398,7 +424,7 @@ blackKit = {
}, },
checkScrollForParallax: debounce(function() { checkScrollForParallax: debounce(function () {
oVal = ($(window).scrollTop() / 3); oVal = ($(window).scrollTop() / 3);
big_image.css({ big_image.css({
@ -410,8 +436,8 @@ blackKit = {
}, 6), }, 6),
initVideoBackground: function() { initVideoBackground: function () {
$('[data-toggle="video"]').click(function() { $('[data-toggle="video"]').click(function () {
id_video = $(this).data('video'); id_video = $(this).data('video');
video = $('#' + id_video).get(0); video = $('#' + id_video).get(0);
@ -429,7 +455,7 @@ blackKit = {
}); });
}, },
initContactUsMap: function() { initContactUsMap: function () {
var myLatlng = new google.maps.LatLng(40.748817, -73.985428); var myLatlng = new google.maps.LatLng(40.748817, -73.985428);
var mapOptions = { var mapOptions = {
zoom: 13, zoom: 13,
@ -636,7 +662,7 @@ blackKit = {
}, },
initContactUs2Map: function() { initContactUs2Map: function () {
var myLatlng = new google.maps.LatLng(40.748817, -73.985428); var myLatlng = new google.maps.LatLng(40.748817, -73.985428);
var mapOptions = { var mapOptions = {
zoom: 13, zoom: 13,
@ -850,11 +876,11 @@ blackKit = {
function debounce(func, wait, immediate) { function debounce(func, wait, immediate) {
var timeout; var timeout;
return function() { return function () {
var context = this, var context = this,
args = arguments; args = arguments;
clearTimeout(timeout); clearTimeout(timeout);
timeout = setTimeout(function() { timeout = setTimeout(function () {
timeout = null; timeout = null;
if (!immediate) func.apply(context, args); if (!immediate) func.apply(context, args);
}, wait); }, wait);

View File

@ -51,7 +51,6 @@
placeholder="Votre email"> placeholder="Votre email">
</div> </div>
</div> </div>
<div class="col-sm-12 col-lg-6"> <div class="col-sm-12 col-lg-6">
<div class="input-group"> <div class="input-group">
<div class="input-group-prepend"> <div class="input-group-prepend">
@ -85,7 +84,9 @@
<input type="text" id="inputqty_{{ price.pk }}" <input type="text" id="inputqty_{{ price.pk }}"
class="form-control input-number" class="form-control input-number"
value="0"/> value="0" readonly
/>
<div class="input-group-btn"> <div class="input-group-btn">
<button id="up_{{ price.pk }}" <button id="up_{{ price.pk }}"
class="btn btn-warning btn-round btn-simple" class="btn btn-warning btn-round btn-simple"
@ -96,13 +97,19 @@
</div> </div>
</div> </div>
<script>
{#remise à zero en cas de rechargement de page #}
document.getElementById('inputqty_{{ price.pk }}').value = 0
</script>
{% endfor %} {% endfor %}
{% endif %} {% endif %}
{% endfor %} {% endfor %}
</div> </div>
<div class="space-50"></div> <div class="space-50"></div>
<div id="name_ticket"></div>
<div class="space-50"></div>
<div class="row justify-content-start"> <div class="row justify-content-start">
<button class="btn btn-warning ml-3">Reserver <i class="tim-icons icon-cart"></i> <button class="btn btn-warning ml-3">Reserver <i class="tim-icons icon-cart"></i>
</button> </button>

View File

@ -1,51 +1,78 @@
version: '3.7' version: '3.7'
services: services:
tibillet_postgres: billetterie_postgres_demo:
container_name: tibillet_postgres extends:
image: postgres:11.5-alpine file: ../compose/docker-compose-base.yml
restart: always service: billetterie_postgres
env_file: .env
ports: ports:
- 5432:5432 - 5432:5432
volumes: networks:
- "../../Postgres/dbdata:/var/lib/postgresql/data" - backend-billeterie
- "/etc/localtime:/etc/localtime:ro"
environment:
POSTGRES_USER: ${POSTGRES_USER}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_DB: ${POSTGRES_DB}
redis: billetterie_redis_demo:
image: redis:6-alpine extends:
restart: always file: ../compose/docker-compose-base.yml
container_name: redis service: billetterie_redis
hostname: redis networks:
- backend-billeterie
tibillet_django: billetterie_django_demo:
container_name: tibillet_django extends:
build: ../Dockerfile/ file: ../compose/docker-compose-base.yml
restart: always service: billetterie_django
command: "bash /DjangoFiles/launch.sh"
env_file: .env env_file: .env
ports: ports:
- 8002:8002 - 8002:8002
volumes:
- "../../DjangoFiles:/DjangoFiles"
- "../../Backup:/Backup"
- "../../Docker/bashrc:/root/.bashrc"
working_dir: /DjangoFiles
command: "bash /DjangoFiles/launch.sh"
depends_on: depends_on:
- tibillet_postgres - billetterie_postgres_demo
- redis links:
- billetterie_postgres_demo:billetterie_postgres
- billetterie_redis_demo:redis
networks:
- frontend
- backend-billeterie
tibillet_celery: billetterie_celery_demo:
container_name: tibillet_celery extends:
build: ../Dockerfile/ file: ../compose/docker-compose-base.yml
restart: always service: billetterie_celery
command: "bash /DjangoFiles/launch_celery.sh"
env_file: .env env_file: .env
volumes:
- "../../DjangoFiles:/DjangoFiles"
- "../../Docker/bashrc:/root/.bashrc"
working_dir: /DjangoFiles
command: "bash /DjangoFiles/launch.sh"
depends_on: depends_on:
- tibillet_django - billetterie_django_demo
links:
- billetterie_postgres_demo:billetterie_postgres
- billetterie_redis_demo:redis
networks:
- frontend
- backend-billeterie
billetterie_nginx_demo:
extends:
file: ../compose/docker-compose-base.yml
service: billetterie_nginx
env_file: .env
depends_on:
- billetterie_django_demo
links:
- billetterie_django_demo:billetterie_django
labels:
- traefik.enable=true
- traefik.docker.network=frontend
- traefik.http.routers.billeterie_nginx.tls.certresolver=myresolver
- traefik.http.routers.billeterie_nginx.rule=Host(`m.${DOMAIN}`) || Host(`www.${DOMAIN}`) || Host(`raffinerie.${DOMAIN}`) || Host(`bisik.${DOMAIN}`) || Host(`vavangart.${DOMAIN}`) || Host(`manapany.${DOMAIN}`) || Host(`demo.${DOMAIN}`) || Host(`${DOMAIN}`)
networks:
- frontend
# pour demo : jturbeaux@pm.me / eiXom5mo
networks:
frontend:
external: true
backend-billeterie:
name: "backend-billeterie"

View File

@ -5,6 +5,8 @@ services:
file: ../compose/docker-compose-base.yml file: ../compose/docker-compose-base.yml
service: billetterie_postgres service: billetterie_postgres
env_file: .env env_file: .env
# ports:
# - 5432:5432
networks: networks:
- backend-billeterie - backend-billeterie
@ -51,8 +53,8 @@ services:
extends: extends:
file: ../compose/docker-compose-base.yml file: ../compose/docker-compose-base.yml
service: billetterie_nginx service: billetterie_nginx
ports: # ports:
- 8002:80 # - 8002:80
env_file: .env env_file: .env
depends_on: depends_on:
- billetterie_django_demo - billetterie_django_demo