7 Commits

Author SHA1 Message Date
Sebastian Titz
1a018bfc27 läuft besser sieht aber immernoch nicht perfekt aus 2022-10-12 09:30:01 +02:00
Sebastian Titz
51741653f8 WIP: #5 feedback button auch für tables erreichbar machen 2022-10-11 10:25:58 +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
11 changed files with 1992 additions and 211 deletions

View File

@@ -7,6 +7,7 @@
border-top-left-radius: 15px;
border-bottom-left-radius: 15px;
margin-right: -130px;
z-index: 99999;
}
#flag-panel.open {
@@ -20,6 +21,7 @@
#flag-panel span {
margin-right: 10px;
margin-left: 5px;
float: left;
}
#flag-overlay {
@@ -32,24 +34,29 @@
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;
#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: 0 auto;
margin-top: 1vh;
}
#flag-overlay.closing {
transition: opacity 0.5s;
}
#flag-overlay.closing iframe {
#flag-iframe.closing {
transition: margin 1s ease, width 1s ease, height 1s ease;
width: 350px;
height: 170px;

42
flag.js
View File

@@ -14,24 +14,34 @@
var 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);
},3000);
},1000);
}
var openFlag = function(ev) {
var openFlag = function(ev, infos=false) {
flag = document.createElement('div');
document.body.style.overflowY = 'hidden';
flag.id = 'flag-overlay';
iframe = document.createElement('iframe');
iframe.src= '';
iframe.name = 'flag-iframe';
flag.appendChild(iframe);
iframe.id = 'flag-iframe';
document.body.appendChild(flag);
setTimeout(function() {
flag.addEventListener('click',function(){
closeFlag();
//console.log('close2');
});
},3000);
document.body.appendChild(iframe);
var form = document.createElement('form');
form.action = connector+"?style="+style;
@@ -49,6 +59,12 @@
if(window.location.href) {fields['u'] = window.location.href;}
if(navigator.userAgent) {fields['a'] = navigator.userAgent;}
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) {
var inp = document.createElement('input');
@@ -61,6 +77,7 @@
form.style = 'display:none';
document.body.appendChild(form);
form.submit();
form.remove();
}
var panel = document.createElement('div');
@@ -69,10 +86,24 @@
var tab = document.createElement('span');
tab.innerHTML = '⚑';
tab.addEventListener('mouseenter',function(ev) {
if(!panel.classList.contains('tapped')) {
if(!panel.classList.contains('opened')) {
panel.classList.add('open');
panel.classList.add('opened');
}
}else{
panel.classList.toggle('open');
}
}
});
//TODO open feedback btn with click
tab.addEventListener('click',function(ev) {
if(!panel.classList.contains('opened')) {
panel.classList.add('tapped');
panel.classList.add('open');
panel.classList.add('opened');
}else{
panel.classList.toggle('open');
}
});
var button = document.createElement('button');
@@ -83,6 +114,7 @@
window.addEventListener("message", (event) => {
//console.log(event);
if(event.data == 'close') {
//console.log('close1');
closeFlag();
}
});
@@ -92,7 +124,7 @@
for(var l=0;l<links.length;l++) {
//console.log(l,links[l]);
links[l].addEventListener('click',function(ev) {
openFlag(ev);
openFlag(ev,ev.target.dataset);
ev.preventDefault();
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:150px;border:1px solid #fff;border-top-left-radius:15px;border-bottom-left-radius:15px;margin-right:-130px;z-index:99999}#flag-panel.open{margin-right:0!important}#flag-panel.opened{transition:margin-right 1s}#flag-panel span{margin-right:10px;margin-left:5px;float:left}#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:0 auto;margin-top:1vh}#flag-overlay.closing{transition:opacity .5s}#flag-iframe.closing{transition:margin 1s ease,width 1s ease,height 1s ease;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={};if(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)",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("tapped")||(panel.classList.contains("opened")?panel.classList.toggle("open"):(panel.classList.add("open"),panel.classList.add("opened")))})),tab.addEventListener("click",(function(ev){panel.classList.contains("opened")?panel.classList.toggle("open"):(panel.classList.add("tapped"),panel.classList.add("open"),panel.classList.add("opened"))}));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

View File

@@ -22,18 +22,19 @@
"remove",
"overflowY",
"openFlag",
"infos",
"createElement",
"id",
"src",
"name",
"appendChild",
"addEventListener",
"form",
"action",
"target",
"method",
"screenshotTarget",
"fields",
"f",
"window",
"location",
"hostname",
@@ -45,6 +46,10 @@
"width",
"height",
"colorDepth",
"i",
"f",
"console",
"log",
"inp",
"type",
"value",
@@ -52,7 +57,6 @@
"panel",
"tab",
"innerHTML",
"addEventListener",
"contains",
"toggle",
"button",
@@ -64,6 +68,6 @@
"l",
"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"
}

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