27 Commits

Author SHA1 Message Date
electronicfreak
dd82088551 lazy img 2024-03-31 12:55:43 +02:00
electronicfreak
0798e94040 anpassung feedback 2024-02-21 21:53:25 +01:00
electronicfreak
33ec55e6f1 comment feedback minify 2024-02-21 21:15:02 +01:00
electronicfreak
deda3600c2 log css angepasst 2023-11-01 20:32:44 +01:00
electronicfreak
588347e71d copy auch für divs 2023-10-29 22:14:25 +01:00
troy
6f4c30fc7a jqury aus tablefilter ausgebaut 2023-09-03 11:27:12 +02:00
0ad2da71b2 Merge pull request 'mache flag btn größer für tablets' (#11) from feature/39_touch-flaag into master
Reviewed-on: #11
2023-06-10 22:38:35 +02:00
titz lapi
79dc248825 mache flag btn größer für tablets 2023-06-10 22:34:00 +02:00
troy
180b7ee04b admin textcolor in css heller 2022-12-19 13:19:19 +01:00
troy
ef31ee2cba admin in darkmode 2022-11-27 11:38:12 +01:00
troy
f62b83cb1a switch hoch schieben 2022-11-14 17:48:27 +01:00
0d3289a900 Merge pull request 'feature/frontlog' (#10) from feature/frontlog into master
Reviewed-on: #10
2022-11-08 18:39:06 +01:00
troy
5f60054c1f out animation 2022-11-08 18:36:15 +01:00
troy
1764bbaa24 in animation 2022-11-08 18:24:16 +01:00
Sebastian Titz
8e56887b7a push statt append 2022-11-08 15:45:36 +01:00
Sebastian Titz
2001ed947c frontlog css 2022-11-08 15:22:55 +01:00
troy
67e4e01708 frontlog, müsste so klappen, mit pipe usw 2022-11-04 21:55:15 +01:00
titz lapi
862d65c894 WIP: grundstruktur 2022-11-04 20:36:33 +01:00
troy
df5a05dfc5 flag css angepasst mehr platz für andere schriftarten 2022-10-29 12:23:38 +02:00
f9fa9974af Merge pull request 'closes #4 und etwas readme für flag.js' (#8) from feature/collect-infos into master
Reviewed-on: #8
2022-10-20 17:44:47 +02:00
troy
8575f417da closes #4 und etwas readme für flag.js 2022-10-20 17:45:31 +02:00
troy
8f8cfa4283 css uüdate für allwasy in foreground 2022-09-18 13:54:47 +02:00
troy
79cfaf0a95 no tabs 2022-07-22 23:17:46 +02:00
troy
43f2422b88 css 2022-07-21 15:15:20 +02:00
troy
bb501daeb1 flag center und abbruch wenn man auf overlay klick 2022-07-21 14:51:04 +02:00
titz lapi
bbee4c0057 dataset wird mit übertragen 2022-07-21 00:15:30 +02:00
troy
663456cbcd Merge remote-tracking branch 'origin/feature/logit' into master 2022-07-15 12:41:07 +02:00
27 changed files with 2202 additions and 224 deletions

158
README.md
View File

@@ -120,88 +120,88 @@ git submodule add https://git.seemsleg.it/pub/cssjs-func-lib cssjs
<script src="/cssjs/ckeditor.js"></script> <script src="/cssjs/ckeditor.js"></script>
<script>ClassicEditor <script>ClassicEditor
.create( document.querySelector( '.editor' ), { .create( document.querySelector( '.editor' ), {
toolbar: { toolbar: {
items: [ items: [
'heading', 'heading',
'|', '|',
'bold', 'bold',
'italic', 'italic',
'underline', 'underline',
'link', 'link',
'removeFormat', 'removeFormat',
'fontSize', 'fontSize',
'fontFamily', 'fontFamily',
'|', '|',
'bulletedList', 'bulletedList',
'numberedList', 'numberedList',
'todoList', 'todoList',
'|', '|',
'indent', 'indent',
'outdent', 'outdent',
'alignment', 'alignment',
'horizontalLine', 'horizontalLine',
'|', '|',
'imageUpload', 'imageUpload',
'imageInsert', 'imageInsert',
'blockQuote', 'blockQuote',
'insertTable', 'insertTable',
'mediaEmbed', 'mediaEmbed',
'undo', 'undo',
'redo', 'redo',
'|', '|',
'codeBlock', 'codeBlock',
'exportPdf', 'exportPdf',
'htmlEmbed', 'htmlEmbed',
'exportWord', 'exportWord',
'highlight' 'highlight'
] ]
}, },
language: 'de', language: 'de',
image: { image: {
toolbar: [ toolbar: [
'imageTextAlternative', 'imageTextAlternative',
'|', '|',
'imageStyle:full', 'imageStyle:full',
'imageStyle:side', 'imageStyle:side',
'imageStyle:alignLeft', 'imageStyle:alignCenter', 'imageStyle:alignRight', 'imageStyle:alignLeft', 'imageStyle:alignCenter', 'imageStyle:alignRight',
'|', '|',
'imageResize', 'imageResize',
] ]
}, },
table: { table: {
contentToolbar: [ contentToolbar: [
'tableColumn', 'tableColumn',
'tableRow', 'tableRow',
'mergeTableCells' 'mergeTableCells'
] ]
}, },
licenseKey: '', licenseKey: '',
} ) } )
.then( editor => { .then( editor => {
window.editor = editor; window.editor = editor;
} ) } )
.catch( error => { .catch( error => {
console.error( 'Oops, something went wrong!' ); console.error( 'Oops, something went wrong!' );
console.error( 'Please, report the following error on https://github.com/ckeditor/ckeditor5/issues with the build id and the error stack trace:' ); console.error( 'Please, report the following error on https://github.com/ckeditor/ckeditor5/issues with the build id and the error stack trace:' );
console.warn( 'Build id: p276tlu14l98-tj7z79o4qxsd' ); console.warn( 'Build id: p276tlu14l98-tj7z79o4qxsd' );
console.error( error ); console.error( error );
} ); } );
</script> </script>
``` ```
Heading Heading
``` ```
... ...
heading: { heading: {
options: [ options: [
{ model: 'paragraph', title: 'Paragraph', class: 'ck-heading_paragraph' }, { model: 'paragraph', title: 'Paragraph', class: 'ck-heading_paragraph' },
{ model: 'heading1', view: 'h1', title: 'Heading 1', class: 'ck-heading_heading1' }, { model: 'heading1', view: 'h1', title: 'Heading 1', class: 'ck-heading_heading1' },
{ model: 'heading2', view: 'h2', title: 'Heading 2', class: 'ck-heading_heading2' } { model: 'heading2', view: 'h2', title: 'Heading 2', class: 'ck-heading_heading2' }
] ]
} }
... ...
``` ```
@@ -305,3 +305,17 @@ benötigt "Fader"
<!-- End logit --> <!-- End logit -->
``` ```
nicht vergessen bei setSiteId die richtige id anzugeben nicht vergessen bei setSiteId die richtige id anzugeben
## Flag
einfach folgende zeilen in den footer
```
<script src="/cssjs/flag.min.js"></script>
<link rel="stylesheet" href="/cssjs/flag.min.css">
```
um zusätzliche infos zu liefern muss ein
```
data-flaginfo="<key>:<val>"
```
in irgend ein html tag gepackt werden, ,das wird dann vom script abgeholt wenn es gebraucht wird.

View File

@@ -1,3 +1,8 @@
body {
background-color: #000 !important;
color: #fff;
}
textarea { textarea {
display: block; display: block;
width: 100%; width: 100%;
@@ -21,7 +26,6 @@ form .label {
margin: 0 10px; margin: 0 10px;
} }
.hover { .hover {
border: 1px solid white; border: 1px solid white;
} }

2
admin.min.css vendored
View File

@@ -1 +1 @@
textarea{display:block;width:100%}form .label{float:left;width:200px}.admin_navi{display:block;width:100%;border-bottom:1px solid #000;overflow:overlay}.admin_navi li{display:block;float:left;margin:0 10px}.hover{border:1px solid #fff}.hover:hover{border:1px solid #000} body{background-color:#000!important;color:#fff}textarea{display:block;width:100%}form .label{float:left;width:200px}.admin_navi{display:block;width:100%;border-bottom:1px solid #000;overflow:overlay}.admin_navi li{display:block;float:left;margin:0 10px}.hover{border:1px solid #fff}.hover:hover{border:1px solid #000}

View File

@@ -9,6 +9,15 @@ function copyToClipboard(id) {
document.execCommand("copy"); document.execCommand("copy");
} }
function copyDivToClipboard(id) {
let range = document.createRange();
range.selectNode(document.getElementById(id));
window.getSelection().removeAllRanges();
window.getSelection().addRange(range);
document.execCommand("copy");
window.getSelection().removeAllRanges();
}
function copiedToClipboard(id) { function copiedToClipboard(id) {
var tooltip = document.getElementById(id); var tooltip = document.getElementById(id);
tooltip.innerHTML = "Kopiert"; tooltip.innerHTML = "Kopiert";

View File

@@ -1 +1 @@
.copy-to-clipboard{position:relative;display:inline-block}.copy-to-clipboard .tooltiptext{visibility:hidden;width:140px;background-color:#555;color:#fff;text-align:center;border-radius:6px;padding:5px;position:absolute;z-index:1;bottom:150%;left:50%;margin-left:-75px}.copy-to-clipboard .tooltiptext::after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#555 transparent transparent transparent}.copy-to-clipboard:hover .tooltiptext{visibility:visible;opacity:1} .copy-to-clipboard{position:relative;display:inline-block}.copy-to-clipboard .tooltiptext{visibility:hidden;width:140px;background-color:#555;color:#fff;text-align:center;border-radius:6px;padding:5px;position:absolute;z-index:1;bottom:150%;left:50%;margin-left:-75px}.copy-to-clipboard .tooltiptext::after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#555 transparent transparent}.copy-to-clipboard:hover .tooltiptext{visibility:visible;opacity:1}

View File

@@ -1,2 +1 @@
function copyToClipboard(id){var copyText=document.getElementById(id);copyText.select(),copyText.setSelectionRange(0,99999),document.execCommand("copy")}function copiedToClipboard(id){var tooltip;document.getElementById(id).innerHTML="Kopiert"}function resetClipboard(id){var tooltip;document.getElementById(id).innerHTML="Kopieren"} function copyToClipboard(e){var n=document.getElementById(e);n.select(),n.setSelectionRange(0,99999),document.execCommand("copy")}function copyDivToClipboard(e){let n=document.createRange();n.selectNode(document.getElementById(e)),window.getSelection().removeAllRanges(),window.getSelection().addRange(n),document.execCommand("copy"),window.getSelection().removeAllRanges()}function copiedToClipboard(e){document.getElementById(e).innerHTML="Kopiert"}function resetClipboard(e){document.getElementById(e).innerHTML="Kopieren"}
//# sourceMappingURL=copy-to-clipboard.min.js.map

View File

@@ -22,6 +22,34 @@ function ajaxFeedback(e,url,css) {
return false; return false;
} }
function ajaxCommentFeedback(e,url,css) {
let comment = prompt("Was funktioniert nicht?");
if(comment) {
url = url + "&comment="+encodeURIComponent(comment);
}
$.ajax({
url: url,
success: function(res) {
if(res =='success') {
successMarker(e,css);
return;
}else{
if(res =='warn') {
warnMarker(e,css);
return;
}else{
errorMarker(e,css);
return;
}
}
},
error: function (res,err) {
errorMarker(e,css);
}
});
return false;
}
function formFeedback(e,f,url,css) { function formFeedback(e,f,url,css) {
var formData = {} var formData = {}
$(f).each(function(i, obj) { $(f).each(function(i, obj) {

3
feedback.min.js vendored

File diff suppressed because one or more lines are too long

View File

@@ -2,11 +2,21 @@
position: fixed; position: fixed;
bottom: 0px; bottom: 0px;
right: 0px; right: 0px;
width: 150px; width: 170px;
border: 1px solid #fff; border: 1px solid #fff;
border-top-left-radius: 15px; border-top-left-radius: 15px;
border-bottom-left-radius: 15px; border-bottom-left-radius: 15px;
margin-right: -130px; margin-right: -145px;
z-index: 99999;
}
@media (max-width:1081px) {
#flag-panel {
border: 10px solid #fff;
border-top-left-radius: 23px;
border-bottom-left-radius: 23px;
margin-right: -135px;
}
} }
#flag-panel.open { #flag-panel.open {
@@ -32,24 +42,29 @@
z-index: 9999; z-index: 9999;
} }
#flag-overlay iframe { #flag-iframe {
width: 80%; position: fixed;
min-width: 350px; top: 0;
margin: 0 auto; left: 50%;
margin-top: 1vh; transform: translateX(-50%);
display: block; z-index: 10000;
background-color: #fff; background-color: #000;
border: 3px solid #000; border: 3px solid #fff;
border-radius: 1em; border-radius: 1em;
overflow-y: scroll; overflow-y: scroll;
height: 97vh; height: 97vh;
min-width: 350px;
width: 80%;
display: block;
margin: 0 auto;
margin-top: 1vh;
} }
#flag-overlay.closing { #flag-overlay.closing {
transition: opacity 0.5s; transition: opacity 0.5s;
} }
#flag-overlay.closing iframe { #flag-iframe.closing {
transition: margin 1s ease, width 1s ease, height 1s ease; transition: margin 1s ease, width 1s ease, height 1s ease;
width: 350px; width: 350px;
height: 170px; height: 170px;

35
flag.js
View File

@@ -14,24 +14,34 @@
var closeFlag = function(ev) { var closeFlag = function(ev) {
flag.classList.add('closing'); flag.classList.add('closing');
iframe.classList.add('closing');
setTimeout(function() { setTimeout(function() {
flag.style.opacity = 0; flag.style.opacity = 0;
iframe.style.opacity = 0;
setTimeout(function() { setTimeout(function() {
flag.remove(); flag.remove();
iframe.remove();
document.body.style.overflowY = 'auto'; document.body.style.overflowY = 'auto';
},500); },500);
},3000); },1000);
} }
var openFlag = function(ev) { var openFlag = function(ev, infos=false) {
flag = document.createElement('div'); flag = document.createElement('div');
document.body.style.overflowY = 'hidden'; document.body.style.overflowY = 'hidden';
flag.id = 'flag-overlay'; flag.id = 'flag-overlay';
iframe = document.createElement('iframe'); iframe = document.createElement('iframe');
iframe.src= ''; iframe.src= '';
iframe.name = 'flag-iframe'; iframe.name = 'flag-iframe';
flag.appendChild(iframe); iframe.id = 'flag-iframe';
document.body.appendChild(flag); document.body.appendChild(flag);
setTimeout(function() {
flag.addEventListener('click',function(){
closeFlag();
//console.log('close2');
});
},3000);
document.body.appendChild(iframe);
var form = document.createElement('form'); var form = document.createElement('form');
form.action = connector+"?style="+style; form.action = connector+"?style="+style;
@@ -45,10 +55,25 @@
});*/ });*/
var fields = {}; var fields = {};
fields['s'] = window.location.hostname; fields['s'] = window.location.hostname;
var datas = document.querySelectorAll('[data-flaginfo]');
if(datas) {
for(var i=0; i<datas.length;i++) {
console.log(datas[i].dataset['flaginfo']);
var tmp = datas[i].dataset['flaginfo'];
tmp = tmp.split(':',2);
fields[tmp[0]] = tmp[1];
}
}
if(document.referrer) {fields['r'] = document.referrer;} if(document.referrer) {fields['r'] = document.referrer;}
if(window.location.href) {fields['u'] = window.location.href;} if(window.location.href) {fields['u'] = window.location.href;}
if(navigator.userAgent) {fields['a'] = navigator.userAgent;} if(navigator.userAgent) {fields['a'] = navigator.userAgent;}
fields['d'] = ''+window.screen.width+'x'+window.screen.height+' ('+window.screen.colorDepth+'bit)'; fields['d'] = ''+window.screen.width+'x'+window.screen.height+' ('+window.screen.colorDepth+'bit)';
if(infos && typeof(infos) == typeof({})) {
for(var i in infos) {
fields[i] = infos[i];
}
}
console.log('Fields',fields);
for(var f in fields) { for(var f in fields) {
var inp = document.createElement('input'); var inp = document.createElement('input');
@@ -61,6 +86,7 @@
form.style = 'display:none'; form.style = 'display:none';
document.body.appendChild(form); document.body.appendChild(form);
form.submit(); form.submit();
form.remove();
} }
var panel = document.createElement('div'); var panel = document.createElement('div');
@@ -83,6 +109,7 @@
window.addEventListener("message", (event) => { window.addEventListener("message", (event) => {
//console.log(event); //console.log(event);
if(event.data == 'close') { if(event.data == 'close') {
//console.log('close1');
closeFlag(); closeFlag();
} }
}); });
@@ -92,7 +119,7 @@
for(var l=0;l<links.length;l++) { for(var l=0;l<links.length;l++) {
//console.log(l,links[l]); //console.log(l,links[l]);
links[l].addEventListener('click',function(ev) { links[l].addEventListener('click',function(ev) {
openFlag(ev); openFlag(ev,ev.target.dataset);
ev.preventDefault(); ev.preventDefault();
return false; return false;
}); });

2
flag.min.css vendored
View File

@@ -1 +1 @@
#flag-panel{position:fixed;bottom:0;right:0;width:150px;border:1px solid #fff;border-top-left-radius:15px;border-bottom-left-radius:15px;margin-right:-130px}#flag-panel.open{margin-right:0!important}#flag-panel.opened{transition:margin-right 1s}#flag-panel span{margin-right:10px;margin-left:5px}#flag-overlay{position:fixed;width:100%;height:100vh;top:0;left:0;background-color:rgba(0,0,0,.5);z-index:9999}#flag-overlay iframe{width:80%;min-width:350px;margin:0 auto;margin-top:1vh;display:block;background-color:#fff;border:3px solid #000;border-radius:1em;overflow-y:scroll;height:97vh}#flag-overlay.closing{transition:opacity .5s}#flag-overlay.closing iframe{transition:margin 1s ease,width 1s ease,height 1s ease;width:350px;height:170px;margin-top:calc(50vh - 50px);overflow:hidden} #flag-panel{position:fixed;bottom:0;right:0;width:170px;border:1px solid #fff;border-top-left-radius:15px;border-bottom-left-radius:15px;margin-right:-145px;z-index:99999}@media (max-width:1081px){#flag-panel{border:10px solid #fff;border-top-left-radius:23px;border-bottom-left-radius:23px;margin-right:-135px}}#flag-panel.open{margin-right:0!important}#flag-panel.opened{transition:margin-right 1s}#flag-panel span{margin-right:10px;margin-left:5px}#flag-overlay{position:fixed;width:100%;height:100vh;top:0;left:0;background-color:rgba(0,0,0,.5);z-index:9999}#flag-iframe{position:fixed;top:0;left:50%;transform:translateX(-50%);z-index:10000;background-color:#000;border:3px solid #fff;border-radius:1em;overflow-y:scroll;height:97vh;min-width:350px;width:80%;display:block;margin:1vh auto 0}#flag-overlay.closing{transition:opacity .5s}#flag-iframe.closing{transition:margin 1s,width 1s,height 1s;width:350px;height:170px;margin-top:calc(50vh - 50px);overflow:hidden}

2
flag.min.js vendored
View File

@@ -1,2 +1,2 @@
!function(connector){"use strict";var style="default",iframe,flag;document.body.dataset.feedbackstyle&&(style=document.body.dataset.feedbackstyle);var col="light",closeFlag=function(ev){flag.classList.add("closing"),setTimeout((function(){flag.style.opacity=0,setTimeout((function(){flag.remove(),document.body.style.overflowY="auto"}),500)}),3e3)},openFlag=function(ev){flag=document.createElement("div"),document.body.style.overflowY="hidden",flag.id="flag-overlay",(iframe=document.createElement("iframe")).src="",iframe.name="flag-iframe",flag.appendChild(iframe),document.body.appendChild(flag);var form=document.createElement("form");form.action=connector+"?style="+style,form.target="flag-iframe",form.method="POST";const screenshotTarget=document.body;var fields={};for(var f in fields.s=window.location.hostname,document.referrer&&(fields.r=document.referrer),window.location.href&&(fields.u=window.location.href),navigator.userAgent&&(fields.a=navigator.userAgent),fields.d=window.screen.width+"x"+window.screen.height+" ("+window.screen.colorDepth+"bit)",fields){var inp=document.createElement("input");inp.type="hidden",inp.name=f,inp.value=fields[f],form.appendChild(inp)}form.style="display:none",document.body.appendChild(form),form.submit()},panel=document.createElement("div");panel.id="flag-panel";var tab=document.createElement("span");tab.innerHTML="&#9873;",tab.addEventListener("mouseenter",(function(ev){panel.classList.contains("opened")||panel.classList.add("opened"),panel.classList.toggle("open")}));var button=document.createElement("button");button.innerHTML="Problem melden",button.addEventListener("click",openFlag),window.addEventListener("message",event=>{"close"==event.data&&closeFlag()});var links=document.getElementsByClassName("flag-link");if(links.length>0)for(var l=0;l<links.length;l++)links[l].addEventListener("click",(function(ev){return openFlag(ev),ev.preventDefault(),!1}));panel.appendChild(tab),panel.appendChild(button),document.body.appendChild(panel)}("https://troy-grunt.de/feedback"); !function(connector){"use strict";var style="default",iframe,flag;document.body.dataset.feedbackstyle&&(style=document.body.dataset.feedbackstyle);var col="light",closeFlag=function(ev){flag.classList.add("closing"),iframe.classList.add("closing"),setTimeout((function(){flag.style.opacity=0,iframe.style.opacity=0,setTimeout((function(){flag.remove(),iframe.remove(),document.body.style.overflowY="auto"}),500)}),1e3)},openFlag=function(ev,infos=!1){flag=document.createElement("div"),document.body.style.overflowY="hidden",flag.id="flag-overlay",(iframe=document.createElement("iframe")).src="",iframe.name="flag-iframe",iframe.id="flag-iframe",document.body.appendChild(flag),setTimeout((function(){flag.addEventListener("click",(function(){closeFlag()}))}),3e3),document.body.appendChild(iframe);var form=document.createElement("form");form.action=connector+"?style="+style,form.target="flag-iframe",form.method="POST";const screenshotTarget=document.body;var fields={};fields.s=window.location.hostname;var datas=document.querySelectorAll("[data-flaginfo]");if(datas)for(var i=0;i<datas.length;i++){console.log(datas[i].dataset.flaginfo);var tmp=datas[i].dataset.flaginfo;fields[(tmp=tmp.split(":",2))[0]]=tmp[1]}if(document.referrer&&(fields.r=document.referrer),window.location.href&&(fields.u=window.location.href),navigator.userAgent&&(fields.a=navigator.userAgent),fields.d=window.screen.width+"x"+window.screen.height+" ("+window.screen.colorDepth+"bit)",infos&&typeof infos==typeof{})for(var i in infos)fields[i]=infos[i];for(var f in console.log("Fields",fields),fields){var inp=document.createElement("input");inp.type="hidden",inp.name=f,inp.value=fields[f],form.appendChild(inp)}form.style="display:none",document.body.appendChild(form),form.submit(),form.remove()},panel=document.createElement("div");panel.id="flag-panel";var tab=document.createElement("span");tab.innerHTML="&#9873;",tab.addEventListener("mouseenter",(function(ev){panel.classList.contains("opened")||panel.classList.add("opened"),panel.classList.toggle("open")}));var button=document.createElement("button");button.innerHTML="Problem melden",button.addEventListener("click",openFlag),window.addEventListener("message",event=>{"close"==event.data&&closeFlag()});var links=document.getElementsByClassName("flag-link");if(links.length>0)for(var l=0;l<links.length;l++)links[l].addEventListener("click",(function(ev){return openFlag(ev,ev.target.dataset),ev.preventDefault(),!1}));panel.appendChild(tab),panel.appendChild(button),document.body.appendChild(panel)}("https://troy-grunt.de/feedback");
//# sourceMappingURL=flag.min.js.map //# sourceMappingURL=flag.min.js.map

View File

@@ -22,21 +22,30 @@
"remove", "remove",
"overflowY", "overflowY",
"openFlag", "openFlag",
"infos",
"createElement", "createElement",
"id", "id",
"src", "src",
"name", "name",
"appendChild", "appendChild",
"addEventListener",
"form", "form",
"action", "action",
"target", "target",
"method", "method",
"screenshotTarget", "screenshotTarget",
"fields", "fields",
"f",
"window", "window",
"location", "location",
"hostname", "hostname",
"datas",
"querySelectorAll",
"i",
"length",
"console",
"log",
"tmp",
"split",
"referrer", "referrer",
"href", "href",
"navigator", "navigator",
@@ -45,6 +54,7 @@
"width", "width",
"height", "height",
"colorDepth", "colorDepth",
"f",
"inp", "inp",
"type", "type",
"value", "value",
@@ -52,7 +62,6 @@
"panel", "panel",
"tab", "tab",
"innerHTML", "innerHTML",
"addEventListener",
"contains", "contains",
"toggle", "toggle",
"button", "button",
@@ -60,10 +69,9 @@
"data", "data",
"links", "links",
"getElementsByClassName", "getElementsByClassName",
"length",
"l", "l",
"preventDefault" "preventDefault"
], ],
"mappings": "CAAA,SAAUA,WACR,aAEA,IAAIC,MAAQ,UAKRC,OACAC,KALDC,SAASC,KAAKC,QAAQC,gBACvBN,MAAQG,SAASC,KAAKC,QAAQC,eAKhC,IAAIC,IAAM,QAINC,UAAY,SAASC,IACvBP,KAAKQ,UAAUC,IAAI,WACnBC,YAAW,WACTV,KAAKF,MAAMa,QAAU,EACrBD,YAAW,WACTV,KAAKY,SACLX,SAASC,KAAKJ,MAAMe,UAAY,SAChC,OACF,MAGAC,SAAW,SAASP,IACtBP,KAAOC,SAASc,cAAc,OAC9Bd,SAASC,KAAKJ,MAAMe,UAAY,SAChCb,KAAKgB,GAAK,gBACVjB,OAASE,SAASc,cAAc,WACzBE,IAAK,GACZlB,OAAOmB,KAAO,cACdlB,KAAKmB,YAAYpB,QACjBE,SAASC,KAAKiB,YAAYnB,MAE1B,IAAIoB,KAAOnB,SAASc,cAAc,QAClCK,KAAKC,OAASxB,UAAU,UAAUC,MAClCsB,KAAKE,OAAS,cACdF,KAAKG,OAAS,OACd,MAAMC,iBAAmBvB,SAASC,KAMlC,IAAIuB,OAAS,GAOb,IAAI,IAAIC,KANRD,OAAU,EAAIE,OAAOC,SAASC,SAC3B5B,SAAS6B,WAAWL,OAAU,EAAIxB,SAAS6B,UAC3CH,OAAOC,SAASG,OAAON,OAAU,EAAIE,OAAOC,SAASG,MACrDC,UAAUC,YAAYR,OAAU,EAAIO,UAAUC,WACjDR,OAAU,EAAOE,OAAOO,OAAOC,MAAM,IAAIR,OAAOO,OAAOE,OAAO,KAAKT,OAAOO,OAAOG,WAAW,OAE/EZ,OAAQ,CACnB,IAAIa,IAAMrC,SAASc,cAAc,SACjCuB,IAAIC,KAAO,SACXD,IAAIpB,KAAOQ,EACXY,IAAIE,MAAQf,OAAOC,GACnBN,KAAKD,YAAYmB,KAGnBlB,KAAKtB,MAAQ,eACbG,SAASC,KAAKiB,YAAYC,MAC1BA,KAAKqB,UAGHC,MAAQzC,SAASc,cAAc,OACnC2B,MAAM1B,GAAK,aAEX,IAAI2B,IAAM1C,SAASc,cAAc,QACjC4B,IAAIC,UAAY,UAChBD,IAAIE,iBAAiB,cAAa,SAAStC,IACrCmC,MAAMlC,UAAUsC,SAAS,WAC3BJ,MAAMlC,UAAUC,IAAI,UAEtBiC,MAAMlC,UAAUuC,OAAO,WAGzB,IAAIC,OAAS/C,SAASc,cAAc,UAEpCiC,OAAOJ,UAAY,iBACnBI,OAAOH,iBAAiB,QAAQ/B,UAEhCa,OAAOkB,iBAAiB,UAAYI,QAEjB,SAAdA,MAAMC,MACP5C,cAIJ,IAAI6C,MAAQlD,SAASmD,uBAAuB,aAC5C,GAAGD,MAAME,OAAS,EAChB,IAAI,IAAIC,EAAE,EAAEA,EAAEH,MAAME,OAAOC,IAEzBH,MAAMG,GAAGT,iBAAiB,SAAQ,SAAStC,IAGzC,OAFAO,SAASP,IACTA,GAAGgD,kBACI,KAKbb,MAAMvB,YAAYwB,KAClBD,MAAMvB,YAAY6B,QAElB/C,SAASC,KAAKiB,YAAYuB,OAxG5B,CAyGG", "mappings": "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",
"file": "flag.js" "file": "flag.js"
} }

47
frontlog.css Normal file
View File

@@ -0,0 +1,47 @@
frontlog {
position: fixed;
min-width: 200px;
max-width: 300px;
bottom: 0;
right: 0.5em;
}
flogelem {
display:block;
border-width: 1px;
border-style: solid;
border-radius: 8px;
overflow: hidden;
max-height: 0;
margin-bottom: 0;
padding: 0;
opacity: 0;
position: relative;
bottom: 0;
-webkit-transition: max-height 3s, margin-bottom 3s, padding 3s,opacity 3s, bottom 3s;
-moz-transition: max-height 3s, margin-bottom 3s, padding 3s,opacity 3s, bottom 3s;
transition: max-height 3s, margin-bottom 3s, padding 3s,opacity 3s, bottom 3s;
}
.flshow {
max-height: 200px!important;
margin-bottom: 1em;
padding: 4px;
opacity: 1;
}
.flvanish {
position: relative;
bottom: 3em;
max-height: 0 !important;
opacity: 0 !important;
}
fltitle {
display: block;
font-size: 120%;
}
flogelem img {
float: left;
width: 25px;
}

68
frontlog.js Normal file
View File

@@ -0,0 +1,68 @@
let frontlogList = [];
let frontlogMaxEl = document.body.dataset['frontlog']||3;
let frontlog = document.createElement('frontlog');
document.body.appendChild(frontlog);
let frontlogVanish = function(elem) {
elem.classList.add('flvanish');
setTimeout(function() {
elem.remove();
let elems = document.getElementsByTagName('flogelem');
if(elems.length < frontlogMaxEl && frontlogList.length) {
let p = frontlogList.shift();
frontlogPipe(p.title,p.icon,p.msg,p.col,p.time);
}
},3100);
}
let frontlogAdd = function(title,icon,msg,col,time) {
let elems = document.getElementsByTagName('flogelem');
if(elems.length < frontlogMaxEl) {
frontlogPipe(title,icon,msg,col,time);
}else{
let pElem = {"title":title,"icon":icon,"msg":msg,"col":col,"time":time};
frontlogList.push(pElem);
}
}
let frontlogPipe = function(title,icon,msg,col, time) {
let elem = document.createElement('flogelem');
{
let elemid = 'fl_';
{
let ch = 'abcdefghijklmnopqrstuvwxyz0123456789';
let chl = ch.length;
for ( let i = 0; i < 16; i++ ) {
elemid += ch.charAt(Math.floor(Math.random() * chl));
}
}
elem.id = elemid;
let flicon = document.createElement('img');
flicon.src = icon;
elem.appendChild(flicon);
let fltitle = document.createElement('fltitle');
fltitle.innerText = title;
elem.appendChild(fltitle);
let flmsg = document.createElement('flmsg');
flmsg.innerText = msg;
elem.appendChild(flmsg);
}
elem.style = 'border-color: '+col+';';
elem.addEventListener('click',function(ev){
let tg = ev.target;
if(tg.tagName.toLowerCase() != 'flogelem') {
tg = ev.target.parentNode;
}
frontlogVanish(tg);
});
setTimeout(function(){
frontlogVanish(elem);
},time*1000)
frontlog.appendChild(elem);
setTimeout(function(){
elem.classList.add('flshow');
},10);
}

View File

@@ -701,7 +701,7 @@
(next === NU || ([OP, HY].indexOf(next) !== -1 && classTypes[afterIndex + 1] === NU))) || (next === NU || ([OP, HY].indexOf(next) !== -1 && classTypes[afterIndex + 1] === NU))) ||
// ( OP | HY ) × NU // ( OP | HY ) × NU
([OP, HY].indexOf(current) !== -1 && next === NU) || ([OP, HY].indexOf(current) !== -1 && next === NU) ||
// NU × (NU | SY | IS) // NU × (NU | SY | IS)
(current === NU && [NU, SY, IS].indexOf(next) !== -1)) { (current === NU && [NU, SY, IS].indexOf(next) !== -1)) {
return BREAK_NOT_ALLOWED$1; return BREAK_NOT_ALLOWED$1;
} }

21
html2canvas.min.js vendored Normal file

File diff suppressed because one or more lines are too long

1717
html2canvas.min.js.map Normal file

File diff suppressed because one or more lines are too long

8
lazy-img.css Normal file
View File

@@ -0,0 +1,8 @@
img[loading='lazy'] {
opacity: 0;
transition: opacity 0.5s ease !important;
}
img.loaded {
opacity: 1;
}

14
lazy-img.js Normal file
View File

@@ -0,0 +1,14 @@
document.addEventListener("DOMContentLoaded", function() {
/*var cssLink = document.createElement("link");
cssLink.rel = "stylesheet";
cssLink.href = "/cssjs/lazy-img.css";
document.head.appendChild(cssLink);*/
var images = document.querySelectorAll('img[loading="lazy"]');
images.forEach(function(image) {
image.onload = function() {
image.classList.add('loaded');
};
});
});

1
lazy-img.min.js vendored Normal file
View File

@@ -0,0 +1 @@
document.addEventListener("DOMContentLoaded",function(){document.querySelectorAll('img[loading="lazy"]').forEach(function(n){n.onload=function(){n.classList.add("loaded")}})});

View File

@@ -1,8 +1,8 @@
.parallax{ .parallax{
height: 600px; height: 600px;
background-repeat: no-repeat; background-repeat: no-repeat;
background-attachment: fixed; background-attachment: fixed;
background-size: cover; background-size: cover;
background-position: 100% auto; background-position: 100% auto;
position:relative; position:relative;
} }

View File

@@ -12,7 +12,7 @@ input.switch[type="checkbox"] + label {
float: left; float: left;
margin-right: 5px; margin-right: 5px;
transition: background-color 0.5s linear; transition: background-color 0.5s linear;
margin-top: 15px; margin-bottom: 15px;
} }
input.switch[type="checkbox"] + label:hover { input.switch[type="checkbox"] + label:hover {
cursor: pointer; cursor: pointer;

2
switch.min.css vendored
View File

@@ -1 +1 @@
input.switch[type=checkbox]{display:none}input.switch[type=checkbox]+label{width:60px;height:30px;border-radius:30px;border:2px solid #ddd;background-color:#eee;display:inline-block;content:"";float:left;margin-right:5px;transition:background-color .5s linear;margin-top:15px}input.switch[type=checkbox]+label:hover{cursor:pointer}input.switch[type=checkbox]+label::before{width:30px;height:30px;border-radius:30px;background-color:#fff;display:block;content:"";float:left;margin-right:5px;transition:margin .1s linear;box-shadow:0 0 5px #aaa}input.switch[type=checkbox]:checked+label{background-color:#2b8718}input.switch[type=checkbox]:checked+label::before{margin:0 0 0 30px} input.switch[type=checkbox]{display:none}input.switch[type=checkbox]+label{width:60px;height:30px;border-radius:30px;border:2px solid #ddd;background-color:#eee;display:inline-block;content:"";float:left;margin-right:5px;transition:background-color .5s linear;margin-bottom:15px}input.switch[type=checkbox]+label:hover{cursor:pointer}input.switch[type=checkbox]+label::before{width:30px;height:30px;border-radius:30px;background-color:#fff;display:block;content:"";float:left;margin-right:5px;transition:margin .1s linear;box-shadow:0 0 5px #aaa}input.switch[type=checkbox]:checked+label{background-color:#2b8718}input.switch[type=checkbox]:checked+label::before{margin:0 0 0 30px}

View File

@@ -3,7 +3,7 @@ function myFilter() {
input = document.getElementById("suchstr"); input = document.getElementById("suchstr");
filter = input.value.toUpperCase(); filter = input.value.toUpperCase();
li = jQuery("#suchlist .row"); li = document.querySelectorAll("#suchlist .row");
for (i = 0; i < li.length; i++) { for (i = 0; i < li.length; i++) {
txtValue = li[i].textContent || li[i].innerText; txtValue = li[i].textContent || li[i].innerText;
if (txtValue.toUpperCase().indexOf(filter) > -1) { if (txtValue.toUpperCase().indexOf(filter) > -1) {

3
tablefilter.min.js vendored
View File

@@ -1,2 +1 @@
function myFilter(){var input,filter,ul,li,a,i,txtValue;for(filter=(input=document.getElementById("suchstr")).value.toUpperCase(),li=jQuery("#suchlist .row"),i=0;i<li.length;i++)(txtValue=li[i].textContent||li[i].innerText).toUpperCase().indexOf(filter)>-1?li[i].style.display="":li[i].style.display="none"} function myFilter(){var e,t,l,n,r;for(n=0,t=(e=document.getElementById("suchstr")).value.toUpperCase(),l=document.querySelectorAll("#suchlist .row");n<l.length;n++)(r=l[n].textContent||l[n].innerText).toUpperCase().indexOf(t)>-1?l[n].style.display="":l[n].style.display="none"}
//# sourceMappingURL=tablefilter.min.js.map