{% if cookie %}
<div class="cookie-consent">
<div class="cookie-text">
当サイトでは、サイトの利便性向上のため、クッキー(Cookie)を使用しています。<!--<br>
Cookieの使用に関する詳細は<span class="policy-link"><a href="{{ url('help_privacy') }}" target="_blank" >「プライバシーポリシー」</a></span>をご覧ください。-->
</div>
<div class="cookie-agree">同意する</div>
<div class="cookie-reject d-none">拒否する</div>
</div>
{% block stylesheet %}
<style>
.cookie-consent {
display: flex;
justify-content: center;
align-items: center;
position: fixed;
bottom: 0;
width: 100%;
font-size: 12px;
color: #fff;
background: rgba(0, 0, 0, .8);
padding: 1.2em;
box-sizing: border-box;
visibility: hidden;
z-index: 2147483647;
}
.cookie-consent.is-show {
visibility: visible;
}
.policy-link, .policy-link :link, .policy-link :visited, .policy-link :hover, .policy-link :active {
color: #0092C4;
font-size: 15px;
text-decoration: none;
}
.cookie-agree, .cookie-reject {
color: #fff;
padding: .5em 1.5em;
margin-left: 20px;
min-width: 84px;
}
.cookie-agree {
background-color: #c8a353;
min-width: 90px;
text-align: center;
}
.cookie-reject {
background: #9da3a9;
min-width: 90px;
text-align: center;
}
.cookie-agree:hover, .cookie-reject:hover {
cursor: pointer;
}
.cookie-text .policy-link a {
color: #c8a353!important;
}
.cc-hide {
animation: hide 0.2s linear 0s;
animation-fill-mode: forwards;
}
@keyframes hide {
from {
opacity: 1;
}
to {
opacity: 0;
visibility: hidden;
}
}
@media screen and (max-width: 425px) {
.cookie-consent {
flex-direction: column;
}
.cookie-text {
margin-bottom: 1.4em;
}
.cookie-agree{
margin: 0 0 1em;
}
.cookie-reject {
margin: 0;
}
}
</style>
{% endblock %}
{% block javascript %}
<script type='text/javascript'>
(function() {
const cookieConsent = document.querySelector('.cookie-consent');
const cookieAgree = document.querySelector('.cookie-agree');
const cookieReject = document.querySelector('.cookie-reject');
const rejectFlag = sessionStorage.getItem('rejectFlag');
const cookieData = document.cookie;
let cookieSetFlag = false;
const cookieDataList = cookieData.split('; ');
for (const cookie of cookieDataList) {
const cookieSplit = cookie.split('=');
if (cookieSplit[0] === 'robotama-cookie') cookieSetFlag = true;
}
// Cookie同意の有効期限(日)をSetする
const expire = {{ cookie_expiration_date }};
function SetCookie(expire){
const current = new Date();
expire = current.getTime() + expire * 24 * 3600 * 1000;
document.cookie = `robotama-cookie=robotama-read; expire=${expire}`;
}
function DeleteAllCookie(){
const maxAgeZero = 'max-age=0';
for (const cookie of cookieDataList) {
const cookieSplit = cookie.split('=');
document.cookie = `${cookieSplit[0]}=; ${maxAgeZero}`;
}
}
function PopupDisplay(){
cookieConsent.classList.add('is-show');
}
if (!cookieSetFlag && !rejectFlag) {
PopupDisplay();
}
cookieAgree.addEventListener('click', ()=> {
cookieConsent.classList.add('cc-hide');
SetCookie(expire);
});
cookieReject.addEventListener('click', ()=> {
cookieConsent.classList.add('cc-hide');
sessionStorage.setItem('rejectFlag', true);
DeleteAllCookie();
});
}());
</script>
{% endblock %}
{% endif %}