Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • Teckids/team-pr/teckids.org
  • eshszg/teckids.org
  • nbildhauer/teckids.org
  • tuxilio/teckids.org
  • klecmatt/teckids.org
5 results
Show changes
Showing
with 462 additions and 0 deletions
static/images/soldering.png

17.7 KiB

static/images/sponsoren/froscon.png

19 KiB

static/images/sponsoren/linuxhotel.png

39.1 KiB

static/images/sponsoren/speedpartner.png

114 KiB

static/images/sponsoren/velocitux.png

18.1 KiB

{
"name": "Website der Teckids-Gemeinschaft",
"short_name": "Teckids-Website",
"icons": [
{
"src": "/android-chrome-192x192.png",
"sizes": "192x192",
"type": "image/png",
"purpose": "maskable"
},
{
"src": "/android-chrome-512x512.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "maskable"
}
],
"theme_color": "#ff6600",
"background_color": "#ff6600",
"display": "browser"
}
../node_modules/@fortawesome/fontawesome-free/webfonts
\ No newline at end of file
{% extends "base.html" %}
{% block main %}
<section class="section">
<div class="container">
<div class="message is-danger">
<div class="message-header">
<p>{{ trans(key="not_found_header", lang=lang) }}</p>
<a class="button delete" href="{{ get_url(path="@/_index.md", lang=lang) }}"></a>
</div>
<div class="message-body">
{{ trans(key="not_found_body", lang=lang) }}
</div>
</div>
</div>
</section>
{% endblock %}
<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="{{ lang }}">
<title>{{ config.title }}
{%- if term %} - {{ term.name }}
{%- elif section.title %} - {{ section.title }}
{%- endif -%}
</title>
{%- if config.description %}
<subtitle>{{ config.description }}</subtitle>
{%- endif %}
<link rel="self" type="application/atom+xml" href="{{ feed_url | safe }}"/>
<link rel="alternate" type="text/html" href="
{%- if section -%}
{{ section.permalink | escape_xml | safe }}
{%- else -%}
{{ config.base_url | escape_xml | safe }}
{%- endif -%}
"/>
<generator uri="https://www.getzola.org/">Zola</generator>
<updated>{{ last_updated | date(format="%+") }}</updated>
<id>{{ feed_url | safe }}</id>
{%- for page in pages %}
{% set authors_data = load_data(path="authors.json") -%}
<entry xml:lang="{{ page.lang }}">
<title>{{ page.title }}</title>
<published>{{ page.date | date(format="%+") }}</published>
<updated>{{ page.updated | default(value=page.date) | date(format="%+") }}</updated>
{% for author in page.authors %}
<author>
<name>{{ authors_data[author].display_name }}</name>
<uri>https://teckids.org/authors/{{ author }}/</uri>
{% if authors_data[author].email -%}
<email>{{ authors_data[author].email }}</email>
{% endif -%}
</author>
{% endfor %}
<link rel="alternate" type="text/html" href="{{ page.permalink | safe }}"/>
<id>{{ page.permalink | safe }}</id>
{% if page.summary %}
<summary type="html">{{ page.summary }}</summary>
{% else %}
<content type="html" xml:base="{{ page.permalink | escape_xml | safe }}">{{ page.content }}</content>
{% endif %}
</entry>
{%- endfor %}
</feed>
{% if page -%}
{% set thing = page -%}
{% elif section -%}
{% set thing = section -%}
{% endif -%}
<!DOCTYPE html>
<html lang="{{ lang }}" data-theme="light" {% if current_path %}resource="https://www.teckids.org{{ current_path }}"{% endif %} typeof="{% block rdfa_type %}{{ thing.extra.microdata.type | default(value='schema:WebPage') }}{% endblock rdfa_type %}">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta property="schema:publisher" href="https://teckids.org/" />
{% block meta %}
<meta name="description" content="{{ thing.description | default(value=config.description) }}" />
<link rel="alternate" type="application/atom+xml" href="{{ get_url(path="atom.xml", trailing_slash=false, lang=lang) }}" />
{% endblock %}
{% block meta_extra %}{% endblock %}
{% block og %}
<meta property="og:site_name" content="{{ config.title }}" />
{% if thing %}
<meta property="og:title" content="{% block og_title %}{{ thing.title | default(value=config.title) }}{% endblock og_title %}" />
<meta property="og:description" content="{{ thing.description | default(value=config.description) }}" />
<meta property="og:type" content="{% block og_type %}{{ thing.extra.og.type | default(value='article') }}{% endblock og_type %}" />
<meta property="og:url" content="{% block og_url %}{{ thing.permalink | safe }}{% endblock og_url %}" />
{% if thing.extra.depiction %}
<meta property="og:image" content="{{ get_url(path="@/" ~ thing.relative_path, trailing_slash=true) }}{{ thing.extra.depiction.image | safe }}" /> <meta property="og:image:alt" content="{{ thing.extra.depiction.alt }}" />
{% elif config.extra.og.image %}
<meta property="og:image" content="{{ get_url(path=config.extra.og.image.url) }}" />
<meta property="og:image:alt" content="{{ config.extra.og.image.alt }}" />
{% endif %}
{% if thing.extra.og.video %}
<meta property="og:video" content="{{ thing.extra.og.video.url }}" />
{% endif %}
{% endif %}
{% endblock %}
<link rel="icon" href="{{ get_url(path="favicon.ico") }}" sizes="48x48" />
<link rel="icon" href="{{ get_url(path="artwork/teckids_logo_favicon.svg") }}" sizes="any" type="image/svg+xml" />
<link rel="apple-touch-icon" href="{{ get_url(path="apple-touch-icon.png") }}" />
<link rel="stylesheet" href="{{ get_url(path="fonts/roboto/index.css") }}" />
<link rel="stylesheet" href="{{ get_url(path="fonts/font-awesome/css/all.css") }}" />
<link rel="stylesheet" href="{{ get_url(path="style.css") }}" />
{% if thing.path %}
{% set local_style = get_url(path=thing.path ~ "/style.css") %}
{% if local_style is defined %}
<link rel="stylesheet" href="{{ local_style }}" />
{% endif %}
{% endif %}
<title>{% block title %}{{ thing.title | default(value=config.title) }}{% endblock %}</title>
</head>
<body class="has-navbar-fixed-top">
<header>
{% include "menu.html" %}
</header>
<main>
{% block main %}{% endblock %}
</main>
<footer class="footer">
{% include "footer.html" %}
</footer>
</body>
</html>
<div class="media author-section is-flex" resource="{{ post.permalink }}" typeof="schema:BlogPosting">
<div class="media-left author-images is-align-self-center">
{% set authors_data = load_data(path="authors.json") -%}
{% for author in post.authors -%}
<figure class="image is-48x48 is-inline-block" property="schema:contributor" resource="https://teckids.org/authors/{{ author }}/" typeof="schema:Person">
{% set meta = get_image_metadata(path="authors/" ~ author ~ ".jpg", allow_missing=true) -%}
{% if meta -%}
{% set image = resize_image(path="authors/" ~ author ~ ".jpg", width=48, height=48) -%}
<img property="schema:image" class="is-rounded" src="{{ image.url }}" alt="Benutzerbild von {{ authors_data[post.authors.0].display_name }}" />
{% else -%}
<div class="is-flex is-fullheight">
<span class="fa-stack fa-lg is-block is-align-self-center">
<i class="fa-solid fa-circle fa-stack-2x"></i>
<i class="fa-solid fa-{{ author | truncate(length=1, end="") | lower() }} fa-stack-1x fa-inverse"></i>
</span>
</div>
{% endif -%}
</figure>
{% endfor %}
</div>
<ul class="media-content is-align-self-center">
<div class="title is-5">
{% for author in post.authors -%}
<span resource="https://teckids.org/authors/{{ author }}/" typeof="schema:Person" class="is-text-nowrap"><span property="schema:name">{{ authors_data[author].display_name }}</span></span>{% if not loop.last %}, {% endif %}
{% endfor %}
</div>
</ul>
</div>
<div class="card is-flex is-flex-direction-column is-fullheight is-justify-content-space-between" typeof="schema:BlogPosting" resource="{{ post.permalink }}" property="schema:blogPost">
<div class="card-image">
<a href="{{ post.permalink }}">
<figure class="image is-4by3">
{% set image = resize_image(path="@/" ~ post.colocated_path ~ "/" ~ post.extra.depiction.image, width=800, height=600) -%}
<img src="{{ image.url }}" alt="{{ post.extra.depiction.alt }}" />
{% if post.extra.depiction.credits %}
<figcaption class="p-1 has-text-white has-background-black is-size-7 is-italic">{{ post.extra.depiction.credits }}</figcaption>
{% endif %}
</figure>
</a>
</div>
<div class="card-content is-fullheight">
<a href="{{ post.permalink }}"><h3 class="title is-4" property="schema:headline">{{ post.title }}</h3></a>
<div class="content">
{% include "blog/meta_line.html" -%}
<span propery="schema:abstract">{{ post.summary | safe }}</span>
</div>
</div>
<div class="card-footer">
<div class="card-footer-item">
<div class="is-fullwidth">
{% include "blog/author_media.html" -%}
</div>
</div>
</div>
{% if post.extra.microdata.about %}
{% for about in post.extra.microdata.about %}
<meta property="schema:about" href="{{ about }}" />
{% endfor %}
{% endif %}
</div>
<p class="subtitle is-7 py-2">
<span title="{{ trans(key="published_on", lang=lang) }}"><i class="fa-solid fa-calendar-days"></i> <time datetime="{{ post.date }}" property="schema:datePublished">{{ post.date }}</time></span> ·
<span title="{{ trans(key="word_count", lang=lang) }}"><i class="fa-solid fa-ruler"></i> <span property="schema:wordCount">{{ post.word_count }} {{ trans(key="words", lang=lang) }}</span></span> ·
<span title="{{ trans(key="reading_time", lang=lang) }}"><i class="fa-solid fa-hourglass-start"></i> {{ post.reading_time }} {{ trans(key="minutes_short", lang=lang) }}</span>
</p>
{% extends "base.html" %}
{% block rdfa_type %}schema:Blog{% endblock %}
{% block main %}
{% set title = trans(key="teckids_blog_page", lang=lang) ~ paginator.current_index ~ " " ~ trans(key="pages_of", lang=lang) ~ " " ~ paginator.number_pagers %}
{% set posts = paginator.pages %}
{% set count = paginator.paginate_by %}
{% include "blog/section.html" %}
{% if paginator.number_pagers > 1 %}
<nav class="pagination is-centered section" role="navigation" aria-label="pagination">
<a href="{{ paginator.previous }}" class="pagination-previous">{{ trans(key="previous_page", lang=lang) }}</a>
<a href="{{ paginator.next }}" class="pagination-next">{{ trans(key="next_page", lang=lang) }}</a>
<ul class="pagination-list">
<li><a href="{{ paginator.first }}" class="pagination-link {% if paginator.current_index == 1 %}is-current{% endif %}" aria-label="{{ trans(key="page", lang=lang) }} 1">1</a></li>
{% set range_start = paginator.current_index - 3 %}
{% if range_start < 2 %}{% set range_start = 2 %}{% endif %}
{% set range_end = paginator.current_index + 3 %}
{% if range_end > paginator.number_pagers - 1 %}{% set range_end = paginator.number_pagers - 1 %}{% endif %}
{% if range_start > 2 %}
<li><span class="pagination-ellipsis">&hellip;</span></li>
{% endif %}
{% for pn in range(start=range_start, end=range_end + 1) %}
<li><a href="{{ paginator.base_url ~ pn ~ "/" }}" class="pagination-link {% if pn == paginator.current_index %}is-current{% endif %}" aria-label="{{ trans(key="page", lang=lang) }}" {{ pn }}">{{ pn }}</a></li>
{% endfor %}
{% if range_end < paginator.number_pagers - 1 %}
<li><span class="pagination-ellipsis">&hellip;</span></li>
{% endif %}
<li><a href="{{ paginator.last }}" class="pagination-link {% if paginator.current_index == paginator.number_pagers %}is-current{% endif %}" aria-label="{{ trans(key="page", lang=lang) }}" {{ paginator.number_pagers }}">{{ paginator.number_pagers }}</a></li>
</ul>
</nav>
{% endif %}
{% endblock %}
{% extends "page.html" %}
{% block rdfa_type %}schema:BlogPosting{% endblock %}
{% block meta_extra %}
{% set authors_data = load_data(path="authors.json") -%}
{% if authors_data[page.authors.0].fediverse %}
<meta name="fediverse:creator" content="{{ authors_data[page.authors.0].fediverse }}" />
{% endif %}
{% endblock %}
{% block content %}
{% set blog_section = get_section(path="blog/_index.md", lang=lang) %}
{% set post = page -%}
<div class="columns mt-4">
<meta property="schema:isPartOf" href="{{ blog_section.permalink }}" />
{% if post.extra.microdata.about %}
{% for about in post.extra.microdata.about %}
<meta property="schema:about" href="{{ about }}" />
{% endfor %}
{% endif %}
<div class="column is-three-quarters">
<div class="content" property="schema:articleBody">
{{ page.content | safe }}
</div>
</div>
<div class="column is-one-quarter">
<div class="card">
<div class="card-image">
<figure class="image is-4by3">
{% set image = resize_image(path="@/" ~ post.colocated_path ~ "/" ~ post.extra.depiction.image, width=800, height=600) -%}
<img src="{{ image.url }}" alt="{{ post.extra.depiction.alt }}" property="schema:thumbnailUrl" />
{% if post.extra.depiction.credits %}
<figcaption class="p-1 has-text-white has-background-black is-size-7 is-italic">{{ post.extra.depiction.credits }}</figcaption>
{% endif %}
</figure>
</div>
<div class="card-content">
{% include "blog/author_media.html" %}
</div>
<div class="card-footer">
<div class="card-footer-item">
{% include "blog/meta_line.html" -%}
</div>
</div>
</div>
<nav class="panel is-light mt-6">
<p class="panel-heading">{{ trans(key="further_related_posts", lang=lang) }}</p>
{% for kind, terms in page.taxonomies %}
{% for term in terms %}
{% set taxonomy = get_taxonomy_term(kind=kind, term=term, lang=lang) %}
{% set posts = taxonomy.pages | filter(attribute="date") %}
{% if posts %}
<p class="panel-block subtitle is-7">{{ kind | title }}: {{ term }}</p>
{% for post in posts | slice(end=5) %}
<a class="panel-block" href="{{ post.permalink }}">{{ post.title}}</a>
{% endfor %}
{% endif %}
{% endfor %}
{% endfor %}
</div>
</div>
</div>
{% endblock %}
{% set main_blog_section = get_section(path="blog/_index.md", lang=lang) %}
{% if not posts is defined %}
{% set posts = main_blog_section.pages %}
{% endif %}
<section class="section" resource="{{ main_blog_section.permalink }}" typeof="schema:Blog">
<meta property="schema:publisher" href="https://teckids.org/" />
<div class="container">
<h2 class="title is-2">{{ title | default(value=trans(key="teckids_blog_posts", lang=lang)) }}</h2>
<div class="columns is-multiline is-same-height mt-4">
{% for post in posts | slice(end=count|default(value=6)) %}
<div class="column is-one-third">
{% include "blog/card.html" %}
</div>
{% endfor %}
</div>
</div>
</section>
<div class="tags">
{% for kind, terms in post.taxonomies %}
{% for term in terms %}
<span class="tag">{{ term }}</span>
{% endfor %}
{% endfor %}
</div>
<div class="columns is-multiline" resource="https://teckids.org/" typeof="schema:Organization">
<meta property="rdfs:seeAlso" href="http://www.wikidata.org/entity/Q122507357" />
<div class="column is-one-fourth">
<p class="title is-5" property="schema:name">Teckids e.V.</p>
<figure class="image">
<img src="{{ get_url(path="artwork/logo-teckids.svg") }}" alt="Teckids-Logo" property="schema:logo" />
</figure>
<address property="schema:address" typeof="schema:PostalAddress">
<span property="schema:streetAddress">{{config.extra.footer.address.street|safe}}</span>&nbsp;·&nbsp;
<span property="schema:postalCode">{{config.extra.footer.address.postal_code|safe}}</span>&nbsp;
<span property="schema:addressLocality">{{config.extra.footer.address.city|safe}}</span>
</address>
<aside class="mt-5">
<p class="title is-6">{{ trans(key="donation_account", lang=lang) }}</p>
<p>{{config.extra.footer.bank|safe}}</p>
</aside>
</div>
<div class="column is-half">
<p class="title is-5">{{ trans(key="supporters_partners", lang=lang) }}</p>
<div class="columns is-centered is-vcentered is-multiline">
{% for sponsor in config.extra.footer.sponsor %}
<div class="column is-one-quarter" property="schema:sponsor" typeof="schema:Organization">
<figure class="image">
<meta property="schema:name" content="{{sponsor.alt}}" />
<a property="schema:url" href="{{sponsor.link}}">
<img src="/images/sponsoren/{{sponsor.logo}}" alt="{{sponsor.alt}}" property="schema:logo" />
</a>
</figure>
</div>
{% endfor %}
</div>
</div>
<div class="column is-onw-fourth">
<p class="title is-5">{{ trans(key="further", lang=lang) }}</p>
<aside class="menu">
{% for menu in config.extra.footer.menu %}
<p class="menu-label">{{menu.label}}</p>
<ul class="menu-list">
{% for item in menu.items %}
<li><a href="{{ item.url }}">{{ item.title }}</a></li>
{% endfor %}
</ul>
{% endfor %}
</aside>
<p class="title is-5 mt-5">{{ trans(key="channels_networks", lang=lang) }}</p>
<aside class="columns is-centered is-vcentered is-multiline is-mobile">
{% for social in config.extra.footer.social %}
<div class="column is-one-third">
<a href="{{social.link}}" rel="{{social.rel}}" class="icon is-large">
<i class="{{social.icon}} fa-2x"></i>
</a>
</div>
{% endfor %}
</aside>
</div>
</div>
<aside class="section has-text-centered is-size-7">
© {{ config.author }} · {{ trans(key="licensed_under", lang=lang) }} <a property="schema:license" href="{{ config.extra.footer.license.url }}">{{ config.extra.footer.license.name }}</a><br/>
{{ trans(key="created_using", lang=lang) }} <a href="https://www.getzola.org/">Zola</a> {{ trans(key="and", lang=lang) }} <a href="https://bulma.io/">Bulma</a><br/>
{% if thing.path %}{{ trans(key="this_page_can", lang=lang) }} <a href="{{ config.extra.repo.web.tree }}/{{ thing.relative_path }}">{{ trans(key="edited_on_edugit", lang=lang) }}</a> {{ trans(key="or", lang=lang) }} <a href="{{ config.extra.repo.web.issues }}">{{ trans(key="improvement_suggestion", lang=lang) }}</a>.<br/>{% endif %}
</aside>
{% set blog_section = get_section(path="blog/_index.md", lang=lang) %}
{% set count = 6 %}
{% include "blog/section.html" %}
<nav class="section pt-0">
<div class="container">
<a href="{{ get_url(path="@/blog/_index.md", lang=lang) }}" class="button is-large is-fullwidth is-link is-rounded">
{{ trans(key="more_teckids_blog_posts", lang=lang) }}
</a>
</div>
</nav>
<section
class="hero is-fullheight-with-navbar has-teckids-orange-light-bg"
id="frontpage-claim-block"
resource="https://teckids.org/"
>
<div class="hero-body">
<div class="container">
{% if section.extra.hero.message %}
<aside class="message is-{{ section.extra.hero.message.class }} section">
<div class="message-header">
<p>{{ section.extra.hero.message.title }}</p>
</div>
<div class="message-body">
{{ section.extra.hero.message.content }}
</div>
</aside>
{% endif %}
<p class="title is-1 has-text-centered" property="schema:slogan">{{ config.description }}</p>
<div class="columns is-same-height mt-4">
{% for claim in section.extra.claims %}
<div class="column is-one-third">
<div class="card is-flex is-flex-direction-column is-fullheight is-justify-content-space-between frontpage-claim-box">
<div class="card-content is-fullheight">
<div class="columns is-vcentered">
<div class="column">
<img src="/{{ claim.image }}" alt="image">
</div>
<div class="column is-four-fifths">
<h1 class="title is-3">{{ claim.title }}</h1>
</div>
</div>
<p>{{ claim.content }}</p>
</div>
<footer class="card-footer">
{% for link in claim.links %}
<a href="{{ get_url(path=link.url, lang=lang) }}" class="card-footer-item">
<span class="icon-text">
<span>{{ link.title }}</span>
<span class="icon"><i class="fa-solid fa-arrow-right"></i></span>
</span>
</a>
{% endfor %}
</footer>
</div>
</div>
{% endfor %}
</div>
</div>
</div>
</section>