Skip to content
Snippets Groups Projects
Commit e135e919 authored by Tomáš Valenta's avatar Tomáš Valenta
Browse files

Release

parent 7ad44afc
Branches
No related tags found
1 merge request!3Release
Showing
with 248 additions and 11 deletions
stages:
- build
- test_deploy
image: docker:20.10.8
......@@ -28,3 +29,11 @@ build_nginx:
- docker pull $CI_REGISTRY_IMAGE:test-nginx || true
- docker build --cache-from $CI_REGISTRY_IMAGE:test-nginx -t $IMAGE_TAG_NGINX . -f Dockerfile.nginx
- docker push $IMAGE_TAG_NGINX
deploy:
stage: test_deploy
when: manual
before_script:
- apk add --update curl && rm -rf /var/cache/apk/*
script:
- curl -k -X POST $DEPLOY_HOOK
......@@ -8,6 +8,7 @@ Aplikace pro všemožné jednoduché nástroje, které pomohou automatizovat slo
├── rybicka = Nastavení projektu, URLs.
├── shared = Sdílené templaty a statické soubory pro všechny ostatní aplikace, index.
├── member_group_size_calc = Kalkulačka velikosti skupiny členů.
├── mail_signature = Generátor podpisů do emailů.
├── rv_voting_calc = Kalkulačka hlasování RV.
├── static_src = Zdrojové CSS a JS, které příkazem 'make build' buildujeme.
├── requirements = Pythonové závislosti z PyPI.
......
from django.contrib import admin
# Register your models here.
from django.apps import AppConfig
class MailSignatureConfig(AppConfig):
default_auto_field = 'django.db.models.BigAutoField'
name = 'mail_signature'
from django.db import models
# Create your models here.
{% extends "shared/base.html" %}
{% load render_bundle from webpack_loader %}
{% block title %}Generátor emailových podpisů{% endblock %}
{% block header_name %}Emailové podpisy{% endblock %}
{% block description %}Vyplněním získáš HTML kód, který můžeš vložit jako podpis do svých emailů.{% endblock %}
{% block head %}
<link
rel="stylesheet"
href="https://styleguide.pirati.cz/2.11.x/css/styles.css"
>
{% render_bundle "mail_signature" %}
{% endblock %}
{% block content %}
<main>
<h1 class="text-6xl font-bebas mb-5">Generátor emailových podpisů</h1>
<div class="prose max-w-none mb-5">
<p>
Vyplněním následujícího formuláře získáš HTML kód,
který můžeš vložit jako podpis do svých emailů.
</p>
</div>
<div class="grid gap-4 grid-cols-1 lg:grid-cols-2">
<form class="flex flex-col gap-3" id="source">
<div class="flex gap-4 items-center">
<label class="basis-56 flex items-center font-bold" for="name">
Jméno:
</label>
<input
id="name"
name="name"
type="text"
class="border border-gray-200 p-2 rounded-md grow w-full"
>
</div>
<div class="flex gap-4 items-center">
<label class="basis-56 flex items-center font-bold" for="function">
Názvy funkcí:
</label>
<textarea
id="function"
name="function"
rows="3"
class="border border-gray-200 p-2 rounded-md grow w-full"
></textarea>
</div>
<div class="flex gap-4 items-center">
<label class="basis-56 flex items-center font-bold" for="email">
E-mail:
</label>
<input
id="email"
name="email"
type="email"
class="border border-gray-200 p-2 rounded-md grow w-full"
>
</div>
<div class="flex gap-4 items-center">
<label class="basis-56 flex items-center font-bold" for="phone">
Telefonní číslo:
</label>
<div class="grow w-full flex gap-4 items-center">
<input
id="phone-prefix"
name="phone-prefix"
type="text"
class="basis-16 w-16 border border-gray-200 p-2 rounded-md"
value="+420"
>
<input
id="phone"
name="phone"
type="number"
class="border border-gray-200 p-2 rounded-md grow w-full"
>
</div>
</div>
<div class="flex gap-4 items-center">
<label class="basis-56 flex items-center font-bold" for="web">
Webové stránky:
</label>
<input
id="web"
name="web"
type="url"
class="border border-gray-200 p-2 rounded-md grow w-full"
>
</div>
<div class="flex gap-4 items-center">
<label class="basis-56 flex items-center font-bold" for="mastodon">
Mastodon odkaz:
</label>
<input
id="mastodon"
name="mastodon"
type="url"
class="border border-gray-200 p-2 rounded-md grow w-full"
>
</div>
<div class="flex gap-4 items-center">
<label class="basis-56 flex items-center font-bold" for="twitter">
Twitter odkaz:
</label>
<input
id="twitter"
name="twitter"
type="url"
class="border border-gray-200 p-2 rounded-md grow w-full"
>
</div>
<div class="flex gap-4 items-center">
<label class="basis-56 flex items-center font-bold" for="instagram">
Instagram odkaz:
</label>
<input
id="instagram"
name="instagram"
type="url"
class="border border-gray-200 p-2 rounded-md grow w-full"
>
</div>
<div class="flex gap-4 items-center">
<label class="basis-56 flex items-center font-bold" for="linkedin">
LinkedIn odkaz:
</label>
<input
id="linkedin"
name="linkedin"
type="url"
class="border border-gray-200 p-2 rounded-md grow w-full"
>
</div>
<div class="flex gap-4 items-center">
<label class="basis-56 flex items-center font-bold" for="fejsbuk">
Facebook odkaz:
</label>
<input
id="fejsbuk"
name="fejsbuk"
type="url"
class="border border-gray-200 p-2 rounded-md grow w-full"
>
</div>
<div class="text-right">
<button id="generate" class="btn btn--icon" type="button">
<div class="btn__body-wrap">
<div class="btn__body">Vygenerovat</div>
<div class="btn__icon">
<i class="ico--chevron-right"></i>
</div>
</div>
</button>
</div>
</form>
<div class="flex flex-col gap-3">
<section class="flex flex-col gap-4">
<div class="flex justify-between gap-3 items-center">
<div class="flex flex-col gap-1">
<h2 class="font-bold">Náhled</h2>
<small class="text-right">Zkopíruj zde v případě, že tvůj poskytovatel nepodporuje přímé vkládání HTML.</small>
</div>
<button class="btn text-sm btn--condensed" id="copy">
<div class="btn__body">Zkopírovat</div>
</button>
</div>
<div class="border border-gray-400 border-dotted p-2 rounded-md" id="preview"></div>
</section>
<section>
<h2 class="font-bold mb-3">HTML Kód</h2>
<textarea
class="border border-gray-200 p-2 font-mono rounded-md w-full"
rows="5"
id="content"
readonly
></textarea>
</section>
</div>
</div>
</main>
{% endblock %}
from django.test import TestCase
# Create your tests here.
from django.urls import path
from . import views
app_name = "mail_signature"
urlpatterns = [
path("", views.index, name="index"),
]
from django.shortcuts import render
# Create your views here.
def index(request):
return render(
request,
"mail_signature/index.html"
)
......@@ -4,7 +4,7 @@
{% block title %}Kalkulačka velikosti skupiny členů{% endblock %}
{% block header_name %}Skupiny členů{% endblock %}
{% block description %}Výpočet velikosti skupiny členů podle jednoacího řádu.{% endblock %}
{% block description %}Výpočet velikosti skupiny členů podle jednacího řádu.{% endblock %}
{% block head %}
<link
......
......@@ -4,6 +4,8 @@
"description": "",
"private": true,
"dependencies": {
"@tailwindcss/typography": "^0.5.9",
"alertifyjs": "^1.13.1",
"css-loader": "^6.7.3",
"jquery": "^3.6.3",
"js-cookie": "^3.0.1",
......
......@@ -4,7 +4,7 @@
{% block title %}Kalkulačka hlasování RV{% endblock %}
{% block header_name %}Hlasování RV{% endblock %}
{% block description %}TODO - Popis{% endblock %}
{% block description %}Výpočet výsledku referenda RV, systémem alternativního hlasování.{% endblock %}
{% block head %}
{% render_bundle "rv_voting_calc" %}
......@@ -25,12 +25,14 @@
<main>
<h1 class="text-6xl font-bebas mb-5">Kalkulačka hlasování RV</h1>
<p class="mb-5 text-gray-800">
Jednací řád k nahlédnutí <a
class="underline"
href="https://wiki.pirati.cz/rules/jrrv#rozhodujici_hlasovani_pri_referendu"
>na wiki</a>, § 9 (3).
</p>
<div class="prose max-w-none mb-5">
<p>
Jednací řád k nahlédnutí <a
class="underline"
href="https://wiki.pirati.cz/rules/jrrv#rozhodujici_hlasovani_pri_referendu"
>na wiki</a>, § 9 (3).
</p>
</div>
<div class="grid grid-cols-1 md:grid-cols-2 gap-7">
<div>
......
......@@ -48,6 +48,7 @@ INSTALLED_APPS = [
"shared",
"member_group_size_calc",
"rv_voting_calc",
"mail_signature",
]
MIDDLEWARE = [
......
......@@ -18,5 +18,6 @@ from django.urls import include, path
urlpatterns = [
path("vypocet-skupiny-clenu/", include("member_group_size_calc.urls")),
path("hlasovani-rv/", include("rv_voting_calc.urls")),
path("emailove-podpisy/", include("mail_signature.urls")),
path("", include("shared.urls")),
]
......@@ -11,6 +11,6 @@ import os
from django.core.wsgi import get_wsgi_application
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "rybicka.settings.prod")
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "rybicka.settings.production")
application = get_wsgi_application()
shared/static/shared/marketing.webp

41.9 KiB

shared/static/shared/signature.webp

113 KiB

......@@ -51,11 +51,11 @@
<div>
<div class="container container--default navbar__content navbar__content--initialized">
<div class="navbar__brand flex items-center pr-8 my-4 lg:my-0">
<a href="/#TODO">
<a href="{% url "shared:index" %}">
<img src="https://styleguide.pirati.cz/2.3.x/images/logo-round-white.svg" class="w-8">
</a>
<div class="pl-4 font-bold text-xl border-r border-grey-300 pr-8">
<a href="/#TODO">Rybička</a>
<a href="{% url "shared:index" %}">Rybička</a>
</div>
</div>
{% block header_name %}{% endblock %}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment