-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
129 lines (116 loc) · 6.94 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
<!DOCTYPE html>
<html>
<head>
<title>Crypto Calendar</title>
<meta name="title" content="Crypto Calendar">
<meta name="description" content="Crypto events calendar">
<meta name="keywords" content="DeFi, cryptocurrency, calendar">
<meta name="robots" content="index, follow">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="language" content="English">
<meta content="width=device-width, initial-scale=1" name="viewport"/>
<link href="index.css" rel="stylesheet" type="text/css"/>
<script src="https://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js" type="text/javascript"></script>
<script type="text/javascript">WebFont.load({ google: { families: ["Ubuntu:300,300italic,400,400italic,500,500italic,700,700italic","Inconsolata:400,700"] }});</script>
<link href="favicon.ico" rel="shortcut icon" type="image/x-icon"/>
<script defer data-domain="cal.ape.llc" src="https://plausible.io/js/script.js"></script>
<script>
function fetchBtcPrice() {
fetch(`https://api.coingecko.com/api/v3/simple/price?ids=bitcoin&vs_currencies=eur`)
.then(response => response.json())
.then(data => {
const price = data['bitcoin'].eur;
document.getElementById('crypto-price-btc').innerText = `BTC ${price}€`;
})
.catch(error => console.error('Error fetching data:', error));
}
fetchBtcPrice();
function fetchEthPrice() {
fetch(`https://api.coingecko.com/api/v3/simple/price?ids=ethereum&vs_currencies=eur`)
.then(response => response.json())
.then(data => {
const price = data['ethereum'].eur;
document.getElementById('crypto-price-eth').innerText = `ETH ${price}€`;
})
.catch(error => console.error('Error fetching data:', error));
}
fetchEthPrice();
function fetchBonkPrice() {
fetch(`https://api.coingecko.com/api/v3/simple/price?ids=bonk&vs_currencies=eur`)
.then(response => response.json())
.then(data => {
const price = data['bonk'].eur;
document.getElementById('crypto-price-bonk').innerText = `BONK ${price}€`;
})
.catch(error => console.error('Error fetching data:', error));
}
fetchBtcPrice();
setInterval(fetchBtcPrice, 60000);
setInterval(fetchEthPrice, 60000);
setInterval(fetchBonkPrice, 60000);
window.addEventListener('scroll', function() {
var tabs = document.getElementById('tabs');
var content = document.getElementById('content');
if (window.scrollY > content.offsetTop) {
tabs.classList.add('sticky');
} else {
tabs.classList.remove('sticky');
}
});
</script>
</head>
<body>
<div id="content">
<div class="stuff">
<div class="tabs" id="tabs">
<button class="titleUnit">Crypto Calendar</button>
<button class="tabsbutton" onclick="openCal(event, 'Equilibrium')" id="defaultTab">Global Events</button>
<button class="tabsbutton" onclick="openCal(event, 'Finland')">Finland</button>
<button class="tabsbutton" onclick="openCal(event, 'VirtualEvents')">Virtual Events</button>
<button class="navbutton" onclick="window.open('https://ape.llc','_self')">Back to ape.llc</button>
<button class="tickerUnit"><div id="crypto-price-bonk">BONK loading...</div></button>
<button class="tickerUnit"><div id="crypto-price-eth">Ξ loading...</div></button>
<button class="tickerUnit"><div id="crypto-price-btc">₿ loading...</div></button>
</div>
<div class="calendarcontainer" id="Equilibrium">
<iframe src=https://airtable.com/embed/shrevylf0GjpRYO1o?backgroundColor=purple&viewControls=on frameborder="0" onmousewheel="" width="100%" height="733" style="background: transparent;border:none;"></iframe>
<img src="eq-logo-black.svg" style="max-width:200px"/><br/>
<small>Sponsored by <a href="https://equilibrium.co" target="_blank">Equilibrium</a></small><br/><br/>
<small><i>Missing an event? Contact @Jommi on TG.</i></small>
<br/><br/>
</div>
<div class="calendarcontainer" id="Finland">
<br/>
<iframe src="https://calendar.google.com/calendar/embed?height=600&wkst=2&bgcolor=%23ffffff&ctz=Europe%2FHelsinki&showTitle=0&title=Crypto%20Calendar%20(Finland)&showPrint=0&showTabs=1&mode=AGENDA&hl=en_GB&src=MTA1MTE5ZjgzMzc3ZjY5NjAxNzcxZWRlZGM2MDFlZDcxNjU1YjYyZTc1NDJiYTY0ODNiZmVkNzEyZjBjMDRkZEBncm91cC5jYWxlbmRhci5nb29nbGUuY29t&color=%2344a703" style="border-width:0" frameborder="0" scrolling="no"></iframe>
<small>Sponsored by <a href="https://ape.llc" target="_blank">Ape LLC</a></small><br/><br/>
<small><i>Missing an event? Contact @roinevirta on TG.</i></small>
<br/><br/>
</div>
<div class="calendarcontainer" id="VirtualEvents">
<br/>
<iframe src="https://calendar.google.com/calendar/embed?height=600&wkst=2&bgcolor=%23ffffff&ctz=Europe%2FHelsinki&showTitle=0&showPrint=0&showTabs=1&mode=AGENDA&title=Crypto%20Calendar%20(Virtual%20Events)&hl=en_GB&src=MjdiY2U5NGMxYTFjNGFjNmY3OGIzNWZmY2JhNzU4NWZlNjllMzk1M2FlNzkyMzQ2OWEyOTI2ODcyNGQ1Y2YzOEBncm91cC5jYWxlbmRhci5nb29nbGUuY29t&color=%23009688" style="border-width:0" frameborder="0" scrolling="no"></iframe>
<small>Sponsored by <a href="https://ape.llc" target="_blank">Ape LLC</a></small><br/><br/>
<small><i>Missing an event? Contact @roinevirta on TG.</i></small>
<br/><br/>
</div>
<br/>
</div>
</div>
<script>
function openCal(evt, cityName) {
var i, calendarcontainer, tabsbutton;
calendarcontainer = document.getElementsByClassName("calendarcontainer");
for (i = 0; i < calendarcontainer.length; i++) {
calendarcontainer[i].style.display = "none";
}
tabsbutton = document.getElementsByClassName("tabsbutton");
for (i = 0; i < tabsbutton.length; i++) {
tabsbutton[i].className = tabsbutton[i].className.replace(" active", "");
}
document.getElementById(cityName).style.display = "block";
evt.currentTarget.className += " active";
}
document.getElementById("defaultTab").click();
</script>
</body>
</html>