<!DOCTYPE html>
<meta charset="utf-8">
<!-- https://html.spec.whatwg.org/multipage/syntax.html#syntax-tag-omission -->
<title>Warszawski Hackerspace</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="preconnect" href="https://fonts.gstatic.com">
<link rel="stylesheet" href="/static/site/landing.css"/>
<link rel="stylesheet" href="/static/leaflet/leaflet.css"/>
<link href="https://fonts.googleapis.com/css2?family=Allerta&family=Lato&display=swap" rel="stylesheet">
<style>
</style>
<div id="page">
    <div class="top">
        <div class="logo">
            <img src="/static/site/syrenka.png" />
            <h1>Warszawski Hackerspace</h1>
        </div>
        <div class="mapcontainer">
            <h2>Gdzie jesteśmy?</h2>
            <div id="map"></div>
            <pre>Warszawski Hackerspace
ul. Wolność 2A
01-018 Warszawa 
52°14'29.8"N 20°59'5.5"E</pre>
        </div>
    </div>
    <div class="covid">
        <span>Na okres pandemii Hackerspace jest <b>zamknięty</b>, więcej informacji: <a href="">projekt covid-19</a></span>
    </div>
    <div class="bottom">
        <div class="about">
            <h2>Czym jest Hackerspace?</h2>
            <p>
              Przestrzeń stworzona i utrzymywana przez grupę kreatywnych osób, które łączy fascynacja ogólno pojętym tworzeniem w duchu <a href="https://pl.wikipedia.org/wiki/Spo%C5%82eczno%C5%9B%C4%87_haker%C3%B3w">kultury hackerskiej</a>.
            </p>
            <p>
              <b>Hackerspace nie zna barier.</b> Jeśli masz ciekawy pomysł i szukasz ludzi chętnych do współpracy lub po prostu potrzebujesz miejsca i sprzętu - <a href="">zapraszamy</a>!
            </p>
            <h3>Kto jest teraz w spejsie?</h3>
            <p>
                {{ if ne .AtError nil }}
                <i>Ups, nie udało się załadować stanu checkinatora.</i>
                {{ else }}
                  {{ $count := len .AtStatus.Users }}
                  {{ if gt $count 4 }}
                Według <a href="https://at.hackerspace.pl">naszych instrumentów</a> w spejsie obecnie znajduje się {{ $count }} osób:
                  {{ else if gt $count 1 }}
                Według <a href="https://at.hackerspace.pl">naszych instrumentów</a> w spejsie obecnie znajdują się {{ $count }} osoby:
                  {{ else if gt $count 0 }}
                Według <a href="https://at.hackerspace.pl">naszych instrumentów</a> w spejsie obecnie znajduje się jedna osoba:
                  {{ else }}
                Według <a href="https://at.hackerspace.pl">naszych instrumentów</a> w spejsie obecnie nie ma nikogo.
                  {{ end }}
                <ul class="atlist">
                    {{ range .AtStatus.Users }}
                    <li>{{ .Login }}</li>
                    {{ end }}
                </ul>
                {{ end }}
            </p>
        </div>
        <div class="blog">
            <h2>Blog</h2>
            <p>
                Najnowsze wpisy z naszego <a href="https://blog.hackerspace.pl">bloga</a>:
                <ul>
                    {{ range .Entries }}
                    <li><a href="{{ .Link.Href }}">{{ .Title }}</a> <i>{{ .UpdatedHuman }}, {{ .Author }}</i></li>
                    {{ else }}
                    <li><i>Ups, nie udało się załadować wpisów.</i></li>
                    {{ end }}
                </ul>
            <p>
        </div>
    </div>

    <div id="footer">
        <span>&copy; 2021 <a href="https://cs.hackerspace.pl/hscloud/-/tree/hswaw/site">Autorzy Strony</a>. Ten utwór jest dostępny na <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">licencji Creative Commons Uznanie autorstwa 4.0 Międzynarodowe</a>.</span>
    </div>
</div>

<script>
window.loadMap = () => {
    let map = L.map('map', {
        center: [52.24158, 20.9848],
        zoom: 13,
        scrollWheelZoom: false,
    });

    L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
        attribution: '&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a>'
    }).addTo(map);

    L.marker([52.24158, 20.9848]).addTo(map);
}
</script>
<script src="/static/leaflet/leaflet.js" crossorigin="" onload="loadMap()"></script>
