{% macro flash( app, type ) %}
{% for message in app.flashes(type) %}
<div class="alert alert-{{ type }} col-md-10 col-lg-8 mx-auto my-4">
{{ message|raw }}
</div>
{% endfor %}
{% endmacro %}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<link rel="apple-touch-icon" sizes="76x76" href="../assets/img/apple-icon.png">
<link rel="icon" type="image/png" href="../assets/img/favicon.png">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<title>Lowdefest Tickets: {{ block('title') }}</title>
<meta content='width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0, shrink-to-fit=no' name='viewport' />
{% block stylesheets %}
{# {{ encore_entry_link_tags('app') }}#}
<link href="{{ asset('css/feStyles.css') }}" rel="stylesheet">
{% endblock stylesheets %}
<style id="progressStyles">
body::before {
content: '';
display: block;
position: fixed;
top: 0px;
left: 0px;
width: 100%;
height: 3px;
background: #0d6efd;
transform: scaleX(0.3);
transform-origin: 0 0;
will-change: transform;
z-index: 1000;
}
</style>
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-HFZKWK042C"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-HFZKWK042C');
</script>
</head>
<body class="">
<div class="mobile-container">
{% import _self as helper %}
<div class="content">
<div class="app-head unlogged" >
<div class="col-12 header-row">
<a href="{{ path('feapp_home') }}">
<div class="mob-logo">
<img src="{{ asset('build/img/LF23-logo.png') }}" >
<img src="{{ asset('build/img/LF23-name.svg') }}" >
</div>
{# {% if orders.invited|length>0 or orders.purchased|length>0 %}#}
{# <div class="col-50">#}
{# <div class="barcode-btn">#}
{# <a href="#" class="barcode-link" data-toggle="modal" data-target="#barcodeModal">#}
{# <svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 34 22"><defs><style>.cls-1{fill:#fff;}</style></defs><rect class="cls-1" width="2" height="22"/><rect class="cls-1" x="4" width="2" height="19.5"/><rect class="cls-1" x="8" width="2" height="19.5"/><rect class="cls-1" x="12" width="2" height="19.5"/><rect class="cls-1" x="16" width="2" height="19.5"/><rect class="cls-1" x="20" width="2" height="19.5"/><rect class="cls-1" x="24" width="2" height="19.5"/><rect class="cls-1" x="28" width="2" height="19.5"/><rect class="cls-1" x="32" width="2" height="22"/><rect class="cls-1" x="4" width="2" height="19.5"/></svg>#}
{# </a>#}
{# </div>#}
{# </div>#}
{# {% endif %}#}
</a>
</div>
</div>
{{ helper.flash( app, 'danger' ) }}
{{ helper.flash( app, 'warning' ) }}
{{ helper.flash( app, 'success' ) }}
{{ helper.flash( app, 'info' ) }}
{%if onAir|length %}
<div class="on-air">
{% for event in onAir%}
<div class="event">
<div class="badge badge-pill badge-danger">On Air</div>
<div class="artist">{{event.artist.name}}</div> @ <a href="{{path('feapp_lineup_stage',{'id':event.stage.id})}}" class="stage">{{event.stage.name}}</a>
</div>
{% endfor %}
</div>
{%endif%}
{%if upcoming|length %}
<div class="upcoming">
{% for event in upcoming%}
<div class="event">
<div class="time">{{event.startAt|date('H:i')}} ({{event.startAt|elapsed}})</div>
<div class="artist">{{event.artist.name}}</div> @ <a href="{{path('feapp_lineup_stage',{'id':event.stage.id})}}" class="stage">{{event.stage.name}}</a>
</div>
{% endfor %}
</div>
{%endif%}
{% block body %}{% endblock %}
</div>
<footer>Provided by <a href="https://wisetiger.co.uk/">Wisetiger</a>. Powered by <a href="https://seehoo.co.uk/">Seehoo</a>
</footer>
</div>
{% block javascripts %}
<script>
let i, c, u, a, s, l, f, d, m;
i = 15e3;
c = 4e4;
u = "#0d6efd";
a = function (n) {
return "\n ".concat("body::before", " { \n transform: scaleX(0.99);\n transition-duration: ").concat(n, "ms;\n transition-timing-function: cubic-bezier(0,1,0.5,1);\n }\n")
};
s = function () {
return "\n ".concat("body::before", " {\n transform: scaleX(1);\n transition-duration: ").concat(300, "ms;\n animation: none;\n background-image: none;\n }\n")
};
l = function () {
return "\n ".concat("body::before", " {\n transform: scaleX(0);\n transition-duration: 0ms;\n animation: none;\n background-image: none;\n }\n")
};
f = function () {
return "\n @keyframes shimmer {\n from {\n left: -80%; \n width: 80%; \n }\n \n to {\n left: 110%; \n width: 10%;\n }\n }\n"
};
d = function (n) {
return "\n ".concat("body::before", " {\n transform: scaleX(1);\n transition-duration: 0ms;\n background: ").concat(n, ";\n animation: shimmer 2s infinite;\n }\n ")
};
m = function (n) {
document && document.hidden ? n() : requestAnimationFrame((function () {
n()
}
))
};
let g = function (n) {
const e = (n || {}).sheet;
if (e) {
let t = !1
, o = !1
, r = null
, g = null
, R = null;
return {
inProgress: function() {
return t
},
start: function () {
const n = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : i;
t || (t = !0,
m((function () {
e.insertRule(a(n), e.cssRules.length)
}
)),
g = setTimeout((function () {
t && (o = !0,
m((function () {
e.insertRule(f(), e.cssRules.length),
e.insertRule(d(u), e.cssRules.length)
}
)))
}
), i),
R = setTimeout((function () {
t && (t = !1,
o = !1,
m((function () {
e.insertRule(l(), e.cssRules.length)
}
)),
clearTimeout(r),
clearTimeout(g),
clearTimeout(R))
}
), c))
},
end: function () {
if (t) {
if (t = !1,
o)
return o = !1,
clearTimeout(r),
clearTimeout(R),
clearTimeout(g),
void m((function () {
e.insertRule(l(), e.cssRules.length)
}
));
m((function () {
e.insertRule(s(), e.cssRules.length)
}
)),
r = setTimeout((function () {
clearTimeout(r),
clearTimeout(R),
clearTimeout(g),
m((function () {
e.insertRule(l(), e.cssRules.length)
}
))
}
), 800)
}
},
reset: function () {
t = !1,
o = !1,
clearTimeout(r),
clearTimeout(g),
clearTimeout(R),
m((function () {
e.insertRule(l(), e.cssRules.length)
}
))
}
}
}
};
!function () {
const n = document.getElementById("progressStyles");
n && n.sheet && (window.seewhen_progress_bar = g(n),
window.seewhen_progress_bar && window.seewhen_progress_bar.start && window.seewhen_progress_bar.start())
}()
</script>
{# <script src="{{ asset('packages/ui.js') }}"></script>#}
{{ encore_entry_script_tags('app') }}
{% endblock javascripts %}
{% block modals %}
{% if orders.invited|length>0 or orders.purchased|length>0 %}
<div class="modal fade" id="barcodeModal" tabindex="-1" role="dialog" aria-labelledby="ModalLabel" aria-hidden="true">
<div class="modal-dialog my-tickets">
<div class="modal-content">
<div class="modal-header justify-content-center">
<h5 class="title title-up">My Lowdefest Tickets</h5>
</div>
<div class="modal-body text-center ">
{% if orders.invited|length>1 or orders.purchased|length>1 or (orders.invited|length==1 and orders.purchased|length==1) %}
<div id="orderTickets" class="carousel slide" data-ride="carousel" data-interval="false">
<ol class="carousel-indicators">
{% for order in orders.purchased %}
<li data-target="#orderTickets" data-slide-to="{{ loop.index-1 }}" {% if loop.first %}class="active"{% endif %}></li>
{% endfor %}
{% for order in orders.invited %}
<li data-target="#orderTickets" data-slide-to="{{ orders.purchased|length + loop.index-1 }}" {% if loop.first and orders.purchased|length==0 %}class="active"{% endif %}></li>
{% endfor %}
</ol>
<div class="carousel-inner">
{% for order in orders.purchased %}
<div class="carousel-item {% if loop.first %}active{% endif %} sharable" data-id="{{ path('feapp_share_ticket',{id:order.id}) }}">
<img class="img-fluid" src="{{ url('img_qrcode_get_order',{'id':order.id}) }}">
<hr>
{% for ticket in order.tickets %}
<p>{{ ticket.type.name }}</p>
{% endfor %}
</div>
{% endfor%}
{% for order in orders.invited %}
<div class="carousel-item {% if loop.first and orders.purchased|length==0 %}active{% endif %}" data-id="{{ path('feapp_share_ticket',{id:order.id}) }}">
<img class="img-fluid" src="{{ url('img_qrcode_get_order',{'id':order.id}) }}">
<h6>{{ order.firstName }} {{ order.lastName }} shared this ticket with you</h6>
<hr>
{% for ticket in order.tickets %}
<p>{{ ticket.type.name }}</p>
{% endfor %}
</div>
{% endfor%}
</div>
<button class="carousel-control-prev" type="button" data-target="#orderTickets" data-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</button>
<button class="carousel-control-next" type="button" data-target="#orderTickets" data-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</button>
</div>
{% else %}
{% if orders.purchased|length>0 %}
<img
class="img-fluid purchased"
src="{{ url('img_qrcode_get_order',{'id':orders.purchased.0.id}) }}"
data-id="{{ path('feapp_share_ticket',{id:orders.purchased.0.id}) }}"
>
<hr>
{% for ticket in orders.purchased.0.tickets %}
<p>{{ ticket.type.name }}</p>
{% endfor %}
{% else %}
<img class="img-fluid" src="{{ url('img_qrcode_get_order',{'id':orders.invited.0.id}) }}">
<h6 class="sharedTickerInfo">{{ orders.invited.0.firstName }} {{ orders.invited.0.lastName }} shared this ticket with you</h6>
<hr>
{% for ticket in orders.invited.0.tickets %}
<p>{{ ticket.type.name }}</p>
{% endfor %}
{% endif %}
{% endif %}
</div>
<div class="modal-footer member">
<button type="button" class="btn btn-secondary" id="shareTicket">Send ticket</button>
<button type="button" class="btn btn-primary" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="barcodeSharingModal" tabindex="-1" role="dialog" aria-labelledby="ModalLabel" aria-hidden="true">
<div class="modal-dialog my-tickets">
<div class="modal-content">
{{ form_start(shareForm) }}
<div class="modal-header justify-content-center">
<h5 class="title title-up">Send ticket to</h5>
</div>
<div class="modal-body text-center ">
<div class="alert alert-info">
<b>Important:</b> Only share your ticket with someone who should be able to use the QR code
to gain entry on the day. We will only allow one entry per ticket type.
</div>
{{ form_row(shareForm.email) }}
</div>
<div class="modal-footer member">
<button type="submit" class="btn btn-primary" >Send</button>
</div>
{{ form_end(shareForm) }}
</div>
</div>
</div>
{% endif %}
{% endblock modals%}
</body>
</html>