/*! Cookie helper functions Copyright (c) 2023 Dimitri van Heesch Released under MIT license. */ let Cookie = { cookie_namespace: 'doxygen_', readSetting(cookie,defVal) { if (window.chrome) { const val = localStorage.getItem(this.cookie_namespace+cookie) || sessionStorage.getItem(this.cookie_namespace+cookie); if (val) return val; } else { let myCookie = this.cookie_namespace+cookie+"="; if (document.cookie) { const index = document.cookie.indexOf(myCookie); if (index != -1) { const valStart = index + myCookie.length; let valEnd = document.cookie.indexOf(";", valStart); if (valEnd == -1) { valEnd = document.cookie.length; } return document.cookie.substring(valStart, valEnd); } } } return defVal; }, writeSetting(cookie,val,days=10*365) { // default days='forever', 0=session cookie, -1=delete if (window.chrome) { if (days==0) { sessionStorage.setItem(this.cookie_namespace+cookie,val); } else { localStorage.setItem(this.cookie_namespace+cookie,val); } } else { let date = new Date(); date.setTime(date.getTime()+(days*24*60*60*1000)); const expiration = days!=0 ? "expires="+date.toGMTString()+";" : ""; document.cookie = this.cookie_namespace + cookie + "=" + val + "; SameSite=Lax;" + expiration + "path=/"; } }, eraseSetting(cookie) { if (window.chrome) { if (localStorage.getItem(this.cookie_namespace+cookie)) { localStorage.removeItem(this.cookie_namespace+cookie); } else if (sessionStorage.getItem(this.cookie_namespace+cookie)) { sessionStorage.removeItem(this.cookie_namespace+cookie); } } else { this.writeSetting(cookie,'',-1); } }, }