Jonas Havelka
9 months ago
2 changed files with 62 additions and 58 deletions
@ -0,0 +1,61 @@ |
|||||
|
{% if april == 2021 %} |
||||
|
<script type="text/javascript" charset="utf-8"> |
||||
|
function rotace(vektor, uhel_deg) { |
||||
|
var uhel = uhel_deg *(Math.PI / 180); |
||||
|
var x = vektor[0]; |
||||
|
var y = vektor[1]; |
||||
|
return [x*Math.cos(uhel) - y*Math.sin(uhel), x*Math.sin(uhel) + y*Math.cos(uhel)]; |
||||
|
} |
||||
|
|
||||
|
function rotace_a_posun(obj, uhel) { |
||||
|
var ow = obj.width(); |
||||
|
var oh = obj.height(); |
||||
|
|
||||
|
var rohy = [[0,0], [0,oh], [ow, 0], [ow, oh]]; |
||||
|
var minx = 0; |
||||
|
var miny = 0; |
||||
|
for (var roh of rohy) { |
||||
|
var otoceny = rotace(roh, uhel); |
||||
|
if (otoceny[0] < minx) { |
||||
|
minx = otoceny[0]; |
||||
|
} |
||||
|
if (otoceny[1] < miny) { |
||||
|
miny = otoceny[1]; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
miny *= -1; |
||||
|
minx *= -1; |
||||
|
|
||||
|
var transf_str = "translateX("+minx+"px) translateY("+miny+"px) rotate("+uhel+"deg)"; |
||||
|
obj.css('transform-origin', 'top left'); |
||||
|
obj.css('transform', transf_str); |
||||
|
} |
||||
|
|
||||
|
function randomUhel() { |
||||
|
return Math.floor(360*Math.random()); |
||||
|
} |
||||
|
|
||||
|
$('.container').css('margin', 0); |
||||
|
rotace_a_posun($('.container'), randomUhel()); |
||||
|
</script> |
||||
|
{% endif %} |
||||
|
|
||||
|
|
||||
|
|
||||
|
{% if april == 2023 %} |
||||
|
<script> |
||||
|
{# By https://stackoverflow.com/a/34559316 #} |
||||
|
function walkText(node) { |
||||
|
if (node.nodeType == 3) { |
||||
|
node.data = node.data.replace(/M&M/g, "M💘M"); |
||||
|
} |
||||
|
if (node.nodeType == 1 && node.nodeName != "SCRIPT") { |
||||
|
for (var i = 0; i < node.childNodes.length; i++) { |
||||
|
walkText(node.childNodes[i]); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
walkText(document.body); |
||||
|
</script> |
||||
|
{% endif %} |
Loading…
Reference in new issue