From 5f27cec93708131a2ffcdb8cbdfc8f9b8db9f466 Mon Sep 17 00:00:00 2001 From: TroogS Date: Wed, 29 May 2019 13:34:30 +0200 Subject: [PATCH] Initial commit --- example.png | Bin 0 -> 6621 bytes material-cookiebar.css | 49 ++++++++++++++++ material-cookiebar.js | 56 +++++++++++++++++++ material-cookiebar.js.map | 1 + material-cookiebar.ts | 115 ++++++++++++++++++++++++++++++++++++++ 5 files changed, 221 insertions(+) create mode 100644 example.png create mode 100644 material-cookiebar.css create mode 100644 material-cookiebar.js create mode 100644 material-cookiebar.js.map create mode 100644 material-cookiebar.ts diff --git a/example.png b/example.png new file mode 100644 index 0000000000000000000000000000000000000000..320c6f2d74f7d8cac4a07de1c410b2ff1eb665fa GIT binary patch literal 6621 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 P3+R}o{m~-x^Vk0aZ6Y)8 literal 0 HcmV?d00001 diff --git a/material-cookiebar.css b/material-cookiebar.css new file mode 100644 index 0000000..d7bb9c5 --- /dev/null +++ b/material-cookiebar.css @@ -0,0 +1,49 @@ +.material-cookiebar { + display: block; + bottom: 15px; + box-shadow: rgb(102, 102, 102) 1px 1px 8px; + z-index: 999; + right: 15px; + width: 500px; + max-width: 100%; + background-color: #F4F4F4; + min-height: 100px; + position: fixed; + padding: 0; +} + + .material-cookiebar > .material-cookiebar-header { + font-size: 1.1em; + color: #FFF; + background-color: #2b73aa; + padding: 10px 5px; + } + + .material-cookiebar > .material-cookiebar-body { + margin: 0 5px 0 5px; + padding: 10px !important; + } + + .material-cookiebar > .material-cookiebar-button { + padding: 0 10px 10px 0; + text-align: right; + } + + .material-cookiebar > .material-cookiebar-button > a { + text-decoration: none; + display: inline-block; + padding: 6px 12px; + margin-bottom: 0; + border-radius: 0 !important; + background-color: #2b73aa; + color: #fff !important; + font-weight: normal; + border: 1px solid transparent; + } + + .material-cookiebar > .material-cookiebar-button > a:hover, + .material-cookiebar > .material-cookiebar-button > a:focus, + .material-cookiebar > .material-cookiebar-button > a:active { + background-color: #245f8c; + border-color: #1d4666; + } diff --git a/material-cookiebar.js b/material-cookiebar.js new file mode 100644 index 0000000..79ff380 --- /dev/null +++ b/material-cookiebar.js @@ -0,0 +1,56 @@ +var MaterialCookieBar = (function () { + function MaterialCookieBar() { + } + MaterialCookieBar.build = function (options) { + if (this.checkConsent()) { + return; + } + var elementId = Math.random().toString(36).slice(2); + var mainElement = (document.createElement('div')); + mainElement.classList.add("material-cookiebar"); + mainElement.id = elementId; + var headerElement = (document.createElement('div')); + headerElement.innerHTML = options.header; + headerElement.classList.add("material-cookiebar-header"); + var bodyElement = (document.createElement('div')); + bodyElement.innerHTML = options.message; + bodyElement.classList.add("material-cookiebar-body"); + var buttonElement = this.createButtonDiv(options.buttonText, elementId); + headerElement.classList.add("material-cookiebar-header"); + mainElement.append(headerElement); + mainElement.append(bodyElement); + mainElement.append(buttonElement); + window.document.body.append(mainElement); + }; + MaterialCookieBar.giveConsent = function () { + var date = new Date(); + date.setTime(date.getTime() + (5 * 365 * 24 * 60 * 60 * 1000)); + document.cookie = this.cookieKey + "=True; expires=" + date.toUTCString() + "; path=/"; + }; + MaterialCookieBar.checkConsent = function () { + var _this = this; + var cookieArray = document.cookie.split(';').map(function (c) { return c.trim(); }); + var result = cookieArray.filter(function (c) { return c.substring(0, _this.cookieKey.length) === _this.cookieKey; }).map(function (c) { return c.substring(_this.cookieKey.length + 1); }); + return (result.length > 0); + }; + MaterialCookieBar.createButtonDiv = function (buttonText, mainElementId) { + var _this = this; + var buttonElement = (document.createElement('div')); + buttonElement.classList.add("material-cookiebar-button"); + var buttonLink = (document.createElement('a')); + buttonLink.dataset.id = mainElementId; + buttonLink.href = "#"; + buttonLink.onclick = function (ev) { + _this.giveConsent(); + var srcElement = ev.srcElement; + var mainElement = window.document.getElementById(srcElement.dataset.id); + mainElement.remove(); + }; + buttonLink.innerHTML = buttonText; + buttonElement.append(buttonLink); + return buttonElement; + }; + MaterialCookieBar.cookieKey = "MaterialCookieConsent"; + return MaterialCookieBar; +}()); +//# sourceMappingURL=eas-cookiebar.js.map \ No newline at end of file diff --git a/material-cookiebar.js.map b/material-cookiebar.js.map new file mode 100644 index 0000000..e917a43 --- /dev/null +++ b/material-cookiebar.js.map @@ -0,0 +1 @@ +{"version":3,"file":"material-cookiebar.js","sourceRoot":"","sources":["material-cookiebar.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/material-cookiebar.ts b/material-cookiebar.ts new file mode 100644 index 0000000..7a0a801 --- /dev/null +++ b/material-cookiebar.ts @@ -0,0 +1,115 @@ +interface IMaterialCookieBarOptions { + header: string; + message: string; + buttonText: string; +} + +class MaterialCookieBar { + + public static cookieKey: string = "MaterialCookieConsent"; + + // #region build + + //////////////////////////////////////////////////////////////////////////////////////////////////// + /// Cookiepopup erstellen + /// A Beging, 29.05.2019. + /// Options for controlling the operation. + //////////////////////////////////////////////////////////////////////////////////////////////////// + public static build(options: IMaterialCookieBarOptions): void { + if (this.checkConsent()) { + return; + } + + let elementId = Math.random().toString(36).slice(2); + + let mainElement = (document.createElement('div')); + mainElement.classList.add("material-cookiebar"); + mainElement.id = elementId; + + let headerElement = (document.createElement('div')); + headerElement.innerHTML = options.header; + headerElement.classList.add("material-cookiebar-header"); + + let bodyElement = (document.createElement('div')); + bodyElement.innerHTML = options.message; + bodyElement.classList.add("material-cookiebar-body"); + + let buttonElement = this.createButtonDiv(options.buttonText, elementId); + headerElement.classList.add("material-cookiebar-header"); + + mainElement.append(headerElement); + mainElement.append(bodyElement); + mainElement.append(buttonElement); + + window.document.body.append(mainElement); + } + + // #endregion + + // #region giveConsent + + //////////////////////////////////////////////////////////////////////////////////////////////////// + /// Zustimmung zu Cookies geben + /// A Beging, 29.05.2019. + //////////////////////////////////////////////////////////////////////////////////////////////////// + public static giveConsent(): void { + const date = new Date(); + + // Set it expire in 5 years + date.setTime(date.getTime() + (5 * 365 * 24 * 60 * 60 * 1000)); + + // Set it + document.cookie = this.cookieKey + "=True; expires=" + date.toUTCString() + "; path=/"; + } + + // #endregion + + // #region private checkConsent + + //////////////////////////////////////////////////////////////////////////////////////////////////// + /// Prüfen, ob die Zustimmung bereits erteilt wurde + /// A Beging, 29.05.2019. + /// True if it succeeds, false if it fails. + //////////////////////////////////////////////////////////////////////////////////////////////////// + private static checkConsent(): boolean { + + let cookieArray = document.cookie.split(';').map(c => c.trim()); + let result = cookieArray.filter(c => { return c.substring(0, this.cookieKey.length) === this.cookieKey }).map(c => c.substring(this.cookieKey.length + 1)); + + return (result.length > 0); + } + + // #endregion + + // #region private createButtonDiv + + //////////////////////////////////////////////////////////////////////////////////////////////////// + /// Erstellen des OK Buttons + /// A Beging, 29.05.2019. + /// The button text. + /// The new button div. + //////////////////////////////////////////////////////////////////////////////////////////////////// + private static createButtonDiv(buttonText: string, mainElementId: string) { + let buttonElement = (document.createElement('div')); + buttonElement.classList.add("material-cookiebar-button"); + + let buttonLink = (document.createElement('a')); + buttonLink.dataset.id = mainElementId; + buttonLink.href = "#"; + buttonLink.onclick = ev => { + this.giveConsent(); + + let srcElement = ev.srcElement; + let mainElement = window.document.getElementById(srcElement.dataset.id); + mainElement.remove(); + }; + buttonLink.innerHTML = buttonText; + + buttonElement.append(buttonLink); + return buttonElement; + } + + // #endregion + + +} \ No newline at end of file