Merge branch 'data_migrations' into treenode_editor
6
.gitignore
vendored
|
@ -24,3 +24,9 @@ TODO
|
||||||
|
|
||||||
# .htpasswd kvůli přihlášení
|
# .htpasswd kvůli přihlášení
|
||||||
.htpasswd
|
.htpasswd
|
||||||
|
|
||||||
|
# reversion kvůli historii objektů v reversion
|
||||||
|
**/reversion
|
||||||
|
|
||||||
|
# pro lidi, co programují v nástrojích od JetBrains
|
||||||
|
.idea
|
187
MIGRATIONS
Normal file
|
@ -0,0 +1,187 @@
|
||||||
|
Jak zvládnout migrace na nový model:
|
||||||
|
|
||||||
|
- V mojí verzi databáze mají úlohy-Problémy typ "b'uloha'"
|
||||||
|
|
||||||
|
|
||||||
|
Log migrace na nový model:
|
||||||
|
|
||||||
|
Operations to perform:
|
||||||
|
Apply all migrations: admin, auth, contenttypes, django_comments, flatpages, fluent_comments, galerie, korektury, prednasky, reversion, seminar, sessions, sites, sitetree, taggit, threadedcomments
|
||||||
|
Running migrations:
|
||||||
|
Applying admin.0003_logentry_add_action_flag_choices... OK
|
||||||
|
Applying auth.0009_alter_user_last_name_max_length... OK
|
||||||
|
Applying auth.0010_alter_group_name_max_length... OK
|
||||||
|
Applying auth.0011_update_proxy_permissions... OK
|
||||||
|
Applying galerie.0008_auto_20190430_2340... OK
|
||||||
|
Applying galerie.0009_auto_20190610_2358... OK
|
||||||
|
Applying galerie.0010_auto_20200819_0947... OK
|
||||||
|
Applying korektury.0016_auto_20190430_2340... OK
|
||||||
|
Applying korektury.0017_auto_20190610_2358... OK
|
||||||
|
Applying prednasky.0011_auto_20190430_2340... OK
|
||||||
|
Applying prednasky.0012_auto_20190610_2358... OK
|
||||||
|
Applying seminar.0049_auto_20190430_2354... OK
|
||||||
|
Applying seminar.0050_auto_20190510_2228... OK
|
||||||
|
Applying seminar.0051_resitel_to_osoba... OK
|
||||||
|
Applying seminar.0052_user_to_organizator... OK
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2004-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (1998-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2017-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2017-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2014-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2011-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2013-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2004-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2013-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2012-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2007-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2011-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2009-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2009-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2008-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2005-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2015-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2001-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2010-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2008-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2006-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2002-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2005-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (1999-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2003-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2000-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2002-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2001-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (1996-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2000-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (1999-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (1996-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (1994-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2012-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2016-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2018-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2014-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2019-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2006-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (1995-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_do received a naive datetime (2007-12-31 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2015-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2016-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2018-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2019-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
/aux/akce/mam/www/mamweb-test/env/lib/python3.7/site-packages/django/db/models/fields/__init__.py:1427: RuntimeWarning: DateTimeField Organizator.organizuje_od received a naive datetime (2020-01-01 00:00:00) while time zone support is active.
|
||||||
|
RuntimeWarning)
|
||||||
|
Applying seminar.0053_organizator_organizuje_od_do... OK
|
||||||
|
Applying seminar.0055_smazat_nemigrovane_zastarale_veci... OK
|
||||||
|
Applying seminar.0056_vrcholy_pro_rocniky_a_cisla... OK
|
||||||
|
Applying seminar.0057_reseni_to_reseni_hodnoceni...!!!!!!!!!!!!!!!
|
||||||
|
31397 Reseni object (31397)
|
||||||
|
!!!!!!!!!!!!!!!
|
||||||
|
!!!!!!!!!!!!!!!
|
||||||
|
31396 Reseni object (31396)
|
||||||
|
!!!!!!!!!!!!!!!
|
||||||
|
!!!!!!!!!!!!!!!
|
||||||
|
31395 Reseni object (31395)
|
||||||
|
!!!!!!!!!!!!!!!
|
||||||
|
!!!!!!!!!!!!!!!
|
||||||
|
31394 Reseni object (31394)
|
||||||
|
!!!!!!!!!!!!!!!
|
||||||
|
!!!!!!!!!!!!!!!
|
||||||
|
31393 Reseni object (31393)
|
||||||
|
!!!!!!!!!!!!!!!
|
||||||
|
OK
|
||||||
|
Applying seminar.0058_problem_to_uloha_tema_clanek... OK
|
||||||
|
Applying seminar.fix_0058... OK
|
||||||
|
Applying seminar.0059_vytvorit_pohadkanode... OK
|
||||||
|
Applying seminar.0060_spoj_stromy... OK
|
||||||
|
Applying seminar.0061_kill_frankenstein... OK
|
||||||
|
Applying seminar.0062_redukce_modelu_pohadky... OK
|
||||||
|
Applying seminar.0063_procisteni_migraci... OK
|
||||||
|
Applying seminar.0064_auto_20190610_2358... OK
|
||||||
|
Applying seminar.0065_treenode_polymorphic_ctype... OK
|
||||||
|
Applying seminar.0066_problem_polymorphic_ctype... OK
|
||||||
|
Applying seminar.0067_auto_20190814_0805... OK
|
||||||
|
Applying seminar.0068_treenode_nazev... OK
|
||||||
|
Applying seminar.0069_auto_20191120_2115... OK
|
||||||
|
Applying seminar.0070_auto_20191120_2357... OK
|
||||||
|
Applying seminar.0071_remove_nastaveni_aktualni_rocnik... OK
|
||||||
|
Applying seminar.0072_auto_20191204_2257... OK
|
||||||
|
Applying seminar.0073_copy_osoba_email_to_user_email... OK
|
||||||
|
Applying seminar.0074_auto_20200228_1401... OK
|
||||||
|
Applying seminar.0075_auto_20200228_2010... OK
|
||||||
|
Applying seminar.0076_auto_20200228_2013... OK
|
||||||
|
Applying seminar.0077_auto_20200318_2146... OK
|
||||||
|
Applying seminar.0078_otistenereseninode... OK
|
||||||
|
Applying seminar.0079_clanek_resitelsky... OK
|
||||||
|
Applying seminar.0080_zruseni_claneknode_a_konferanode... OK
|
||||||
|
Applying seminar.0081_auto_20200408_2221... OK
|
||||||
|
Applying seminar.0082_auto_20200506_1951... OK
|
||||||
|
Applying seminar.0083_auto_20200506_1952... OK
|
||||||
|
WARNING 2020-08-20 00:49:07,941 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (2215)
|
||||||
|
WARNING 2020-08-20 00:49:07,953 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (2221)
|
||||||
|
WARNING 2020-08-20 00:49:07,959 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (2212)
|
||||||
|
WARNING 2020-08-20 00:49:07,965 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (1955)
|
||||||
|
WARNING 2020-08-20 00:49:07,968 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (2027)
|
||||||
|
WARNING 2020-08-20 00:49:07,971 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (1981)
|
||||||
|
WARNING 2020-08-20 00:49:07,974 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (1970)
|
||||||
|
WARNING 2020-08-20 00:49:07,978 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (2001)
|
||||||
|
WARNING 2020-08-20 00:49:07,981 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (2004)
|
||||||
|
WARNING 2020-08-20 00:49:07,984 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (1941)
|
||||||
|
WARNING 2020-08-20 00:49:07,990 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (2024)
|
||||||
|
WARNING 2020-08-20 00:49:07,993 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (2031)
|
||||||
|
WARNING 2020-08-20 00:49:07,997 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (2211)
|
||||||
|
WARNING 2020-08-20 00:49:08,005 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (2073)
|
||||||
|
WARNING 2020-08-20 00:49:08,017 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (2018)
|
||||||
|
WARNING 2020-08-20 00:49:08,022 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (2222)
|
||||||
|
WARNING 2020-08-20 00:49:08,028 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (1953)
|
||||||
|
WARNING 2020-08-20 00:49:08,034 0084_clanek_cislo: Více než jedno řešení pro článek Clanek object (2026)
|
||||||
|
Applying seminar.0084_clanek_cislo... OK
|
||||||
|
Applying seminar.0085_nepovinna_prezdivka... OK
|
||||||
|
Applying seminar.0086_auto_20200819_0959... OK
|
||||||
|
Applying sitetree.0001_initial... OK
|
||||||
|
Applying taggit.0003_taggeditem_add_unique_index... OK
|
||||||
|
|
11
Makefile
|
@ -15,6 +15,9 @@ all:
|
||||||
# . ${VENV_PATH}/bin/activate
|
# . ${VENV_PATH}/bin/activate
|
||||||
# make install_web
|
# make install_web
|
||||||
#
|
#
|
||||||
|
# Pokud install_web říká Error: pg_config executable not found. nainstaluj si libpq-dev
|
||||||
|
# Pokud chybová hláška obsahuje #include <Python.h>, nainstaluj si python3-dev
|
||||||
|
#
|
||||||
# Až skončíš s vývojem webu, spusť "deactivate". Tím zmizí '(${VENV_PATH})' ze začátku promptu.
|
# Až skončíš s vývojem webu, spusť "deactivate". Tím zmizí '(${VENV_PATH})' ze začátku promptu.
|
||||||
|
|
||||||
venv_check:
|
venv_check:
|
||||||
|
@ -64,7 +67,7 @@ schema_all.pdf: venv_check
|
||||||
# Deploy to current *mamweb-test* directory
|
# Deploy to current *mamweb-test* directory
|
||||||
deploy_test: venv_check
|
deploy_test: venv_check
|
||||||
@if [ ${USER} != "mam-web" ]; then echo "Only possible by user mam-web"; exit 1; fi
|
@if [ ${USER} != "mam-web" ]; then echo "Only possible by user mam-web"; exit 1; fi
|
||||||
@if [ `pwd` != "/akce/mam/www/mamweb-test" ]; then echo "Only possible in /akce/mam/www/mamweb-test"; exit 1; fi
|
@if [ `readlink -f .` != "/aux/akce/mam/www/mamweb-test" ]; then echo "Only possible in directory mamweb-test"; exit 1; fi
|
||||||
@echo "Installing version from origin/test ..."
|
@echo "Installing version from origin/test ..."
|
||||||
git pull origin test
|
git pull origin test
|
||||||
git clean -f
|
git clean -f
|
||||||
|
@ -80,9 +83,9 @@ deploy_test: venv_check
|
||||||
# Deploy to current *mamweb-prod* directory
|
# Deploy to current *mamweb-prod* directory
|
||||||
deploy_prod: venv_check
|
deploy_prod: venv_check
|
||||||
@if [ ${USER} != "mam-web" ]; then echo "Only possible by user mam-web"; exit 1; fi
|
@if [ ${USER} != "mam-web" ]; then echo "Only possible by user mam-web"; exit 1; fi
|
||||||
@if [ `pwd` != "/akce/mam/www/mamweb-prod" ]; then echo "Only possible in /akce/mam/www/mamweb-prod"; exit 1; fi
|
@if [ `readlink -f .` != "/aux/akce/mam/www/mamweb-prod" ]; then echo "Only possible in directory mamweb-prod"; exit 1; fi
|
||||||
@echo "Backing up production DB ..."
|
@echo "Backing up production DB ..."
|
||||||
( cd .. && ./backup_prod_db.sh )
|
( cd -P .. && ./backup_prod_db.sh )
|
||||||
@echo "Installing version from origin/master ..."
|
@echo "Installing version from origin/master ..."
|
||||||
git pull origin master
|
git pull origin master
|
||||||
git clean -f
|
git clean -f
|
||||||
|
@ -108,7 +111,7 @@ sync_prod_flatpages: venv_check
|
||||||
# Sync test media directory with production
|
# Sync test media directory with production
|
||||||
sync_test_media:
|
sync_test_media:
|
||||||
@if [ ${USER} != "mam-web" ]; then echo "Only possible by user mam-web"; exit 1; fi
|
@if [ ${USER} != "mam-web" ]; then echo "Only possible by user mam-web"; exit 1; fi
|
||||||
@if [ `pwd` != "/akce/mam/www/mamweb-test" ]; then echo "Only possible in /akce/mam/www/mamweb-test"; exit 1; fi
|
@if [ `readlink -f .` != "/aux/akce/mam/www/mamweb-test" ]; then echo "Only possible in /akce/mam/www/mamweb-test"; exit 1; fi
|
||||||
rsync -av --delete /akce/mam/www/mamweb-prod/media/ ./media
|
rsync -av --delete /akce/mam/www/mamweb-prod/media/ ./media
|
||||||
|
|
||||||
# Sync test database with production database
|
# Sync test database with production database
|
||||||
|
|
207
data/fotka_header.json
Normal file
|
@ -0,0 +1,207 @@
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaheader",
|
||||||
|
"pk": "baliky.jpg",
|
||||||
|
"fields": {
|
||||||
|
"cas": "2020-09-20T09:18:34.562Z",
|
||||||
|
"fotka": "header/baliky.jpg"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaheader",
|
||||||
|
"pk": "beh.jpg",
|
||||||
|
"fields": {
|
||||||
|
"cas": "2020-09-20T09:18:34.562Z",
|
||||||
|
"fotka": "header/beh.jpg"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaheader",
|
||||||
|
"pk": "kryptografie.jpg",
|
||||||
|
"fields": {
|
||||||
|
"cas": "2020-09-20T09:18:34.562Z",
|
||||||
|
"fotka": "header/kryptografie.jpg"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaheader",
|
||||||
|
"pk": "mam_cernobile.jpg",
|
||||||
|
"fields": {
|
||||||
|
"cas": "2020-09-20T09:18:34.562Z",
|
||||||
|
"fotka": "header/mam_cernobile.jpg"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaheader",
|
||||||
|
"pk": "noc.jpg",
|
||||||
|
"fields": {
|
||||||
|
"cas": "2020-09-20T09:18:34.562Z",
|
||||||
|
"fotka": "header/noc.jpg"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaheader",
|
||||||
|
"pk": "ohen.jpg",
|
||||||
|
"fields": {
|
||||||
|
"cas": "2020-09-20T09:18:34.562Z",
|
||||||
|
"fotka": "header/ohen.jpg"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaheader",
|
||||||
|
"pk": "snih.jpg",
|
||||||
|
"fields": {
|
||||||
|
"cas": "2020-09-20T09:18:34.562Z",
|
||||||
|
"fotka": "header/snih.jpg"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaheader",
|
||||||
|
"pk": "spolecna.jpg",
|
||||||
|
"fields": {
|
||||||
|
"cas": "2020-09-20T09:18:34.562Z",
|
||||||
|
"fotka": "header/spolecna.jpg"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaheader",
|
||||||
|
"pk": "stiny.jpg",
|
||||||
|
"fields": {
|
||||||
|
"cas": "2020-09-20T09:18:34.562Z",
|
||||||
|
"fotka": "header/stiny.jpg"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaheader",
|
||||||
|
"pk": "vikendovka.jpg",
|
||||||
|
"fields": {
|
||||||
|
"cas": "2020-09-20T09:18:34.562Z",
|
||||||
|
"fotka": "header/vikendovka.jpg"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaheader",
|
||||||
|
"pk": "vylet.jpg",
|
||||||
|
"fields": {
|
||||||
|
"cas": "2020-09-20T09:18:34.562Z",
|
||||||
|
"fotka": "header/vylet.jpg"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaurlvazba",
|
||||||
|
"pk": 1,
|
||||||
|
"fields": {
|
||||||
|
"url": "/archiv/",
|
||||||
|
"fotka": "stiny.jpg",
|
||||||
|
"denni_doba": "oboji"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaurlvazba",
|
||||||
|
"pk": 2,
|
||||||
|
"fields": {
|
||||||
|
"url": "/clanky/",
|
||||||
|
"fotka": "kryptografie.jpg",
|
||||||
|
"denni_doba": "den"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaurlvazba",
|
||||||
|
"pk": 3,
|
||||||
|
"fields": {
|
||||||
|
"url": "/clanky/",
|
||||||
|
"fotka": "ohen.jpg",
|
||||||
|
"denni_doba": "noc"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaurlvazba",
|
||||||
|
"pk": 4,
|
||||||
|
"fields": {
|
||||||
|
"url": "/zadani/",
|
||||||
|
"fotka": "baliky.jpg",
|
||||||
|
"denni_doba": "den"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaurlvazba",
|
||||||
|
"pk": 5,
|
||||||
|
"fields": {
|
||||||
|
"url": "/zadani/",
|
||||||
|
"fotka": "stiny.jpg",
|
||||||
|
"denni_doba": "noc"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaurlvazba",
|
||||||
|
"pk": 6,
|
||||||
|
"fields": {
|
||||||
|
"url": "/co-je-MaM/",
|
||||||
|
"fotka": "vikendovka.jpg",
|
||||||
|
"denni_doba": "den"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaurlvazba",
|
||||||
|
"pk": 7,
|
||||||
|
"fields": {
|
||||||
|
"url": "/co-je-MaM/",
|
||||||
|
"fotka": "noc.jpg",
|
||||||
|
"denni_doba": "noc"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaurlvazba",
|
||||||
|
"pk": 8,
|
||||||
|
"fields": {
|
||||||
|
"url": "/soustredeni/",
|
||||||
|
"fotka": "beh.jpg",
|
||||||
|
"denni_doba": "den"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaurlvazba",
|
||||||
|
"pk": 9,
|
||||||
|
"fields": {
|
||||||
|
"url": "/soustredeni/",
|
||||||
|
"fotka": "vylet.jpg",
|
||||||
|
"denni_doba": "noc"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaurlvazba",
|
||||||
|
"pk": 10,
|
||||||
|
"fields": {
|
||||||
|
"url": "/login/",
|
||||||
|
"fotka": "baliky.jpg",
|
||||||
|
"denni_doba": "den"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaurlvazba",
|
||||||
|
"pk": 11,
|
||||||
|
"fields": {
|
||||||
|
"url": "/login/",
|
||||||
|
"fotka": "stiny.jpg",
|
||||||
|
"denni_doba": "noc"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaurlvazba",
|
||||||
|
"pk": 12,
|
||||||
|
"fields": {
|
||||||
|
"url": "/profil/",
|
||||||
|
"fotka": "baliky.jpg",
|
||||||
|
"denni_doba": "den"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"model": "header_fotky.fotkaurlvazba",
|
||||||
|
"pk": 13,
|
||||||
|
"fields": {
|
||||||
|
"url": "/profil/",
|
||||||
|
"fotka": "stiny.jpg",
|
||||||
|
"denni_doba": "noc"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
1
data/sitetree_new.json
Normal file
|
@ -30,14 +30,14 @@ def prepnout_fotogalerii_do_org_rezimu(modeladmin, request, queryset):
|
||||||
|
|
||||||
class GalerieInline(admin.TabularInline):
|
class GalerieInline(admin.TabularInline):
|
||||||
model = Obrazek
|
model = Obrazek
|
||||||
fields = ['obrazek_velky', 'nazev', 'popis', 'obrazek_maly_tag']
|
fields = ['obrazek_velky', 'nazev', 'popis', 'obrazek_maly_tag', 'poradi']
|
||||||
readonly_fields = ['nazev', 'obrazek_maly_tag']
|
readonly_fields = ['nazev', 'obrazek_maly_tag']
|
||||||
formfield_overrides = {
|
formfield_overrides = {
|
||||||
models.TextField: {'widget': forms.TextInput},
|
models.TextField: {'widget': forms.TextInput},
|
||||||
}
|
}
|
||||||
|
|
||||||
class ObrazekAdmin(admin.ModelAdmin):
|
class ObrazekAdmin(admin.ModelAdmin):
|
||||||
list_display = ('obrazek_velky', 'nazev', 'popis', 'obrazek_maly_tag')
|
list_display = ('obrazek_velky', 'nazev', 'popis', 'obrazek_maly_tag', 'poradi')
|
||||||
search_fields = ['nazev','popis']
|
search_fields = ['nazev','popis']
|
||||||
|
|
||||||
class GalerieAdmin(admin.ModelAdmin):
|
class GalerieAdmin(admin.ModelAdmin):
|
||||||
|
|
18
galerie/migrations/0010_auto_20200819_0947.py
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
# Generated by Django 2.2.15 on 2020-08-19 07:47
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('galerie', '0009_auto_20190610_2358'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='galerie',
|
||||||
|
name='poradi',
|
||||||
|
field=models.IntegerField(blank=True, default=0, verbose_name='Pořadí'),
|
||||||
|
),
|
||||||
|
]
|
|
@ -94,7 +94,7 @@ class Galerie(models.Model):
|
||||||
on_delete=models.SET_NULL)
|
on_delete=models.SET_NULL)
|
||||||
soustredeni = models.ForeignKey(Soustredeni, blank = True, null = True,
|
soustredeni = models.ForeignKey(Soustredeni, blank = True, null = True,
|
||||||
on_delete=models.PROTECT)
|
on_delete=models.PROTECT)
|
||||||
poradi = models.IntegerField('Pořadí', blank = True, null = True)
|
poradi = models.IntegerField('Pořadí', blank = True, null = False, default = 0)
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.nazev
|
return self.nazev
|
||||||
|
|
|
@ -1,6 +0,0 @@
|
||||||
{% extends "base.html" %}
|
|
||||||
|
|
||||||
{# TODO predelat pres context processor #}
|
|
||||||
{% block header %}soustredeni{% endblock %}
|
|
||||||
{% block menu_soustredeni %}selected{% endblock %}
|
|
||||||
{% block submenu %}{% include 'seminar/soustredeni/submenu.html' %}{% endblock %}
|
|
|
@ -1,4 +1,4 @@
|
||||||
{% extends "galerie/Base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
|
|
||||||
{% block nadpis1a %}
|
{% block nadpis1a %}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{% extends "galerie/Base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
{% block nadpis1a %}
|
{% block nadpis1a %}
|
||||||
Galerie {{galerie.nazev}}
|
Galerie {{galerie.nazev}}
|
||||||
|
@ -61,7 +61,7 @@ Galerie {{galerie.nazev}}
|
||||||
{{ galerie|truncatechars:max_delka_nazvu }}
|
{{ galerie|truncatechars:max_delka_nazvu }}
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
{% if user.is_staff and galerie.zobrazit > 0 %}
|
{% if user.je_org and galerie.zobrazit > 0 %}
|
||||||
<div class="mam-org-only-galerie">
|
<div class="mam-org-only-galerie">
|
||||||
({{galerie.poradi}})
|
({{galerie.poradi}})
|
||||||
<span class="plus"><a href="plus/{{galerie.pk}}/">+</a></span>
|
<span class="plus"><a href="plus/{{galerie.pk}}/">+</a></span>
|
||||||
|
@ -73,7 +73,7 @@ Galerie {{galerie.nazev}}
|
||||||
{% endwith %}
|
{% endwith %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if user.is_staff and galerie.zobrazit > 0 %}
|
{% if user.je_org and galerie.zobrazit > 0 %}
|
||||||
<div class="mam-org-only">
|
<div class="mam-org-only">
|
||||||
<a href="./new">Vytvořit novou podgalerii </a>
|
<a href="./new">Vytvořit novou podgalerii </a>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{% extends "galerie/Base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
{% block title %}{% block nadpis1a %}
|
{% block title %}{% block nadpis1a %}
|
||||||
Vytvářím novou galerii
|
Vytvářím novou galerii
|
||||||
|
|
|
@ -1,13 +1,14 @@
|
||||||
# coding: utf-8
|
# coding: utf-8
|
||||||
|
|
||||||
from django.urls import path
|
from django.urls import path
|
||||||
|
from seminar.utils import org_required
|
||||||
from . import views
|
from . import views
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path('<int:pk>/', views.nahled),
|
path('<int:pk>/', views.nahled),
|
||||||
path('<int:pk>/<int:fotka>/', views.detail),
|
path('<int:pk>/<int:fotka>/', views.detail),
|
||||||
path('<int:galerie>/new/', views.new_galerie),
|
path('<int:galerie>/new/', org_required(views.new_galerie)),
|
||||||
path('<int:galerie>/plus/<int:subgalerie>/', views.plus_galerie),
|
path('<int:galerie>/plus/<int:subgalerie>/', org_required(views.plus_galerie)),
|
||||||
path('<int:galerie>/minus/<int:subgalerie>/', views.minus_galerie),
|
path('<int:galerie>/minus/<int:subgalerie>/', org_required(views.minus_galerie)),
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,7 @@ from galerie.forms import KomentarForm, NewGalerieForm
|
||||||
def zobrazit(galerie, request):
|
def zobrazit(galerie, request):
|
||||||
preview = False
|
preview = False
|
||||||
if galerie.zobrazit >= 1:
|
if galerie.zobrazit >= 1:
|
||||||
if request.user.is_staff:
|
if request.user.je_org:
|
||||||
preview = True;
|
preview = True;
|
||||||
else:
|
else:
|
||||||
raise Http404
|
raise Http404
|
||||||
|
@ -35,16 +35,16 @@ def nahled(request, pk, soustredeni):
|
||||||
galerie = get_object_or_404(Galerie, pk=pk)
|
galerie = get_object_or_404(Galerie, pk=pk)
|
||||||
|
|
||||||
podgalerie = Galerie.objects.filter(galerie_up = galerie).order_by('poradi')
|
podgalerie = Galerie.objects.filter(galerie_up = galerie).order_by('poradi')
|
||||||
if not request.user.is_staff:
|
if not request.user.je_org:
|
||||||
podgalerie = podgalerie.filter(zobrazit__lt=1)
|
podgalerie = podgalerie.filter(zobrazit__lt=1)
|
||||||
|
|
||||||
obrazky = Obrazek.objects.filter(galerie = galerie)
|
obrazky = Obrazek.objects.filter(galerie = galerie).order_by('poradi', 'nazev')
|
||||||
preview = zobrazit(galerie, request)
|
preview = zobrazit(galerie, request)
|
||||||
|
|
||||||
sourozenci = []
|
sourozenci = []
|
||||||
if galerie.galerie_up:
|
if galerie.galerie_up:
|
||||||
sourozenci = galerie.galerie_up.galerie_set.all().order_by('poradi')
|
sourozenci = galerie.galerie_up.galerie_set.all().order_by('poradi')
|
||||||
if not request.user.is_staff:
|
if not request.user.je_org:
|
||||||
sourozenci = sourozenci.filter(zobrazit__lt=1)
|
sourozenci = sourozenci.filter(zobrazit__lt=1)
|
||||||
|
|
||||||
predchozi = None
|
predchozi = None
|
||||||
|
@ -82,7 +82,7 @@ def detail(request, pk, fotka, soustredeni):
|
||||||
galerie = get_object_or_404(Galerie, pk=pk)
|
galerie = get_object_or_404(Galerie, pk=pk)
|
||||||
preview = zobrazit(galerie, request)
|
preview = zobrazit(galerie, request)
|
||||||
obrazek = get_object_or_404(Obrazek, pk=fotka)
|
obrazek = get_object_or_404(Obrazek, pk=fotka)
|
||||||
obrazky = galerie.obrazek_set.all()
|
obrazky = galerie.obrazek_set.all().order_by('poradi', 'nazev')
|
||||||
|
|
||||||
# vytvoreni a obslouzeni formulare
|
# vytvoreni a obslouzeni formulare
|
||||||
if request.method == 'POST':
|
if request.method == 'POST':
|
||||||
|
@ -96,22 +96,23 @@ def detail(request, pk, fotka, soustredeni):
|
||||||
# Poradi aktualniho obrazku v galerii/stitku.
|
# Poradi aktualniho obrazku v galerii/stitku.
|
||||||
for i in range(len(obrazky)):
|
for i in range(len(obrazky)):
|
||||||
if obrazky[i] == obrazek:
|
if obrazky[i] == obrazek:
|
||||||
znacka = i
|
poradi = i
|
||||||
break
|
break
|
||||||
else:
|
else:
|
||||||
# Obrazek neni v galerii/stitku.
|
# Obrazek neni v galerii/stitku.
|
||||||
raise Http404
|
raise Http404
|
||||||
|
|
||||||
|
|
||||||
# Nacteni okolnich obrazku a galerii
|
# Nacteni okolnich obrazku a galerii
|
||||||
# TODO vyjmout zjisteni predchozich a nasledujicich galerii
|
# TODO vyjmout zjisteni predchozich a nasledujicich galerii
|
||||||
# a udelat z toho funkci, ktera se pouzije u nahledu
|
# a udelat z toho funkci, ktera se pouzije u nahledu
|
||||||
predchozi_galerie = None
|
predchozi_galerie = None
|
||||||
nasledujici_galerie = None
|
nasledujici_galerie = None
|
||||||
obrazky_dalsi = obrazky[znacka+1:znacka+NAHLEDU+1]
|
obrazky_dalsi = obrazky[poradi+1:poradi+NAHLEDU+1]
|
||||||
if (znacka+1) > NAHLEDU:
|
if (poradi+1) > NAHLEDU:
|
||||||
obrazky_predchozi = obrazky[znacka-NAHLEDU:znacka]
|
obrazky_predchozi = obrazky[poradi-NAHLEDU:poradi]
|
||||||
else:
|
else:
|
||||||
obrazky_predchozi = obrazky[0:znacka]
|
obrazky_predchozi = obrazky[0:poradi]
|
||||||
if galerie.poradi > 1:
|
if galerie.poradi > 1:
|
||||||
predchozi_galerie = Galerie.objects.\
|
predchozi_galerie = Galerie.objects.\
|
||||||
filter(galerie_up=galerie.galerie_up).\
|
filter(galerie_up=galerie.galerie_up).\
|
||||||
|
@ -120,41 +121,44 @@ def detail(request, pk, fotka, soustredeni):
|
||||||
predchozi_galerie = predchozi_galerie[0]
|
predchozi_galerie = predchozi_galerie[0]
|
||||||
else:
|
else:
|
||||||
predchozi_galerie = None
|
predchozi_galerie = None
|
||||||
if (znacka+1) == len(obrazky):
|
if (poradi+1) == len(obrazky): # Tohle je poslední obrázek
|
||||||
nasledujici_galerie = Galerie.objects.\
|
if (galerie.poradi is not None
|
||||||
filter(galerie_up=galerie.galerie_up).\
|
and galerie.galerie_up is not None):
|
||||||
filter(poradi=(galerie.poradi+1))
|
nasledujici_galerie = Galerie.objects.\
|
||||||
|
filter(galerie_up=galerie.galerie_up).\
|
||||||
|
filter(poradi=(galerie.poradi+1))
|
||||||
|
else:
|
||||||
|
nasledujici_galerie = None
|
||||||
if nasledujici_galerie:
|
if nasledujici_galerie:
|
||||||
nasledujici_galerie = nasledujici_galerie[0]
|
nasledujici_galerie = nasledujici_galerie[0]
|
||||||
else:
|
else:
|
||||||
nasledujici_galerie = None
|
nasledujici_galerie = None
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Preskalovani obrazku do vybraneho prostoru.
|
# Preskalovani obrazku do vybraneho prostoru.
|
||||||
vyska = obrazek.obrazek_stredni.height
|
vyska = obrazek.obrazek_stredni.height
|
||||||
sirka = obrazek.obrazek_stredni.width
|
sirka = obrazek.obrazek_stredni.width
|
||||||
if vyska > MAX_VYSKA:
|
if vyska > MAX_VYSKA:
|
||||||
sirka = sirka * MAX_VYSKA / vyska
|
sirka = sirka * MAX_VYSKA / vyska
|
||||||
vyska = MAX_VYSKA
|
vyska = MAX_VYSKA
|
||||||
if sirka > MAX_SIRKA:
|
if sirka > MAX_SIRKA:
|
||||||
vyska = vyska * MAX_SIRKA / sirka
|
vyska = vyska * MAX_SIRKA / sirka
|
||||||
sirka = MAX_SIRKA
|
sirka = MAX_SIRKA
|
||||||
|
|
||||||
return render(request, 'galerie/Galerie.html',
|
return render(request, 'galerie/Galerie.html',
|
||||||
{'galerie' : galerie,
|
{'galerie' : galerie,
|
||||||
'predchozi_galerie' : predchozi_galerie,
|
'predchozi_galerie' : predchozi_galerie,
|
||||||
'nasledujici_galerie' : nasledujici_galerie,
|
'nasledujici_galerie' : nasledujici_galerie,
|
||||||
'obrazek' : obrazek,
|
'obrazek' : obrazek,
|
||||||
'vyska' : vyska,
|
'vyska' : vyska,
|
||||||
'sirka' : sirka,
|
'sirka' : sirka,
|
||||||
'obrazky_predchozi' : obrazky_predchozi,
|
'obrazky_predchozi' : obrazky_predchozi,
|
||||||
'obrazky_dalsi' : obrazky_dalsi,
|
'obrazky_dalsi' : obrazky_dalsi,
|
||||||
'preview' : preview,
|
'preview' : preview,
|
||||||
'form' : form,
|
'form' : form,
|
||||||
'cesta': cesta_od_korene(galerie),
|
'cesta': cesta_od_korene(galerie),
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
def new_galerie(request, galerie, soustredeni):
|
def new_galerie(request, galerie, soustredeni):
|
||||||
|
|
||||||
|
|
0
header_fotky/__init__.py
Normal file
10
header_fotky/admin.py
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
from django.contrib import admin
|
||||||
|
from django.contrib.admin import ModelAdmin
|
||||||
|
import header_fotky.models as m
|
||||||
|
|
||||||
|
|
||||||
|
class FotkaPozadiAdmin(ModelAdmin):
|
||||||
|
readonly_fields = ['cas']
|
||||||
|
|
||||||
|
admin.site.register(m.FotkaHeader, FotkaPozadiAdmin)
|
||||||
|
admin.site.register(m.FotkaUrlVazba)
|
5
header_fotky/apps.py
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
from django.apps import AppConfig
|
||||||
|
|
||||||
|
|
||||||
|
class HeaderFotkyConfig(AppConfig):
|
||||||
|
name = 'header_fotky'
|
45
header_fotky/context_processors.py
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
|
||||||
|
from datetime import datetime, date
|
||||||
|
import random
|
||||||
|
|
||||||
|
from django.conf import settings
|
||||||
|
|
||||||
|
from header_fotky.models import FotkaUrlVazba
|
||||||
|
|
||||||
|
|
||||||
|
def vzhled(request):
|
||||||
|
''' Podle casu prida do templatu, zdali je nebo neni noc '''
|
||||||
|
hodin = datetime.now().hour
|
||||||
|
if (hodin <= 6) or (hodin >= 20):
|
||||||
|
noc = True
|
||||||
|
nedoba = 'den'
|
||||||
|
doba = 'noc'
|
||||||
|
else:
|
||||||
|
noc = False
|
||||||
|
nedoba = 'noc'
|
||||||
|
doba = 'den'
|
||||||
|
url = request.path
|
||||||
|
|
||||||
|
fotky = FotkaUrlVazba.objects.exclude(denni_doba=nedoba)
|
||||||
|
fotka = None
|
||||||
|
|
||||||
|
# TODO rychlejší patternmatch?
|
||||||
|
while (fotka is None) and (url != ''):
|
||||||
|
presne = fotky.filter(url__exact=url)
|
||||||
|
if presne.count() > 0:
|
||||||
|
presne_doba = presne.filter(denni_doba=doba)
|
||||||
|
if presne_doba.count() > 0:
|
||||||
|
fotka = random.choice(presne_doba).url_fotky()
|
||||||
|
else:
|
||||||
|
fotka = random.choice(presne).url_fotky()
|
||||||
|
|
||||||
|
url = url[:-1]
|
||||||
|
index = url.rfind('/')
|
||||||
|
if index != -1:
|
||||||
|
url = url[:index+1]
|
||||||
|
|
||||||
|
if fotka is None:
|
||||||
|
fotka = settings.STATIC_URL + "images/header/vikendovka.jpg"
|
||||||
|
|
||||||
|
return {'noc': noc, 'fotka': fotka}
|
||||||
|
|
63
header_fotky/migrations/0001_initial.py
Normal file
|
@ -0,0 +1,63 @@
|
||||||
|
# Generated by Django 2.2.15 on 2020-09-20 09:14
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
import django.db.models.deletion
|
||||||
|
import django.utils.timezone
|
||||||
|
|
||||||
|
from shutil import copytree
|
||||||
|
|
||||||
|
|
||||||
|
def zkopiruj_fotky(apps, schema_editor):
|
||||||
|
try:
|
||||||
|
copytree("mamweb/static/images/header/", "media/header/") # FIXME: bylo tu dirs_exists_ok=True, nekompatibilní s Py 3.7
|
||||||
|
except FileExistsError:
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
initial = True
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='FotkaHeader',
|
||||||
|
fields=[
|
||||||
|
('cas', models.DateTimeField(default=django.utils.timezone.now, help_text='Čas vložení fotky',
|
||||||
|
verbose_name='čas vložení fotky')),
|
||||||
|
('nazev',
|
||||||
|
models.CharField(help_text='Název např. archiv_noc', max_length=50, primary_key=True, serialize=False,
|
||||||
|
unique=True, verbose_name='název fotky')),
|
||||||
|
('fotka', models.ImageField(upload_to='header')),
|
||||||
|
],
|
||||||
|
options={
|
||||||
|
'verbose_name': 'fotka do pozadí menu',
|
||||||
|
'verbose_name_plural': 'fotky do pozadí menu',
|
||||||
|
'db_table': 'fotky_header',
|
||||||
|
'ordering': ['-cas'],
|
||||||
|
},
|
||||||
|
),
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='FotkaUrlVazba',
|
||||||
|
fields=[
|
||||||
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
|
('url',
|
||||||
|
models.CharField(blank=True, help_text='url prefix stránek např: /archiv/ nebo /', max_length=100,
|
||||||
|
verbose_name='URL')),
|
||||||
|
('denni_doba', models.CharField(choices=[('den', 'Zobrazit jen ve dne'), ('noc', 'Zobrazit jen v noci'),
|
||||||
|
('oboji', 'Zobrazovat pořád')], default='oboji', max_length=16,
|
||||||
|
verbose_name='denní doba')),
|
||||||
|
('fotka', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='header_fotky.FotkaHeader',
|
||||||
|
verbose_name='fotka')),
|
||||||
|
],
|
||||||
|
options={
|
||||||
|
'verbose_name': 'vazba url a fotky do pozadí menu',
|
||||||
|
'verbose_name_plural': 'vazby url a fotek do pozadí menu',
|
||||||
|
'db_table': 'fotky_url_vazby',
|
||||||
|
'ordering': ['url'],
|
||||||
|
},
|
||||||
|
|
||||||
|
),
|
||||||
|
migrations.RunPython(zkopiruj_fotky, migrations.RunPython.noop),
|
||||||
|
]
|
0
header_fotky/migrations/__init__.py
Normal file
65
header_fotky/models.py
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
from django.core.exceptions import ValidationError
|
||||||
|
from django.db import models
|
||||||
|
from django.utils import timezone
|
||||||
|
|
||||||
|
|
||||||
|
class FotkaHeader(models.Model):
|
||||||
|
class Meta:
|
||||||
|
ordering = ['-cas']
|
||||||
|
db_table = 'fotky_header'
|
||||||
|
verbose_name = u'fotka do pozadí menu'
|
||||||
|
verbose_name_plural = u'fotky do pozadí menu'
|
||||||
|
|
||||||
|
cas = models.DateTimeField(u'čas vložení fotky', default=timezone.now, help_text='Čas vložení fotky')
|
||||||
|
|
||||||
|
nazev = models.CharField(
|
||||||
|
u'název fotky', null=False, blank=False, unique=True, primary_key=True,
|
||||||
|
max_length=50, help_text='Název např. archiv_noc'
|
||||||
|
)
|
||||||
|
|
||||||
|
fotka = models.ImageField(upload_to='header', null=False, blank=False)
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return self.nazev
|
||||||
|
|
||||||
|
def clean(self):
|
||||||
|
if not self.fotka:
|
||||||
|
raise ValidationError("Chybí obrázek")
|
||||||
|
""" Kontroluje, zda sedí poměr stran """
|
||||||
|
if abs(self.fotka.width - (self.fotka.height * 970 / 350)) > 2:
|
||||||
|
raise ValidationError("Obrázek by měl mít rozměry 970w na 350h, nebo alespoň podobný poměr stran.")
|
||||||
|
super().clean()
|
||||||
|
|
||||||
|
|
||||||
|
class FotkaUrlVazba(models.Model):
|
||||||
|
class Meta:
|
||||||
|
ordering = ['url']
|
||||||
|
db_table = 'fotky_url_vazby'
|
||||||
|
verbose_name = u'vazba url a fotky do pozadí menu'
|
||||||
|
verbose_name_plural = u'vazby url a fotek do pozadí menu'
|
||||||
|
|
||||||
|
url = models.CharField(
|
||||||
|
u'URL', blank=True, null=False, max_length=100,
|
||||||
|
help_text='url prefix stránek např: /archiv/ nebo /'
|
||||||
|
)
|
||||||
|
|
||||||
|
fotka = models.ForeignKey(
|
||||||
|
FotkaHeader, blank=False, null=False, verbose_name='fotka',
|
||||||
|
on_delete=models.CASCADE
|
||||||
|
)
|
||||||
|
|
||||||
|
DOBA_DEN = 'den'
|
||||||
|
DOBA_NOC = 'noc'
|
||||||
|
DOBA_OBOJI = 'oboji'
|
||||||
|
DOBA_CHOICES = [
|
||||||
|
(DOBA_DEN, 'Zobrazit jen ve dne'),
|
||||||
|
(DOBA_NOC, 'Zobrazit jen v noci'),
|
||||||
|
(DOBA_OBOJI, 'Zobrazovat pořád')]
|
||||||
|
|
||||||
|
denni_doba = models.CharField('denní doba', max_length=16, choices=DOBA_CHOICES, blank=False, default=DOBA_OBOJI)
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return self.url
|
||||||
|
|
||||||
|
def url_fotky(self):
|
||||||
|
return self.fotka.fotka.url
|
16
init_local.sh
Executable file
|
@ -0,0 +1,16 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
set -e # Spadni pokud něco spadne
|
||||||
|
|
||||||
|
# Check venvu
|
||||||
|
# NOTE: zkontroluje i správnou složku -- existencí Makefilu
|
||||||
|
make venv_check
|
||||||
|
|
||||||
|
# Vygenerujeme testdata
|
||||||
|
./manage.py testdata
|
||||||
|
|
||||||
|
# Nahrajeme statický obsah modelů
|
||||||
|
./manage.py loaddata flat.json sitetree_new.json
|
||||||
|
|
||||||
|
# Posbíráme statické soubory
|
||||||
|
./manage.py collectstatic
|
|
@ -79,22 +79,31 @@ class KorekturovanePDF(models.Model):
|
||||||
self.stran = 0
|
self.stran = 0
|
||||||
while True:
|
while True:
|
||||||
res = subprocess.call([
|
res = subprocess.call([
|
||||||
"convert",
|
#Parametry inspirovány chybovou hláškou imagemagicku
|
||||||
"-density", "180x180",
|
"gs",
|
||||||
"-geometry", " 1024x1448",
|
"-sstdout=%stderr",
|
||||||
"%s[%d]" % (self.pdf.path, self.stran),
|
"-dSAFER",
|
||||||
os.path.join(
|
"-dNOPAUSE",
|
||||||
|
"-dBATCH",
|
||||||
|
"-dNOPROMPT",
|
||||||
|
"-sDEVICE=pngalpha",
|
||||||
|
"-r180x180",
|
||||||
|
"-dFirstPage=%d" % (self.stran+1),
|
||||||
|
"-dLastPage=%d" % (self.stran+1),
|
||||||
|
"-sOutputFile="+os.path.join(
|
||||||
dirname,
|
dirname,
|
||||||
"%s-%d.png" % (self.get_prefix(), self.stran)
|
"%s-%d.png" % (self.get_prefix(), self.stran)),
|
||||||
)
|
"-f%s" % (self.pdf.path)
|
||||||
])
|
])
|
||||||
if res == 1:
|
if not os.path.exists(os.path.join(
|
||||||
|
dirname,
|
||||||
|
"%s-%d.png" % (self.get_prefix(), self.stran))):
|
||||||
break
|
break
|
||||||
self.stran += 1
|
self.stran += 1
|
||||||
# Změnil se počet stran, ukládáme
|
# Změnil se počet stran, ukládáme
|
||||||
super(KorekturovanePDF, self).save()
|
super(KorekturovanePDF, self).save()
|
||||||
|
|
||||||
def save(self):
|
def save(self, **kwargs):
|
||||||
# Pokud se nezmenilo PDF, tak nepregenerovavej nahledy
|
# Pokud se nezmenilo PDF, tak nepregenerovavej nahledy
|
||||||
try:
|
try:
|
||||||
original = KorekturovanePDF.objects.get(pk=self.pk)
|
original = KorekturovanePDF.objects.get(pk=self.pk)
|
||||||
|
@ -104,7 +113,7 @@ class KorekturovanePDF(models.Model):
|
||||||
except ObjectDoesNotExist:
|
except ObjectDoesNotExist:
|
||||||
pass
|
pass
|
||||||
# uložíme nahrávané pdf
|
# uložíme nahrávané pdf
|
||||||
super(KorekturovanePDF, self).save()
|
super(KorekturovanePDF, self).save(kwargs)
|
||||||
|
|
||||||
# uložíme png a změněný počet stran
|
# uložíme png a změněný počet stran
|
||||||
self.convert()
|
self.convert()
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
{% extends "base.html" %}
|
|
||||||
|
|
||||||
{% block content %}
|
|
||||||
{# blok do kterého se nacita text, v pripade jinyhc templatu obalit vlastnim blokem #}
|
|
||||||
{% endblock %}
|
|
||||||
|
|
||||||
{% block title %}
|
|
||||||
{# blok pro titulek stranky #}
|
|
||||||
{% endblock %}
|
|
|
@ -1,4 +1,5 @@
|
||||||
{% extends "korektury/base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
{% load staticfiles %}
|
{% load staticfiles %}
|
||||||
|
|
||||||
{% block title %} Nápověda ke korigovátku {% endblock title %}
|
{% block title %} Nápověda ke korigovátku {% endblock title %}
|
||||||
|
|
|
@ -36,12 +36,12 @@
|
||||||
id="neni_chyba_checkbox"
|
id="neni_chyba_checkbox"
|
||||||
name="neni_chyba_checkbox"
|
name="neni_chyba_checkbox"
|
||||||
onchange="toggle_corrections('neni_chyba')" checked>
|
onchange="toggle_corrections('neni_chyba')" checked>
|
||||||
<label for="neni_chyba_checkbox">Není chyba ({{neni_chyba_cnt}})</labe>
|
<label for="neni_chyba_checkbox">Není chyba ({{neni_chyba_cnt}})</label>
|
||||||
<input type="checkbox"
|
<input type="checkbox"
|
||||||
id="k_zaneseni_checkbox"
|
id="k_zaneseni_checkbox"
|
||||||
name="k_zaneseni_checkbox"
|
name="k_zaneseni_checkbox"
|
||||||
onchange="toggle_corrections('k_zaneseni')" checked>
|
onchange="toggle_corrections('k_zaneseni')" checked>
|
||||||
<label for="k_zaneseni_checkbox">K zanesení ({{k_zaneseni_cnt}})</labe>
|
<label for="k_zaneseni_checkbox">K zanesení ({{k_zaneseni_cnt}})</label>
|
||||||
|
|
||||||
<hr/>
|
<hr/>
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{% extends "korektury/base.html" %}
|
{% extends "base.html" %}
|
||||||
{% load staticfiles %}
|
{% load staticfiles %}
|
||||||
|
|
||||||
{% block script%}
|
{% block script%}
|
||||||
|
|
BIN
korektury/testpdfs/A.pdf
Normal file
5125
korektury/testpdfs/B.pdf
Normal file
69
korektury/testutils.py
Normal file
|
@ -0,0 +1,69 @@
|
||||||
|
import logging
|
||||||
|
import os
|
||||||
|
from shutil import copyfile, rmtree
|
||||||
|
|
||||||
|
from django.db import transaction
|
||||||
|
from django.conf import settings
|
||||||
|
|
||||||
|
from korektury.models import KorekturovanePDF, generate_filename
|
||||||
|
|
||||||
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
@transaction.atomic
|
||||||
|
def create_test_pdf(rnd, organizatori):
|
||||||
|
logger.info('Vyrábím testovací pdf ke korekturovani')
|
||||||
|
try:
|
||||||
|
testpdfs = os.path.join(os.path.dirname(os.path.realpath(__file__)), 'testpdfs')
|
||||||
|
|
||||||
|
# smaže minulé pdfka a obrázky k nim a vytvoří (znovu) jejich složky
|
||||||
|
pdf_dir = os.path.join(settings.BASE_DIR, os.path.join('media', settings.KOREKTURY_PDF_DIR))
|
||||||
|
img_dir = os.path.join(settings.BASE_DIR, os.path.join('media', settings.KOREKTURY_IMG_DIR))
|
||||||
|
rmtree(pdf_dir, ignore_errors=True)
|
||||||
|
os.makedirs(pdf_dir)
|
||||||
|
rmtree(img_dir, ignore_errors=True)
|
||||||
|
os.makedirs(img_dir)
|
||||||
|
|
||||||
|
def gen_filename(filename):
|
||||||
|
name = generate_filename(None, filename)
|
||||||
|
print(name)
|
||||||
|
copyfile(os.path.join(testpdfs, filename), os.path.join(settings.BASE_DIR, os.path.join('media', name)))
|
||||||
|
return name
|
||||||
|
|
||||||
|
# TODO silent ghostscript (vypisuje odstavec za každou stránku…)
|
||||||
|
|
||||||
|
KorekturovanePDF.objects.create(
|
||||||
|
nazev='B', komentar='Neuronové sítě', org=rnd.choice(organizatori), pdf=gen_filename(filename='B.pdf')
|
||||||
|
)
|
||||||
|
|
||||||
|
KorekturovanePDF.objects.create(
|
||||||
|
nazev='A', komentar='M&M: Jak řešit?', org=rnd.choice(organizatori), pdf=gen_filename(filename='A.pdf')
|
||||||
|
)
|
||||||
|
|
||||||
|
korekturovane_pdf = KorekturovanePDF.objects.create(
|
||||||
|
nazev='A', komentar='M&M: Jak řešit?', org=rnd.choice(organizatori), pdf=gen_filename(filename='A.pdf'),
|
||||||
|
status='zanaseni'
|
||||||
|
)
|
||||||
|
|
||||||
|
KorekturovanePDF.objects.create(
|
||||||
|
nazev='A', komentar='M&M: Jak řešit?', org=rnd.choice(organizatori), pdf=gen_filename(filename='A.pdf'),
|
||||||
|
status='zastarale'
|
||||||
|
)
|
||||||
|
except (FileNotFoundError, Exception) as e:
|
||||||
|
# TODO najít správné chyby, které vyhazují různé systémy při neexistenci ImageMagick, nebo knihoven
|
||||||
|
logger.error(str(e))
|
||||||
|
logger.error(
|
||||||
|
'Chyba vytváření testovacích korektur, pravděpodobně není nainstalován ImageMagick nebo některá z knihoven'
|
||||||
|
'pro práci se soubory pdf (ghostscript) nebo png (libpng?).\n'
|
||||||
|
'''
|
||||||
|
Instalaci na linux provedete např. příkazy:
|
||||||
|
sudo apt-get build-dep imagemagick
|
||||||
|
git clone https://github.com/ImageMagick/ImageMagick.git
|
||||||
|
cd ImageMagick/
|
||||||
|
./configure
|
||||||
|
make
|
||||||
|
sudo make install
|
||||||
|
sudo ldconfig /usr/local/lib
|
||||||
|
cd ..
|
||||||
|
rm -r ImageMagick/
|
||||||
|
'''
|
||||||
|
)
|
|
@ -1,11 +1,10 @@
|
||||||
from django.urls import path
|
from django.urls import path
|
||||||
from django.contrib.auth.decorators import user_passes_test
|
from seminar.utils import org_required
|
||||||
from . import views
|
from . import views
|
||||||
|
|
||||||
staff_member_required = user_passes_test(lambda u: u.is_staff)
|
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path('korektury/', staff_member_required(views.KorekturyListView.as_view()), name='korektury-list'),
|
path('korektury/', org_required(views.KorekturyAktualniListView.as_view()), name='korektury-list'),
|
||||||
path('korektury/<int:pdf>/', staff_member_required(views.KorekturyView.as_view()), name='korektury'),
|
path('korektury/zastarale/', org_required(views.KorekturyZastaraleListView.as_view()), name='korektury-list'),
|
||||||
path('korektury/help/', staff_member_required(views.KorekturyHelpView.as_view()), name='korektury-help'),
|
path('korektury/<int:pdf>/', org_required(views.KorekturyView.as_view()), name='korektury'),
|
||||||
|
path('korektury/help/', org_required(views.KorekturyHelpView.as_view()), name='korektury-help'),
|
||||||
]
|
]
|
||||||
|
|
|
@ -29,6 +29,28 @@ class KorekturyListView(generic.ListView):
|
||||||
)
|
)
|
||||||
template_name = 'korektury/seznam.html'
|
template_name = 'korektury/seznam.html'
|
||||||
|
|
||||||
|
class KorekturyAktualniListView(KorekturyListView):
|
||||||
|
def get_queryset(self, *args, **kwargs):
|
||||||
|
queryset=super(KorekturyAktualniListView,self).get_queryset()
|
||||||
|
queryset=queryset.exclude(status="zastarale")
|
||||||
|
return queryset
|
||||||
|
|
||||||
|
def get_context_data(self, **kwargs):
|
||||||
|
context = super(KorekturyAktualniListView,self).get_context_data(**kwargs)
|
||||||
|
context['selected'] = 'aktualni'
|
||||||
|
return context
|
||||||
|
|
||||||
|
class KorekturyZastaraleListView(KorekturyListView):
|
||||||
|
def get_queryset(self, *args, **kwargs):
|
||||||
|
queryset=super(KorekturyZastaraleListView,self).get_queryset()
|
||||||
|
queryset=queryset.filter(status="zastarale")
|
||||||
|
return queryset
|
||||||
|
|
||||||
|
def get_context_data(self, **kwargs):
|
||||||
|
context = super(KorekturyZastaraleListView,self).get_context_data(**kwargs)
|
||||||
|
context['selected'] = 'zastarale'
|
||||||
|
return context
|
||||||
|
|
||||||
### Korektury
|
### Korektury
|
||||||
class KorekturyView(generic.TemplateView):
|
class KorekturyView(generic.TemplateView):
|
||||||
model = Oprava
|
model = Oprava
|
||||||
|
@ -130,7 +152,9 @@ class KorekturyView(generic.TemplateView):
|
||||||
'''
|
'''
|
||||||
|
|
||||||
# parametry e-mailu
|
# parametry e-mailu
|
||||||
odkaz = "https://mam.mff.cuni.cz/korektury/{}/".format(oprava.pdf.pk)
|
#odkaz = "https://mam.mff.cuni.cz/korektury/{}/".format(oprava.pdf.pk)
|
||||||
|
from django.urls import reverse
|
||||||
|
odkaz = self.request.build_absolute_uri(reverse('korektury', kwargs={'pdf': oprava.pdf.pk}))
|
||||||
from_email = 'korekturovatko@mam.mff.cuni.cz'
|
from_email = 'korekturovatko@mam.mff.cuni.cz'
|
||||||
subject = 'Nová korektura od {} v {}'.format(autor,
|
subject = 'Nová korektura od {} v {}'.format(autor,
|
||||||
oprava.pdf.nazev)
|
oprava.pdf.nazev)
|
||||||
|
|
|
@ -7,7 +7,8 @@ from django.contrib.flatpages.admin import FlatpageForm as FlatpageFormOld
|
||||||
|
|
||||||
from django import forms
|
from django import forms
|
||||||
from ckeditor_uploader.widgets import CKEditorUploadingWidget
|
from ckeditor_uploader.widgets import CKEditorUploadingWidget
|
||||||
|
|
||||||
|
|
||||||
class FlatpageForm(FlatpageFormOld):
|
class FlatpageForm(FlatpageFormOld):
|
||||||
content = forms.CharField(widget=CKEditorUploadingWidget())
|
content = forms.CharField(widget=CKEditorUploadingWidget())
|
||||||
class Meta:
|
class Meta:
|
||||||
|
@ -22,3 +23,4 @@ class FlatPageAdmin(FlatPageAdminOld):
|
||||||
# We have to unregister the normal admin, and then reregister ours
|
# We have to unregister the normal admin, and then reregister ours
|
||||||
admin.site.unregister(FlatPage)
|
admin.site.unregister(FlatPage)
|
||||||
admin.site.register(FlatPage, FlatPageAdmin)
|
admin.site.register(FlatPage, FlatPageAdmin)
|
||||||
|
|
||||||
|
|
|
@ -1,12 +0,0 @@
|
||||||
|
|
||||||
from datetime import datetime, date
|
|
||||||
|
|
||||||
def vzhled(request):
|
|
||||||
''' Podle casu prida do templatu, zdali je nebo neni noc '''
|
|
||||||
hodin = datetime.now().hour
|
|
||||||
if (hodin <= 6) or (hodin >= 20):
|
|
||||||
noc = True
|
|
||||||
else:
|
|
||||||
noc = False
|
|
||||||
return {'noc' : noc}
|
|
||||||
|
|
|
@ -77,7 +77,7 @@ TEMPLATES = [
|
||||||
'django.template.context_processors.request',
|
'django.template.context_processors.request',
|
||||||
'django.contrib.messages.context_processors.messages',
|
'django.contrib.messages.context_processors.messages',
|
||||||
'sekizai.context_processors.sekizai',
|
'sekizai.context_processors.sekizai',
|
||||||
'mamweb.context_processors.vzhled',
|
'header_fotky.context_processors.vzhled',
|
||||||
)
|
)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -98,7 +98,7 @@ INSTALLED_APPS = (
|
||||||
|
|
||||||
# Utilities
|
# Utilities
|
||||||
'sekizai',
|
'sekizai',
|
||||||
# 'reversion',
|
'reversion',
|
||||||
'django_countries',
|
'django_countries',
|
||||||
'solo',
|
'solo',
|
||||||
'ckeditor',
|
'ckeditor',
|
||||||
|
@ -130,6 +130,7 @@ INSTALLED_APPS = (
|
||||||
'galerie',
|
'galerie',
|
||||||
'korektury',
|
'korektury',
|
||||||
'prednasky',
|
'prednasky',
|
||||||
|
'header_fotky',
|
||||||
|
|
||||||
# Admin upravy:
|
# Admin upravy:
|
||||||
|
|
||||||
|
@ -139,7 +140,6 @@ INSTALLED_APPS = (
|
||||||
# 'admin_tools.theming',
|
# 'admin_tools.theming',
|
||||||
# 'admin_tools.menu',
|
# 'admin_tools.menu',
|
||||||
# 'admin_tools.dashboard',
|
# 'admin_tools.dashboard',
|
||||||
'flat',
|
|
||||||
'django.contrib.admin',
|
'django.contrib.admin',
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -182,7 +182,8 @@ CKEDITOR_CONFIGS = {
|
||||||
# 'toolbar': 'full',
|
# 'toolbar': 'full',
|
||||||
'height': '40em',
|
'height': '40em',
|
||||||
'width': '100%',
|
'width': '100%',
|
||||||
'toolbarStartupExpanded': False
|
'toolbarStartupExpanded': False,
|
||||||
|
'allowedContent' : True,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -272,7 +273,7 @@ LOGGING = {
|
||||||
'class': 'django.utils.log.AdminEmailHandler',
|
'class': 'django.utils.log.AdminEmailHandler',
|
||||||
'formatter': 'verbose',
|
'formatter': 'verbose',
|
||||||
},
|
},
|
||||||
'mail_registraion': {
|
'mail_registration': {
|
||||||
'level': 'WARN',
|
'level': 'WARN',
|
||||||
'class': 'django.utils.log.AdminEmailHandler',
|
'class': 'django.utils.log.AdminEmailHandler',
|
||||||
'formatter': 'verbose',
|
'formatter': 'verbose',
|
||||||
|
|
|
@ -94,4 +94,6 @@ LOGGING = {
|
||||||
# set to 'DEBUG' for EXTRA verbose output
|
# set to 'DEBUG' for EXTRA verbose output
|
||||||
# LOGGING['handlers']['console']['level'] = 'INFO'
|
# LOGGING['handlers']['console']['level'] = 'INFO'
|
||||||
|
|
||||||
|
# E-maily posílat chceme, ale do terminálu :-)
|
||||||
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
|
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
|
||||||
|
SEND_EMAIL_NOTIFICATIONS = True
|
||||||
|
|
|
@ -12,7 +12,7 @@ import os.path
|
||||||
# Import common settings
|
# Import common settings
|
||||||
from .settings_common import * # zatim nutne, casem snad vyresime # noqa
|
from .settings_common import * # zatim nutne, casem snad vyresime # noqa
|
||||||
|
|
||||||
MIDDLEWARE_CLASSES += (
|
MIDDLEWARE += (
|
||||||
'debug_toolbar.middleware.DebugToolbarMiddleware',
|
'debug_toolbar.middleware.DebugToolbarMiddleware',
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -32,7 +32,7 @@ DEBUG = True
|
||||||
|
|
||||||
TEMPLATES[0]['OPTIONS']['debug'] = True
|
TEMPLATES[0]['OPTIONS']['debug'] = True
|
||||||
|
|
||||||
ALLOWED_HOSTS = ['*.mam.mff.cuni.cz', 'atrey.karlin.mff.cuni.cz', 'mam.mff.cuni.cz', 'mam-test.kam.mff.cuni.cz', 'gimli.ms.mff.cuni.cz']
|
ALLOWED_HOSTS = ['*.mam.mff.cuni.cz', 'atrey.karlin.mff.cuni.cz', 'mam.mff.cuni.cz', 'mam-test.kam.mff.cuni.cz', 'gimli.ms.mff.cuni.cz', 'mam-test.ks.matfyz.cz']
|
||||||
|
|
||||||
# Database
|
# Database
|
||||||
# https://docs.djangoproject.com/en/1.7/ref/settings/#databases
|
# https://docs.djangoproject.com/en/1.7/ref/settings/#databases
|
||||||
|
|
|
@ -55,6 +55,8 @@ a:focus, a:hover, a:active {
|
||||||
|
|
||||||
img {
|
img {
|
||||||
filter: drop-shadow(0px 3px 3px rgba(0, 0, 0, 0.4));
|
filter: drop-shadow(0px 3px 3px rgba(0, 0, 0, 0.4));
|
||||||
|
max-width: 100%;
|
||||||
|
height: auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
h1 { /*todo: odlišit 1 a 2 */
|
h1 { /*todo: odlišit 1 a 2 */
|
||||||
|
@ -99,6 +101,26 @@ h6 {
|
||||||
color: black;
|
color: black;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.button {
|
||||||
|
margin: 10px 0px 10px 0px;
|
||||||
|
padding: 4px 0; /*vertikální centování textu*/
|
||||||
|
text-align: center;
|
||||||
|
background-color: #e84e10;
|
||||||
|
color: #fffbf6;
|
||||||
|
font-size: 150%;
|
||||||
|
font-weight: bold;
|
||||||
|
font-variant: small-caps;
|
||||||
|
filter: drop-shadow(0px 5px 5px rgba(0, 0, 0, 0.4));
|
||||||
|
}
|
||||||
|
|
||||||
|
.button:hover {
|
||||||
|
position: relative;
|
||||||
|
top: 2px;
|
||||||
|
left:2px;
|
||||||
|
background-color: #df490e;
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
.org-logged-in .mam-text-plugin {
|
.org-logged-in .mam-text-plugin {
|
||||||
border: dashed 1px #6a0043;
|
border: dashed 1px #6a0043;
|
||||||
|
@ -191,38 +213,6 @@ h1 {
|
||||||
top: 58px;
|
top: 58px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
fotky:
|
|
||||||
|
|
||||||
todo url
|
|
||||||
|
|
||||||
kryptografie
|
|
||||||
baliky
|
|
||||||
beh
|
|
||||||
mam_cernobile -pro archiv? asi ne
|
|
||||||
vylet
|
|
||||||
spolecna -spíš ne, moc lidí
|
|
||||||
snih
|
|
||||||
ohen
|
|
||||||
noc
|
|
||||||
stiny
|
|
||||||
vikendovka
|
|
||||||
*/
|
|
||||||
|
|
||||||
#header.cojemam { background-image: url("../images/header/vikendovka.jpg");}
|
|
||||||
#header.soustredeni { background-image: url("../images/header/beh.jpg");}
|
|
||||||
#header.zadani { background-image: url("../images/header/baliky.jpg");}
|
|
||||||
#header.clanky { background-image: url("../images/header/kryptografie.jpg");}
|
|
||||||
#header.archiv { background-image: url("../images/header/stiny.jpg");}
|
|
||||||
|
|
||||||
#header.NOC {background-image: url("../images/header/noc.jpg");}
|
|
||||||
#header.NOCcojemam { background-image: url("../images/header/noc.jpg");}
|
|
||||||
#header.NOCsoustredeni { background-image: url("../images/header/vylet.jpg");}
|
|
||||||
#header.NOCzadani { background-image: url("../images/header/stiny.jpg");}
|
|
||||||
#header.NOCclanky { background-image: url("../images/header/ohen.jpg");}
|
|
||||||
#header.NOCarchiv { background-image: url("../images/header/stiny.jpg");}
|
|
||||||
|
|
||||||
|
|
||||||
#header img.logo {
|
#header img.logo {
|
||||||
position: absolute center;
|
position: absolute center;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
@ -316,6 +306,14 @@ ul.submenu li>a:hover {
|
||||||
color: black;
|
color: black;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ul.menu li.active>a {
|
||||||
|
color: #f9d59e;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul.submenu li.active>a {
|
||||||
|
color: black;
|
||||||
|
}
|
||||||
|
|
||||||
/* konec nového menu */
|
/* konec nového menu */
|
||||||
|
|
||||||
div.novinky_name {
|
div.novinky_name {
|
||||||
|
@ -393,13 +391,82 @@ input[type="file"] {
|
||||||
}
|
}
|
||||||
|
|
||||||
.field-with-comment:hover span.field-comment{
|
.field-with-comment:hover span.field-comment{
|
||||||
display:block;
|
display: block;
|
||||||
}
|
}
|
||||||
|
|
||||||
input {
|
input {
|
||||||
margin: 5px;
|
margin: 5px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* titulni stranka */
|
||||||
|
|
||||||
|
.titulnistrana {
|
||||||
|
display: flex;
|
||||||
|
text-align: justify;
|
||||||
|
}
|
||||||
|
|
||||||
|
.titulnistrana h1 {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.zjistit_vic{
|
||||||
|
text-align: center;
|
||||||
|
margin-bottom: 30px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.zjistit_vic hr {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.graf-svg {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
#svg-graf {
|
||||||
|
width: 100%;
|
||||||
|
height: auto;
|
||||||
|
margin: 30px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.titulnistrana_obsah {
|
||||||
|
width: 66%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.vitej_titulka, .temata_titulka {
|
||||||
|
width: 49%;
|
||||||
|
padding: 10px;
|
||||||
|
display: table-cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
.titulnistrana_novinky {
|
||||||
|
width: 33%;
|
||||||
|
padding: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.novinka_obrazek {
|
||||||
|
margin: 10px 0px 10px 0px;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.novinka_datum {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.novinka_autor {
|
||||||
|
text-align: right;
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.org-text {
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.odpocet {
|
||||||
|
margin: 20px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
/**********************
|
/**********************
|
||||||
* Zmenšování displeje
|
* Zmenšování displeje
|
||||||
***********************/
|
***********************/
|
||||||
|
@ -429,42 +496,22 @@ input {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
div.novinky{
|
ul.menu {
|
||||||
max-width: 100%;
|
font-size: 90%;
|
||||||
margin-left: auto;
|
margin-top: -7px;
|
||||||
margin-right: auto;
|
|
||||||
float: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.graf{
|
|
||||||
width: 70%;
|
|
||||||
float: none;
|
|
||||||
margin-left: auto;
|
|
||||||
margin-right: auto;
|
|
||||||
margin-top: 10px;
|
|
||||||
}
|
|
||||||
#svg-graf{
|
|
||||||
width: 100%;
|
|
||||||
height: auto;;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ul.menu {
|
ul.menu li {
|
||||||
font-size: 90%;
|
margin-top: 10px; /* posunutí textu hlavního menu níže */
|
||||||
margin-top: -7px;
|
}
|
||||||
}
|
|
||||||
|
|
||||||
ul.menu li {
|
ul.submenu li {
|
||||||
margin-top: 10px; /* posunutí textu hlavního menu níže */
|
margin-top: 0px; /* aby se spolu s textem hlavního menu neposunoval níže i text submenu */
|
||||||
}
|
}
|
||||||
|
|
||||||
ul.submenu li {
|
|
||||||
margin-top: 0px; /* aby se spolu s textem hlavního menu neposunoval níže i text submenu */
|
|
||||||
}
|
|
||||||
|
|
||||||
ul.submenu {
|
|
||||||
margin-top: 8px; /* mezera mezi hlavním menu a submenu */
|
|
||||||
}
|
|
||||||
|
|
||||||
|
ul.submenu {
|
||||||
|
margin-top: 8px; /* mezera mezi hlavním menu a submenu */
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -496,11 +543,53 @@ ul.submenu {
|
||||||
display: inline-grid;
|
display: inline-grid;
|
||||||
max-width: 300px;
|
max-width: 300px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* titulni stranka */
|
||||||
|
|
||||||
|
.titulnistrana {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.graf {
|
||||||
|
padding-top: 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.titulnistrana_obsah {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.vitej_titulka, .temata_titulka {
|
||||||
|
width: 49%;
|
||||||
|
padding: 10px;
|
||||||
|
display: table-cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
.titulnistrana_novinky {
|
||||||
|
width: 100%;
|
||||||
|
max-width: 500px;
|
||||||
|
padding: 10px;
|
||||||
|
margin: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
#svg-graf {
|
||||||
|
width: 100%;
|
||||||
|
max-width: 500px;
|
||||||
|
padding: 10px;
|
||||||
|
margin: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.zjistit_vic hr {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* malý tablet, mobil */
|
/* malý tablet, mobil */
|
||||||
@media (max-width: 650px) {
|
@media (max-width: 650px) {
|
||||||
|
|
||||||
|
.no-mobile{
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
#hide-if-small.login-bar-flatpage {
|
#hide-if-small.login-bar-flatpage {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
@ -637,19 +726,35 @@ ul.submenu {
|
||||||
text-align: justify;
|
text-align: justify;
|
||||||
}
|
}
|
||||||
|
|
||||||
div.novinky {
|
|
||||||
max-width: 100%;
|
|
||||||
float: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.graf {
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
table.form td, table.form tr {
|
table.form td, table.form tr {
|
||||||
display: inherit;
|
display: inherit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* titulni stranka */
|
||||||
|
|
||||||
|
.titulnistrana {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.graf {
|
||||||
|
padding-top: 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.titulnistrana_obsah {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.vitej_titulka, .temata_titulka {
|
||||||
|
width: 100%;
|
||||||
|
padding: 10px;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.titulnistrana_novinky {
|
||||||
|
width: 100%;
|
||||||
|
padding: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*stránka organizátorů*/
|
/*stránka organizátorů*/
|
||||||
|
@ -730,11 +835,6 @@ div.org_email {
|
||||||
backface-visibility: hidden;
|
backface-visibility: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Style the front side (fallback if image is missing) */
|
|
||||||
.flip-card-front {
|
|
||||||
background-color: #bbb;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.flip-card-foto img {
|
div.flip-card-foto img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
@ -750,6 +850,10 @@ div.flip-card-foto img {
|
||||||
padding-top: 20px;
|
padding-top: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#archiv.flip-card-back {
|
||||||
|
background-color: white;
|
||||||
|
}
|
||||||
|
|
||||||
/* karty archiv */
|
/* karty archiv */
|
||||||
|
|
||||||
div.popis_rocniku {
|
div.popis_rocniku {
|
||||||
|
@ -946,45 +1050,8 @@ div.cislo_odkazy ul {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* titulni stranka */
|
/**/
|
||||||
|
|
||||||
.zjistit_vic{
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.graf{
|
|
||||||
float: left;
|
|
||||||
}
|
|
||||||
|
|
||||||
.novinky{
|
|
||||||
float: right;
|
|
||||||
max-width: 42%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.novinka_obrazek img {
|
|
||||||
margin-bottom: 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.novinka_obrazek {
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.org-text {
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.nahledy_cisel {
|
|
||||||
float: right;
|
|
||||||
height: 297px;
|
|
||||||
width: 420px;
|
|
||||||
position: relative;
|
|
||||||
margin-right: 10%;
|
|
||||||
margin-bottom: 50px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.nahledy_cisel div, div.nahledy_cisel img {
|
|
||||||
position: absolute;
|
|
||||||
}
|
|
||||||
ul.form {
|
ul.form {
|
||||||
list-style-type: none;
|
list-style-type: none;
|
||||||
padding-left: 0px;
|
padding-left: 0px;
|
||||||
|
@ -1009,3 +1076,20 @@ p.gdpr {
|
||||||
div.gdpr {
|
div.gdpr {
|
||||||
font-size: 6pt;
|
font-size: 6pt;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Jak řešit */
|
||||||
|
|
||||||
|
.jakresit img {
|
||||||
|
width: 33%;
|
||||||
|
padding: 10px;
|
||||||
|
filter: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media(max-width: 860px) {
|
||||||
|
.jakresit img {
|
||||||
|
margin: auto;
|
||||||
|
display: grid;
|
||||||
|
width: 100%;
|
||||||
|
max-width: 360px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
26847
mamweb/static/images/jakresit_1.svg
Normal file
After Width: | Height: | Size: 1.8 MiB |
26847
mamweb/static/images/jakresit_2.svg
Normal file
After Width: | Height: | Size: 1.8 MiB |
26847
mamweb/static/images/jakresit_3.svg
Normal file
After Width: | Height: | Size: 1.8 MiB |
208
mamweb/static/images/logo_1.svg
Normal file
|
@ -0,0 +1,208 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
version="1.1"
|
||||||
|
id="svg2"
|
||||||
|
xml:space="preserve"
|
||||||
|
width="1116.5013"
|
||||||
|
height="404.98737"
|
||||||
|
viewBox="0 0 1116.5013 404.98736"
|
||||||
|
sodipodi:docname="logo_co-je-mam.svg"
|
||||||
|
inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"><metadata
|
||||||
|
id="metadata8"><rdf:RDF><cc:Work
|
||||||
|
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
|
||||||
|
id="defs6" /><sodipodi:namedview
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1"
|
||||||
|
objecttolerance="10"
|
||||||
|
gridtolerance="10"
|
||||||
|
guidetolerance="10"
|
||||||
|
inkscape:pageopacity="0"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:window-width="1916"
|
||||||
|
inkscape:window-height="1151"
|
||||||
|
id="namedview4"
|
||||||
|
showgrid="true"
|
||||||
|
inkscape:zoom="1.1893563"
|
||||||
|
inkscape:cx="542.48119"
|
||||||
|
inkscape:cy="65.762526"
|
||||||
|
inkscape:window-x="1922"
|
||||||
|
inkscape:window-y="47"
|
||||||
|
inkscape:window-maximized="1"
|
||||||
|
inkscape:current-layer="g12"
|
||||||
|
inkscape:snap-page="true"><inkscape:grid
|
||||||
|
type="xygrid"
|
||||||
|
id="grid903"
|
||||||
|
originx="-3.4986323"
|
||||||
|
originy="-416.4963" /></sodipodi:namedview><g
|
||||||
|
id="g10"
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
inkscape:label="ink_ext_XXXXXX"
|
||||||
|
transform="matrix(1.3333333,0,0,-1.3333333,-3.4986322,821.48366)"><g
|
||||||
|
id="g12"
|
||||||
|
transform="scale(0.1)"><path
|
||||||
|
d="m 8335.3454,4798.1624 -595.1505,-620.7555 h -585.3165 l 595.2607,620.7555 h 585.2063"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.18195856"
|
||||||
|
id="path14"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7078.5791,4120.5393 h -0.5073 l 0.2556,0.2663 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:0.94117647;fill-rule:nonzero;stroke:none;stroke-width:0.93578213"
|
||||||
|
id="path38"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7102.4996,4177.5001 -0.089,-0.093 h -708.1905 v 738.7467 l 708.2801,-738.6537"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.99787205"
|
||||||
|
id="path40"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6937.5002,4101.5435 v -464.0434 h -444.9049 v 464.0434 h 444.9049"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.88309515"
|
||||||
|
id="path42"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 6337.5002,5718.9966 V 5062.5001 L 6022.709,5390.7482 Z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89475256"
|
||||||
|
id="path44"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 5962.5001,4650.0001 -337.5,337.5 337.5,337.5 337.5001,-337.5 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.95725137"
|
||||||
|
id="path46"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6420.0002,3637.5001 v 465 l -457.5001,1.0607 -330,-466.0607 c 166.1399,-0.083 621.3604,0 787.5001,0 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.6284067"
|
||||||
|
id="path40-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 5587.5001,5719.164 v -656.6639 l 314.8715,328.332 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89498103"
|
||||||
|
id="path44-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 6000.0001,4575.0001 v -394.33 l 314.7902,-1.1147 c -6.0705,262.4914 -52.96,471.0265 -314.7902,395.4447 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89475173"
|
||||||
|
id="path44-3-2"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 6320.8633,4912.5001 -6.073,-732.9447 -314.7902,395.4447 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89933741"
|
||||||
|
id="path44-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="M 1387.5,3106.9263 26.145617,3112.5 26.239743,3429.3745 1387.5,3732.5654 Z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 2775.0001,3109.1558 H 1462.5 v 640.8443 l 525,-112.5001 787.5001,206.4179 z"
|
||||||
|
style="fill:#f7cb87;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 4237.5001,3110.2705 h -1387.5 l 0,752.2296 675,150 712.5,-246.8936 z"
|
||||||
|
style="fill:#f7cb87;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 5550.0001,3112.5 h -1237.5 l 0,626.1475 618.75,-176.1474 h 618.75 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 6937.5002,3105.8115 -1312.5001,-1.1287 0,457.8173 h 1312.5001 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 8417.4395,3112.5 -1404.9393,-3.3582 v 453.3585 l 1405.2097,262.4998 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5496583"
|
||||||
|
id="path42-2-0"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 8328.8772,3870.0686 -1316.377,-232.5685 v 465 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-0-4"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7290.0002,4106.2559 1127.4393,-188.0235 1.5764,187.55 z"
|
||||||
|
style="fill:#fce7c6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.49430776"
|
||||||
|
id="path42-2-0-4-1"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7928.737,4175.1068 0.056,-0.059 490.363,0.083 -1.6663,624.8689 -595.4746,-624.9521"
|
||||||
|
style="fill:#fce7c6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.61935329"
|
||||||
|
id="path40-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7447.5002,4575.0001 -322.5,-337.5 -300,337.5 h 622.5"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.95725137"
|
||||||
|
id="path46-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 5925.0001,4575.0001 0,-392.8359 -337.5,280.3359 0,450 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.64549828"
|
||||||
|
id="path14-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 5887.5001,4125.0001 -337.5,-487.5 h -600 l 600,766.3199 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5409205"
|
||||||
|
id="path42-2-6-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fef6eb;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.25494003;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 5234.2851,6184.7748 1476.9917,14.5116 -447.5529,-438.1391 c -176.9133,-173.1921 -301.1716,-305.5968 -301.2238,-305.5968 -242.6593,249.8656 -457.1495,460.2945 -728.215,729.2243 z"
|
||||||
|
id="path1203"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccscc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.84425163;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 6396.6887,5762.3467 353.3115,363.8943 V 4650.0001 l -351.0821,375 z"
|
||||||
|
id="path1201-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:17.39934158;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 6825.0002,5400.0001 c 0,0 591.4391,-696.4314 637.5,-750 l -320.7729,0 h -316.7271 z"
|
||||||
|
id="path1199-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7462.5002,5400.0001 0,-637.5 -637.5,750 0,600 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.16200352"
|
||||||
|
id="path14-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7800.0002,4875.0001 0,1295.0654 600,3.3442 0,-1298.4097 z"
|
||||||
|
style="fill:#fef6eb;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.52054787"
|
||||||
|
id="path42-2-6-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6839.0906,6172.2949 v 0 l 885.9096,-2.2294 0,-920.0654 -885.9096,922.2948"
|
||||||
|
style="fill:#fef6eb;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.21138752"
|
||||||
|
id="path40-0"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:9.21227551;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 7725.0002,5137.5001 -187.5,199.7622 v -649.7622 l 187.5,206.4178 z"
|
||||||
|
id="path1201-3-1"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 1387.5,3787.5001 562.50001,3617.6989 v 448.4953 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.09587288"
|
||||||
|
id="path42-2-0-4-1-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
style="opacity:1;fill:#f9d59e;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.52051163;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 487.50001,4087.5001 -465.000009,165 V 3480 l 465.000009,120.0001 z"
|
||||||
|
id="path1201-3-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /></g></g></svg>
|
After Width: | Height: | Size: 11 KiB |
208
mamweb/static/images/logo_2.svg
Normal file
|
@ -0,0 +1,208 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
version="1.1"
|
||||||
|
id="svg2"
|
||||||
|
xml:space="preserve"
|
||||||
|
width="1116.5013"
|
||||||
|
height="404.98737"
|
||||||
|
viewBox="0 0 1116.5013 404.98736"
|
||||||
|
sodipodi:docname="logo_jak-resit.svg"
|
||||||
|
inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"><metadata
|
||||||
|
id="metadata8"><rdf:RDF><cc:Work
|
||||||
|
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
|
||||||
|
id="defs6" /><sodipodi:namedview
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1"
|
||||||
|
objecttolerance="10"
|
||||||
|
gridtolerance="10"
|
||||||
|
guidetolerance="10"
|
||||||
|
inkscape:pageopacity="0"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:window-width="1916"
|
||||||
|
inkscape:window-height="1151"
|
||||||
|
id="namedview4"
|
||||||
|
showgrid="true"
|
||||||
|
inkscape:zoom="1.1893563"
|
||||||
|
inkscape:cx="542.48119"
|
||||||
|
inkscape:cy="65.762526"
|
||||||
|
inkscape:window-x="1922"
|
||||||
|
inkscape:window-y="47"
|
||||||
|
inkscape:window-maximized="1"
|
||||||
|
inkscape:current-layer="g12"
|
||||||
|
inkscape:snap-page="true"><inkscape:grid
|
||||||
|
type="xygrid"
|
||||||
|
id="grid903"
|
||||||
|
originx="-3.4986323"
|
||||||
|
originy="-416.4963" /></sodipodi:namedview><g
|
||||||
|
id="g10"
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
inkscape:label="ink_ext_XXXXXX"
|
||||||
|
transform="matrix(1.3333333,0,0,-1.3333333,-3.4986322,821.48366)"><g
|
||||||
|
id="g12"
|
||||||
|
transform="scale(0.1)"><path
|
||||||
|
d="m 8335.3454,4798.1624 -595.1505,-620.7555 h -585.3165 l 595.2607,620.7555 h 585.2063"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.18195856"
|
||||||
|
id="path14"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7078.5791,4120.5393 h -0.5073 l 0.2556,0.2663 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:0.94117647;fill-rule:nonzero;stroke:none;stroke-width:0.93578213"
|
||||||
|
id="path38"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7102.4996,4177.5001 -0.089,-0.093 h -708.1905 v 738.7467 l 708.2801,-738.6537"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.99787205"
|
||||||
|
id="path40"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6937.5002,4101.5435 v -464.0434 h -444.9049 v 464.0434 h 444.9049"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.88309515"
|
||||||
|
id="path42"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 6337.5002,5718.9966 V 5062.5001 L 6022.709,5390.7482 Z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89475256"
|
||||||
|
id="path44"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 5962.5001,4650.0001 -337.5,337.5 337.5,337.5 337.5001,-337.5 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.95725137"
|
||||||
|
id="path46"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6420.0002,3637.5001 v 465 l -457.5001,1.0607 -330,-466.0607 c 166.1399,-0.083 621.3604,0 787.5001,0 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.6284067"
|
||||||
|
id="path40-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 5587.5001,5719.164 v -656.6639 l 314.8715,328.332 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89498103"
|
||||||
|
id="path44-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 6000.0001,4575.0001 v -394.33 l 314.7902,-1.1147 c -6.0705,262.4914 -52.96,471.0265 -314.7902,395.4447 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89475173"
|
||||||
|
id="path44-3-2"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 6320.8633,4912.5001 -6.073,-732.9447 -314.7902,395.4447 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89933741"
|
||||||
|
id="path44-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="M 1387.5,3106.9263 26.145617,3112.5 26.239743,3429.3745 1387.5,3732.5654 Z"
|
||||||
|
style="fill:#f7cb87;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 2775.0001,3109.1558 H 1462.5 v 640.8443 l 525,-112.5001 787.5001,206.4179 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 4237.5001,3110.2705 h -1387.5 l 0,752.2296 675,150 712.5,-246.8936 z"
|
||||||
|
style="fill:#f7cb87;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 5550.0001,3112.5 h -1237.5 l 0,626.1475 618.75,-176.1474 h 618.75 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 6937.5002,3105.8115 -1312.5001,-1.1287 0,457.8173 h 1312.5001 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 8417.4395,3112.5 -1404.9393,-3.3582 v 453.3585 l 1405.2097,262.4998 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5496583"
|
||||||
|
id="path42-2-0"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 8328.8772,3870.0686 -1316.377,-232.5685 v 465 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-0-4"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7290.0002,4106.2559 1127.4393,-188.0235 1.5764,187.55 z"
|
||||||
|
style="fill:#fce7c6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.49430776"
|
||||||
|
id="path42-2-0-4-1"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7928.737,4175.1068 0.056,-0.059 490.363,0.083 -1.6663,624.8689 -595.4746,-624.9521"
|
||||||
|
style="fill:#fce7c6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.61935329"
|
||||||
|
id="path40-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7447.5002,4575.0001 -322.5,-337.5 -300,337.5 h 622.5"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.95725137"
|
||||||
|
id="path46-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 5925.0001,4575.0001 0,-392.8359 -337.5,280.3359 0,450 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.64549828"
|
||||||
|
id="path14-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 5887.5001,4125.0001 -337.5,-487.5 h -600 l 600,766.3199 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5409205"
|
||||||
|
id="path42-2-6-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fef6eb;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.25494003;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 5234.2851,6184.7748 1476.9917,14.5116 -447.5529,-438.1391 c -176.9133,-173.1921 -301.1716,-305.5968 -301.2238,-305.5968 -242.6593,249.8656 -457.1495,460.2945 -728.215,729.2243 z"
|
||||||
|
id="path1203"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccscc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.84425163;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 6396.6887,5762.3467 353.3115,363.8943 V 4650.0001 l -351.0821,375 z"
|
||||||
|
id="path1201-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:17.39934158;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 6825.0002,5400.0001 c 0,0 591.4391,-696.4314 637.5,-750 l -320.7729,0 h -316.7271 z"
|
||||||
|
id="path1199-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7462.5002,5400.0001 0,-637.5 -637.5,750 0,600 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.16200352"
|
||||||
|
id="path14-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7800.0002,4875.0001 0,1295.0654 600,3.3442 0,-1298.4097 z"
|
||||||
|
style="fill:#fef6eb;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.52054787"
|
||||||
|
id="path42-2-6-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6839.0906,6172.2949 v 0 l 885.9096,-2.2294 0,-920.0654 -885.9096,922.2948"
|
||||||
|
style="fill:#fef6eb;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.21138752"
|
||||||
|
id="path40-0"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:9.21227551;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 7725.0002,5137.5001 -187.5,199.7622 v -649.7622 l 187.5,206.4178 z"
|
||||||
|
id="path1201-3-1"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 1387.5,3787.5001 562.50001,3617.6989 v 448.4953 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.09587288"
|
||||||
|
id="path42-2-0-4-1-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
style="opacity:1;fill:#f9d59e;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.52051163;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 487.50001,4087.5001 -465.000009,165 V 3480 l 465.000009,120.0001 z"
|
||||||
|
id="path1201-3-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /></g></g></svg>
|
After Width: | Height: | Size: 11 KiB |
208
mamweb/static/images/logo_3.svg
Normal file
|
@ -0,0 +1,208 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
version="1.1"
|
||||||
|
id="svg2"
|
||||||
|
xml:space="preserve"
|
||||||
|
width="1116.5013"
|
||||||
|
height="404.98737"
|
||||||
|
viewBox="0 0 1116.5013 404.98736"
|
||||||
|
sodipodi:docname="logo_aktualni.svg"
|
||||||
|
inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"><metadata
|
||||||
|
id="metadata8"><rdf:RDF><cc:Work
|
||||||
|
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
|
||||||
|
id="defs6" /><sodipodi:namedview
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1"
|
||||||
|
objecttolerance="10"
|
||||||
|
gridtolerance="10"
|
||||||
|
guidetolerance="10"
|
||||||
|
inkscape:pageopacity="0"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:window-width="1916"
|
||||||
|
inkscape:window-height="1151"
|
||||||
|
id="namedview4"
|
||||||
|
showgrid="true"
|
||||||
|
inkscape:zoom="1.1893563"
|
||||||
|
inkscape:cx="542.48119"
|
||||||
|
inkscape:cy="65.762526"
|
||||||
|
inkscape:window-x="1922"
|
||||||
|
inkscape:window-y="47"
|
||||||
|
inkscape:window-maximized="1"
|
||||||
|
inkscape:current-layer="g12"
|
||||||
|
inkscape:snap-page="true"><inkscape:grid
|
||||||
|
type="xygrid"
|
||||||
|
id="grid903"
|
||||||
|
originx="-3.4986323"
|
||||||
|
originy="-416.4963" /></sodipodi:namedview><g
|
||||||
|
id="g10"
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
inkscape:label="ink_ext_XXXXXX"
|
||||||
|
transform="matrix(1.3333333,0,0,-1.3333333,-3.4986322,821.48366)"><g
|
||||||
|
id="g12"
|
||||||
|
transform="scale(0.1)"><path
|
||||||
|
d="m 8335.3454,4798.1624 -595.1505,-620.7555 h -585.3165 l 595.2607,620.7555 h 585.2063"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.18195856"
|
||||||
|
id="path14"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7078.5791,4120.5393 h -0.5073 l 0.2556,0.2663 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:0.94117647;fill-rule:nonzero;stroke:none;stroke-width:0.93578213"
|
||||||
|
id="path38"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7102.4996,4177.5001 -0.089,-0.093 h -708.1905 v 738.7467 l 708.2801,-738.6537"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.99787205"
|
||||||
|
id="path40"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6937.5002,4101.5435 v -464.0434 h -444.9049 v 464.0434 h 444.9049"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.88309515"
|
||||||
|
id="path42"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 6337.5002,5718.9966 V 5062.5001 L 6022.709,5390.7482 Z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89475256"
|
||||||
|
id="path44"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 5962.5001,4650.0001 -337.5,337.5 337.5,337.5 337.5001,-337.5 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.95725137"
|
||||||
|
id="path46"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6420.0002,3637.5001 v 465 l -457.5001,1.0607 -330,-466.0607 c 166.1399,-0.083 621.3604,0 787.5001,0 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.6284067"
|
||||||
|
id="path40-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 5587.5001,5719.164 v -656.6639 l 314.8715,328.332 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89498103"
|
||||||
|
id="path44-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 6000.0001,4575.0001 v -394.33 l 314.7902,-1.1147 c -6.0705,262.4914 -52.96,471.0265 -314.7902,395.4447 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89475173"
|
||||||
|
id="path44-3-2"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 6320.8633,4912.5001 -6.073,-732.9447 -314.7902,395.4447 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89933741"
|
||||||
|
id="path44-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="M 1387.5,3106.9263 26.145617,3112.5 26.239743,3429.3745 1387.5,3732.5654 Z"
|
||||||
|
style="fill:#f7cb87;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 2775.0001,3109.1558 H 1462.5 v 640.8443 l 525,-112.5001 787.5001,206.4179 z"
|
||||||
|
style="fill:#f7cb87;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 4237.5001,3110.2705 h -1387.5 l 0,752.2296 675,150 712.5,-246.8936 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 5550.0001,3112.5 h -1237.5 l 0,626.1475 618.75,-176.1474 h 618.75 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 6937.5002,3105.8115 -1312.5001,-1.1287 0,457.8173 h 1312.5001 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 8417.4395,3112.5 -1404.9393,-3.3582 v 453.3585 l 1405.2097,262.4998 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5496583"
|
||||||
|
id="path42-2-0"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 8328.8772,3870.0686 -1316.377,-232.5685 v 465 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-0-4"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7290.0002,4106.2559 1127.4393,-188.0235 1.5764,187.55 z"
|
||||||
|
style="fill:#fce7c6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.49430776"
|
||||||
|
id="path42-2-0-4-1"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7928.737,4175.1068 0.056,-0.059 490.363,0.083 -1.6663,624.8689 -595.4746,-624.9521"
|
||||||
|
style="fill:#fce7c6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.61935329"
|
||||||
|
id="path40-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7447.5002,4575.0001 -322.5,-337.5 -300,337.5 h 622.5"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.95725137"
|
||||||
|
id="path46-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 5925.0001,4575.0001 0,-392.8359 -337.5,280.3359 0,450 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.64549828"
|
||||||
|
id="path14-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 5887.5001,4125.0001 -337.5,-487.5 h -600 l 600,766.3199 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5409205"
|
||||||
|
id="path42-2-6-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fef6eb;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.25494003;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 5234.2851,6184.7748 1476.9917,14.5116 -447.5529,-438.1391 c -176.9133,-173.1921 -301.1716,-305.5968 -301.2238,-305.5968 -242.6593,249.8656 -457.1495,460.2945 -728.215,729.2243 z"
|
||||||
|
id="path1203"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccscc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.84425163;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 6396.6887,5762.3467 353.3115,363.8943 V 4650.0001 l -351.0821,375 z"
|
||||||
|
id="path1201-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:17.39934158;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 6825.0002,5400.0001 c 0,0 591.4391,-696.4314 637.5,-750 l -320.7729,0 h -316.7271 z"
|
||||||
|
id="path1199-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7462.5002,5400.0001 0,-637.5 -637.5,750 0,600 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.16200352"
|
||||||
|
id="path14-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7800.0002,4875.0001 0,1295.0654 600,3.3442 0,-1298.4097 z"
|
||||||
|
style="fill:#fef6eb;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.52054787"
|
||||||
|
id="path42-2-6-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6839.0906,6172.2949 v 0 l 885.9096,-2.2294 0,-920.0654 -885.9096,922.2948"
|
||||||
|
style="fill:#fef6eb;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.21138752"
|
||||||
|
id="path40-0"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:9.21227551;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 7725.0002,5137.5001 -187.5,199.7622 v -649.7622 l 187.5,206.4178 z"
|
||||||
|
id="path1201-3-1"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 1387.5,3787.5001 562.50001,3617.6989 v 448.4953 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.09587288"
|
||||||
|
id="path42-2-0-4-1-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
style="opacity:1;fill:#f9d59e;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.52051163;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 487.50001,4087.5001 -465.000009,165 V 3480 l 465.000009,120.0001 z"
|
||||||
|
id="path1201-3-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /></g></g></svg>
|
After Width: | Height: | Size: 11 KiB |
208
mamweb/static/images/logo_4.svg
Normal file
|
@ -0,0 +1,208 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
version="1.1"
|
||||||
|
id="svg2"
|
||||||
|
xml:space="preserve"
|
||||||
|
width="1116.5013"
|
||||||
|
height="404.98737"
|
||||||
|
viewBox="0 0 1116.5013 404.98736"
|
||||||
|
sodipodi:docname="logo_soustredeni.svg"
|
||||||
|
inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"><metadata
|
||||||
|
id="metadata8"><rdf:RDF><cc:Work
|
||||||
|
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
|
||||||
|
id="defs6" /><sodipodi:namedview
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1"
|
||||||
|
objecttolerance="10"
|
||||||
|
gridtolerance="10"
|
||||||
|
guidetolerance="10"
|
||||||
|
inkscape:pageopacity="0"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:window-width="1916"
|
||||||
|
inkscape:window-height="1151"
|
||||||
|
id="namedview4"
|
||||||
|
showgrid="true"
|
||||||
|
inkscape:zoom="1.1893563"
|
||||||
|
inkscape:cx="542.48119"
|
||||||
|
inkscape:cy="65.762526"
|
||||||
|
inkscape:window-x="1922"
|
||||||
|
inkscape:window-y="47"
|
||||||
|
inkscape:window-maximized="1"
|
||||||
|
inkscape:current-layer="g12"
|
||||||
|
inkscape:snap-page="true"><inkscape:grid
|
||||||
|
type="xygrid"
|
||||||
|
id="grid903"
|
||||||
|
originx="-3.4986323"
|
||||||
|
originy="-416.4963" /></sodipodi:namedview><g
|
||||||
|
id="g10"
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
inkscape:label="ink_ext_XXXXXX"
|
||||||
|
transform="matrix(1.3333333,0,0,-1.3333333,-3.4986322,821.48366)"><g
|
||||||
|
id="g12"
|
||||||
|
transform="scale(0.1)"><path
|
||||||
|
d="m 8335.3454,4798.1624 -595.1505,-620.7555 h -585.3165 l 595.2607,620.7555 h 585.2063"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.18195856"
|
||||||
|
id="path14"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7078.5791,4120.5393 h -0.5073 l 0.2556,0.2663 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:0.94117647;fill-rule:nonzero;stroke:none;stroke-width:0.93578213"
|
||||||
|
id="path38"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7102.4996,4177.5001 -0.089,-0.093 h -708.1905 v 738.7467 l 708.2801,-738.6537"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.99787205"
|
||||||
|
id="path40"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6937.5002,4101.5435 v -464.0434 h -444.9049 v 464.0434 h 444.9049"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.88309515"
|
||||||
|
id="path42"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 6337.5002,5718.9966 V 5062.5001 L 6022.709,5390.7482 Z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89475256"
|
||||||
|
id="path44"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 5962.5001,4650.0001 -337.5,337.5 337.5,337.5 337.5001,-337.5 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.95725137"
|
||||||
|
id="path46"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6420.0002,3637.5001 v 465 l -457.5001,1.0607 -330,-466.0607 c 166.1399,-0.083 621.3604,0 787.5001,0 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.6284067"
|
||||||
|
id="path40-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 5587.5001,5719.164 v -656.6639 l 314.8715,328.332 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89498103"
|
||||||
|
id="path44-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 6000.0001,4575.0001 v -394.33 l 314.7902,-1.1147 c -6.0705,262.4914 -52.96,471.0265 -314.7902,395.4447 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89475173"
|
||||||
|
id="path44-3-2"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 6320.8633,4912.5001 -6.073,-732.9447 -314.7902,395.4447 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89933741"
|
||||||
|
id="path44-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="M 1387.5,3106.9263 26.145617,3112.5 26.239743,3429.3745 1387.5,3732.5654 Z"
|
||||||
|
style="fill:#f7cb87;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 2775.0001,3109.1558 H 1462.5 v 640.8443 l 525,-112.5001 787.5001,206.4179 z"
|
||||||
|
style="fill:#f7cb87;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 4237.5001,3110.2705 h -1387.5 l 0,752.2296 675,150 712.5,-246.8936 z"
|
||||||
|
style="fill:#f7cb87;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 5550.0001,3112.5 h -1237.5 l 0,626.1475 618.75,-176.1474 h 618.75 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 6937.5002,3105.8115 -1312.5001,-1.1287 0,457.8173 h 1312.5001 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 8417.4395,3112.5 -1404.9393,-3.3582 v 453.3585 l 1405.2097,262.4998 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5496583"
|
||||||
|
id="path42-2-0"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 8328.8772,3870.0686 -1316.377,-232.5685 v 465 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-0-4"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7290.0002,4106.2559 1127.4393,-188.0235 1.5764,187.55 z"
|
||||||
|
style="fill:#fce7c6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.49430776"
|
||||||
|
id="path42-2-0-4-1"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7928.737,4175.1068 0.056,-0.059 490.363,0.083 -1.6663,624.8689 -595.4746,-624.9521"
|
||||||
|
style="fill:#fce7c6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.61935329"
|
||||||
|
id="path40-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7447.5002,4575.0001 -322.5,-337.5 -300,337.5 h 622.5"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.95725137"
|
||||||
|
id="path46-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 5925.0001,4575.0001 0,-392.8359 -337.5,280.3359 0,450 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.64549828"
|
||||||
|
id="path14-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 5887.5001,4125.0001 -337.5,-487.5 h -600 l 600,766.3199 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5409205"
|
||||||
|
id="path42-2-6-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fef6eb;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.25494003;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 5234.2851,6184.7748 1476.9917,14.5116 -447.5529,-438.1391 c -176.9133,-173.1921 -301.1716,-305.5968 -301.2238,-305.5968 -242.6593,249.8656 -457.1495,460.2945 -728.215,729.2243 z"
|
||||||
|
id="path1203"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccscc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.84425163;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 6396.6887,5762.3467 353.3115,363.8943 V 4650.0001 l -351.0821,375 z"
|
||||||
|
id="path1201-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:17.39934158;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 6825.0002,5400.0001 c 0,0 591.4391,-696.4314 637.5,-750 l -320.7729,0 h -316.7271 z"
|
||||||
|
id="path1199-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7462.5002,5400.0001 0,-637.5 -637.5,750 0,600 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.16200352"
|
||||||
|
id="path14-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7800.0002,4875.0001 0,1295.0654 600,3.3442 0,-1298.4097 z"
|
||||||
|
style="fill:#fef6eb;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.52054787"
|
||||||
|
id="path42-2-6-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6839.0906,6172.2949 v 0 l 885.9096,-2.2294 0,-920.0654 -885.9096,922.2948"
|
||||||
|
style="fill:#fef6eb;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.21138752"
|
||||||
|
id="path40-0"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:9.21227551;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 7725.0002,5137.5001 -187.5,199.7622 v -649.7622 l 187.5,206.4178 z"
|
||||||
|
id="path1201-3-1"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 1387.5,3787.5001 562.50001,3617.6989 v 448.4953 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.09587288"
|
||||||
|
id="path42-2-0-4-1-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
style="opacity:1;fill:#f9d59e;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.52051163;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 487.50001,4087.5001 -465.000009,165 V 3480 l 465.000009,120.0001 z"
|
||||||
|
id="path1201-3-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /></g></g></svg>
|
After Width: | Height: | Size: 11 KiB |
208
mamweb/static/images/logo_5.svg
Normal file
|
@ -0,0 +1,208 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
version="1.1"
|
||||||
|
id="svg2"
|
||||||
|
xml:space="preserve"
|
||||||
|
width="1116.5013"
|
||||||
|
height="404.98737"
|
||||||
|
viewBox="0 0 1116.5013 404.98736"
|
||||||
|
sodipodi:docname="logo_archiv.svg"
|
||||||
|
inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"><metadata
|
||||||
|
id="metadata8"><rdf:RDF><cc:Work
|
||||||
|
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title /></cc:Work></rdf:RDF></metadata><defs
|
||||||
|
id="defs6" /><sodipodi:namedview
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1"
|
||||||
|
objecttolerance="10"
|
||||||
|
gridtolerance="10"
|
||||||
|
guidetolerance="10"
|
||||||
|
inkscape:pageopacity="0"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:window-width="1916"
|
||||||
|
inkscape:window-height="1031"
|
||||||
|
id="namedview4"
|
||||||
|
showgrid="true"
|
||||||
|
inkscape:zoom="1.1893563"
|
||||||
|
inkscape:cx="1110.6877"
|
||||||
|
inkscape:cy="92.60589"
|
||||||
|
inkscape:window-x="2"
|
||||||
|
inkscape:window-y="47"
|
||||||
|
inkscape:window-maximized="1"
|
||||||
|
inkscape:current-layer="g12"
|
||||||
|
inkscape:snap-page="true"><inkscape:grid
|
||||||
|
type="xygrid"
|
||||||
|
id="grid903"
|
||||||
|
originx="-3.4986323"
|
||||||
|
originy="-416.4963" /></sodipodi:namedview><g
|
||||||
|
id="g10"
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
inkscape:label="ink_ext_XXXXXX"
|
||||||
|
transform="matrix(1.3333333,0,0,-1.3333333,-3.4986322,821.48366)"><g
|
||||||
|
id="g12"
|
||||||
|
transform="scale(0.1)"><path
|
||||||
|
d="m 8335.3454,4798.1624 -595.1505,-620.7555 h -585.3165 l 595.2607,620.7555 h 585.2063"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.18195856"
|
||||||
|
id="path14"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7078.5791,4120.5393 h -0.5073 l 0.2556,0.2663 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:0.94117647;fill-rule:nonzero;stroke:none;stroke-width:0.93578213"
|
||||||
|
id="path38"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7102.4996,4177.5001 -0.089,-0.093 h -708.1905 v 738.7467 l 708.2801,-738.6537"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.99787205"
|
||||||
|
id="path40"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6937.5002,4101.5435 v -464.0434 h -444.9049 v 464.0434 h 444.9049"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.88309515"
|
||||||
|
id="path42"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 6337.5002,5718.9966 V 5062.5001 L 6022.709,5390.7482 Z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89475256"
|
||||||
|
id="path44"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 5962.5001,4650.0001 -337.5,337.5 337.5,337.5 337.5001,-337.5 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.95725137"
|
||||||
|
id="path46"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6420.0002,3637.5001 v 465 l -457.5001,1.0607 -330,-466.0607 c 166.1399,-0.083 621.3604,0 787.5001,0 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.6284067"
|
||||||
|
id="path40-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 5587.5001,5719.164 v -656.6639 l 314.8715,328.332 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89498103"
|
||||||
|
id="path44-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 6000.0001,4575.0001 v -394.33 l 314.7902,-1.1147 c -6.0705,262.4914 -52.96,471.0265 -314.7902,395.4447 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89475173"
|
||||||
|
id="path44-3-2"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 6320.8633,4912.5001 -6.073,-732.9447 -314.7902,395.4447 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89933741"
|
||||||
|
id="path44-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="M 1387.5,3106.9263 26.145617,3112.5 26.239743,3429.3745 1387.5,3732.5654 Z"
|
||||||
|
style="fill:#f7cb87;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 2775.0001,3109.1558 H 1462.5 v 640.8443 l 525,-112.5001 787.5001,206.4179 z"
|
||||||
|
style="fill:#f7cb87;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 4237.5001,3110.2705 h -1387.5 l 0,752.2296 675,150 712.5,-246.8936 z"
|
||||||
|
style="fill:#f7cb87;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 5550.0001,3112.5 h -1237.5 l 0,626.1475 618.75,-176.1474 h 618.75 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 6937.5002,3105.8115 -1312.5001,-1.1287 0,457.8173 h 1312.5001 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 8417.4395,3112.5 -1404.9393,-3.3582 v 453.3585 l 1405.2097,262.4998 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5496583"
|
||||||
|
id="path42-2-0"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 8328.8772,3870.0686 -1316.377,-232.5685 v 465 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-0-4"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7290.0002,4106.2559 1127.4393,-188.0235 1.5764,187.55 z"
|
||||||
|
style="fill:#fce7c6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.49430776"
|
||||||
|
id="path42-2-0-4-1"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7928.737,4175.1068 0.056,-0.059 490.363,0.083 -1.6663,624.8689 -595.4746,-624.9521"
|
||||||
|
style="fill:#fce7c6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.61935329"
|
||||||
|
id="path40-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7447.5002,4575.0001 -322.5,-337.5 -300,337.5 h 622.5"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.95725137"
|
||||||
|
id="path46-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 5925.0001,4575.0001 0,-392.8359 -337.5,280.3359 0,450 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.64549828"
|
||||||
|
id="path14-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 5887.5001,4125.0001 -337.5,-487.5 h -600 l 600,766.3199 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5409205"
|
||||||
|
id="path42-2-6-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fef6eb;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.25494003;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 5234.2851,6184.7748 1476.9917,14.5116 -447.5529,-438.1391 c -176.9133,-173.1921 -301.1716,-305.5968 -301.2238,-305.5968 -242.6593,249.8656 -457.1495,460.2945 -728.215,729.2243 z"
|
||||||
|
id="path1203"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccscc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.84425163;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 6396.6887,5762.3467 353.3115,363.8943 V 4650.0001 l -351.0821,375 z"
|
||||||
|
id="path1201-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:17.39934158;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 6825.0002,5400.0001 c 0,0 591.4391,-696.4314 637.5,-750 l -320.7729,0 h -316.7271 z"
|
||||||
|
id="path1199-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7462.5002,5400.0001 0,-637.5 -637.5,750 0,600 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.16200352"
|
||||||
|
id="path14-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7800.0002,4875.0001 0,1295.0654 600,3.3442 0,-1298.4097 z"
|
||||||
|
style="fill:#fef6eb;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.52054787"
|
||||||
|
id="path42-2-6-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6839.0906,6172.2949 v 0 l 885.9096,-2.2294 0,-920.0654 -885.9096,922.2948"
|
||||||
|
style="fill:#fef6eb;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.21138752"
|
||||||
|
id="path40-0"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:9.21227551;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 7725.0002,5137.5001 -187.5,199.7622 v -649.7622 l 187.5,206.4178 z"
|
||||||
|
id="path1201-3-1"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 1387.5,3787.5001 562.50001,3617.6989 v 448.4953 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.09587288"
|
||||||
|
id="path42-2-0-4-1-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
style="opacity:1;fill:#f9d59e;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.52051163;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 487.50001,4087.5001 -465.000009,165 V 3480 l 465.000009,120.0001 z"
|
||||||
|
id="path1201-3-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /></g></g></svg>
|
After Width: | Height: | Size: 11 KiB |
208
mamweb/static/images/logo_6.svg
Normal file
|
@ -0,0 +1,208 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
version="1.1"
|
||||||
|
id="svg2"
|
||||||
|
xml:space="preserve"
|
||||||
|
width="1116.5013"
|
||||||
|
height="404.98737"
|
||||||
|
viewBox="0 0 1116.5013 404.98736"
|
||||||
|
sodipodi:docname="logo_profil.svg"
|
||||||
|
inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"><metadata
|
||||||
|
id="metadata8"><rdf:RDF><cc:Work
|
||||||
|
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
|
||||||
|
id="defs6" /><sodipodi:namedview
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1"
|
||||||
|
objecttolerance="10"
|
||||||
|
gridtolerance="10"
|
||||||
|
guidetolerance="10"
|
||||||
|
inkscape:pageopacity="0"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:window-width="1916"
|
||||||
|
inkscape:window-height="1151"
|
||||||
|
id="namedview4"
|
||||||
|
showgrid="true"
|
||||||
|
inkscape:zoom="1.1893563"
|
||||||
|
inkscape:cx="542.48119"
|
||||||
|
inkscape:cy="65.762526"
|
||||||
|
inkscape:window-x="1922"
|
||||||
|
inkscape:window-y="47"
|
||||||
|
inkscape:window-maximized="1"
|
||||||
|
inkscape:current-layer="g12"
|
||||||
|
inkscape:snap-page="true"><inkscape:grid
|
||||||
|
type="xygrid"
|
||||||
|
id="grid903"
|
||||||
|
originx="-3.4986323"
|
||||||
|
originy="-416.4963" /></sodipodi:namedview><g
|
||||||
|
id="g10"
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
inkscape:label="ink_ext_XXXXXX"
|
||||||
|
transform="matrix(1.3333333,0,0,-1.3333333,-3.4986322,821.48366)"><g
|
||||||
|
id="g12"
|
||||||
|
transform="scale(0.1)"><path
|
||||||
|
d="m 8335.3454,4798.1624 -595.1505,-620.7555 h -585.3165 l 595.2607,620.7555 h 585.2063"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.18195856"
|
||||||
|
id="path14"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7078.5791,4120.5393 h -0.5073 l 0.2556,0.2663 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:0.94117647;fill-rule:nonzero;stroke:none;stroke-width:0.93578213"
|
||||||
|
id="path38"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7102.4996,4177.5001 -0.089,-0.093 h -708.1905 v 738.7467 l 708.2801,-738.6537"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.99787205"
|
||||||
|
id="path40"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6937.5002,4101.5435 v -464.0434 h -444.9049 v 464.0434 h 444.9049"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.88309515"
|
||||||
|
id="path42"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 6337.5002,5718.9966 V 5062.5001 L 6022.709,5390.7482 Z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89475256"
|
||||||
|
id="path44"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 5962.5001,4650.0001 -337.5,337.5 337.5,337.5 337.5001,-337.5 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.95725137"
|
||||||
|
id="path46"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6420.0002,3637.5001 v 465 l -457.5001,1.0607 -330,-466.0607 c 166.1399,-0.083 621.3604,0 787.5001,0 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.6284067"
|
||||||
|
id="path40-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 5587.5001,5719.164 v -656.6639 l 314.8715,328.332 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89498103"
|
||||||
|
id="path44-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 6000.0001,4575.0001 v -394.33 l 314.7902,-1.1147 c -6.0705,262.4914 -52.96,471.0265 -314.7902,395.4447 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89475173"
|
||||||
|
id="path44-3-2"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 6320.8633,4912.5001 -6.073,-732.9447 -314.7902,395.4447 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.89933741"
|
||||||
|
id="path44-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="M 1387.5,3106.9263 26.145617,3112.5 26.239743,3429.3745 1387.5,3732.5654 Z"
|
||||||
|
style="fill:#f7cb87;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 2775.0001,3109.1558 H 1462.5 v 640.8443 l 525,-112.5001 787.5001,206.4179 z"
|
||||||
|
style="fill:#f7cb87;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 4237.5001,3110.2705 h -1387.5 l 0,752.2296 675,150 712.5,-246.8936 z"
|
||||||
|
style="fill:#f7cb87;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 5550.0001,3112.5 h -1237.5 l 0,626.1475 618.75,-176.1474 h 618.75 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccccc" /><path
|
||||||
|
d="m 6937.5002,3105.8115 -1312.5001,-1.1287 0,457.8173 h 1312.5001 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 8417.4395,3112.5 -1404.9393,-3.3582 v 453.3585 l 1405.2097,262.4998 z"
|
||||||
|
style="fill:#e84e10;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5496583"
|
||||||
|
id="path42-2-0"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 8328.8772,3870.0686 -1316.377,-232.5685 v 465 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53136837"
|
||||||
|
id="path42-2-0-4"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7290.0002,4106.2559 1127.4393,-188.0235 1.5764,187.55 z"
|
||||||
|
style="fill:#fce7c6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.49430776"
|
||||||
|
id="path42-2-0-4-1"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 7928.737,4175.1068 0.056,-0.059 490.363,0.083 -1.6663,624.8689 -595.4746,-624.9521"
|
||||||
|
style="fill:#fce7c6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.61935329"
|
||||||
|
id="path40-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7447.5002,4575.0001 -322.5,-337.5 -300,337.5 h 622.5"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.95725137"
|
||||||
|
id="path46-6"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
d="m 5925.0001,4575.0001 0,-392.8359 -337.5,280.3359 0,450 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.64549828"
|
||||||
|
id="path14-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 5887.5001,4125.0001 -337.5,-487.5 h -600 l 600,766.3199 z"
|
||||||
|
style="fill:#fbe1b8;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.5409205"
|
||||||
|
id="path42-2-6-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fef6eb;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.25494003;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 5234.2851,6184.7748 1476.9917,14.5116 -447.5529,-438.1391 c -176.9133,-173.1921 -301.1716,-305.5968 -301.2238,-305.5968 -242.6593,249.8656 -457.1495,460.2945 -728.215,729.2243 z"
|
||||||
|
id="path1203"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccscc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.84425163;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 6396.6887,5762.3467 353.3115,363.8943 V 4650.0001 l -351.0821,375 z"
|
||||||
|
id="path1201-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:17.39934158;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 6825.0002,5400.0001 c 0,0 591.4391,-696.4314 637.5,-750 l -320.7729,0 h -316.7271 z"
|
||||||
|
id="path1199-9"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7462.5002,5400.0001 0,-637.5 -637.5,750 0,600 z"
|
||||||
|
style="fill:#fdedd5;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.16200352"
|
||||||
|
id="path14-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 7800.0002,4875.0001 0,1295.0654 600,3.3442 0,-1298.4097 z"
|
||||||
|
style="fill:#fef6eb;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.52054787"
|
||||||
|
id="path42-2-6-3"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="m 6839.0906,6172.2949 v 0 l 885.9096,-2.2294 0,-920.0654 -885.9096,922.2948"
|
||||||
|
style="fill:#fef6eb;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.21138752"
|
||||||
|
id="path40-0"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
style="opacity:1;fill:#fdedd5;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:9.21227551;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 7725.0002,5137.5001 -187.5,199.7622 v -649.7622 l 187.5,206.4178 z"
|
||||||
|
id="path1201-3-1"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /><path
|
||||||
|
d="M 1387.5,3787.5001 562.50001,3617.6989 v 448.4953 z"
|
||||||
|
style="fill:#f9d59e;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.09587288"
|
||||||
|
id="path42-2-0-4-1-7"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="cccc" /><path
|
||||||
|
style="opacity:1;fill:#f9d59e;fill-opacity:1;fill-rule:evenodd;stroke:#cc2200;stroke-width:22.52051163;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0"
|
||||||
|
d="m 487.50001,4087.5001 -465.000009,165 V 3480 l 465.000009,120.0001 z"
|
||||||
|
id="path1201-3-8"
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
sodipodi:nodetypes="ccccc" /></g></g></svg>
|
After Width: | Height: | Size: 11 KiB |
|
@ -13,6 +13,7 @@
|
||||||
<link href="{% static 'css/mamweb.css' %}" rel="stylesheet">
|
<link href="{% static 'css/mamweb.css' %}" rel="stylesheet">
|
||||||
<link href="{% static 'css/prettyPhoto.css' %}" rel="stylesheet" type="text/css" media="screen" charset="utf-8" />
|
<link href="{% static 'css/prettyPhoto.css' %}" rel="stylesheet" type="text/css" media="screen" charset="utf-8" />
|
||||||
<script src="{% static 'js/jquery-1.11.1.js' %}"></script>
|
<script src="{% static 'js/jquery-1.11.1.js' %}"></script>
|
||||||
|
<script src="{% static 'js/jquery-3.4.1.js' %}"></script>
|
||||||
|
|
||||||
<link rel="stylesheet" type="text/css" href="{% static 'fluent_comments/css/ajaxcomments.css' %}" />
|
<link rel="stylesheet" type="text/css" href="{% static 'fluent_comments/css/ajaxcomments.css' %}" />
|
||||||
<script type="text/javascript" src="{% static 'fluent_comments/js/ajaxcomments.js' %}"></script>
|
<script type="text/javascript" src="{% static 'fluent_comments/js/ajaxcomments.js' %}"></script>
|
||||||
|
@ -56,13 +57,17 @@
|
||||||
<div class='col-md-12'>
|
<div class='col-md-12'>
|
||||||
<a href='/'>
|
<a href='/'>
|
||||||
<div id="title" >M&M - korespondenční seminář a časopis MFF UK</div>
|
<div id="title" >M&M - korespondenční seminář a časopis MFF UK</div>
|
||||||
<div id="header" class="{% if noc %}NOC{% endif %}{% block header %}{% endblock %}">
|
<div id="header">
|
||||||
<img class="logo" src="{% static 'images/logo.svg' %}" />
|
<div class="no-mobile" style="background-image: url('{{ fotka }}')">
|
||||||
|
{# TODO style=… není fancy řešení, ale u <img> se bojím, že mi to rozbije vzhled #}
|
||||||
|
{% sitetree_menu from "main_menu" include "trunk" template "logo.html" %}
|
||||||
|
</div>
|
||||||
<img class="logo-mobile" src="{% static 'images/logo-mobile.svg' %}" />
|
<img class="logo-mobile" src="{% static 'images/logo-mobile.svg' %}" />
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class='row'>
|
<div class='row'>
|
||||||
<div class='col-md-12'>
|
<div class='col-md-12'>
|
||||||
|
|
||||||
|
@ -72,6 +77,9 @@
|
||||||
|
|
||||||
{# ========= MENU MOBILE ========== #}
|
{# ========= MENU MOBILE ========== #}
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<!--Navbar-->
|
<!--Navbar-->
|
||||||
<nav class="nav-button">
|
<nav class="nav-button">
|
||||||
|
|
||||||
|
@ -94,21 +102,24 @@
|
||||||
|
|
||||||
{# ========= END MENU ========== #}
|
{# ========= END MENU ========== #}
|
||||||
|
|
||||||
|
<div class='row'>
|
||||||
<div class='row content'>
|
<div class='row content'>
|
||||||
<div class='col-md-12'>
|
<div class='col-md-12'>
|
||||||
{% block content %}
|
{% block content %}
|
||||||
{% endblock content %}
|
{% endblock content %}
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class='row'>
|
<div class='row'>
|
||||||
<div class='col-md-12'>
|
<div class='col-md-12'>
|
||||||
<div id="footer">
|
<div id="footer">
|
||||||
<p class="license">S obsahem webu M&M je možné nakládat dle licence <a href="https://creativecommons.org/licenses/by/3.0/cz/">Creative Commons Attribution 3.0</a>.</p>
|
<p class="license">S obsahem webu M&M je možné nakládat dle licence <a href="https://creativecommons.org/licenses/by/3.0/cz/">Creative Commons Attribution 3.0</a>.</p>
|
||||||
</div>
|
</div>
|
||||||
<p class="license-mobile">Korespondenční seminář M&M organizují převážně studenti <a herf="https://www.mff.cuni.cz/">MFF UK</a>. Organizaci semináře a vydávání časopisu podporuje <a href="https://jcmf.cz/">Jednota českých matematiků a fyziků</a>. S obsahem webu M&M je možné nakládat dle licence <a href="https://creativecommons.org/licenses/by/3.0/cz/">Creative Commons Attribution 3.0</a>.</p>
|
<p class="license-mobile">Korespondenční seminář M&M organizují převážně studenti <a href="https://www.mff.cuni.cz/">MFF UK</a>. Organizaci semináře a vydávání časopisu podporuje <a href="https://jcmf.cz/">Jednota českých matematiků a fyziků</a>. S obsahem webu M&M je možné nakládat dle licence <a href="https://creativecommons.org/licenses/by/3.0/cz/">Creative Commons Attribution 3.0</a>.</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script src="{% static 'js/bootstrap.js' %}"></script>
|
<script src="{% static 'js/bootstrap.js' %}"></script>
|
||||||
|
|
|
@ -8,106 +8,4 @@
|
||||||
<div>
|
<div>
|
||||||
{{ flatpage.content }}
|
{{ flatpage.content }}
|
||||||
</div>
|
</div>
|
||||||
{% endblock content %}
|
{% endblock content %}
|
||||||
|
|
||||||
{# nahraj spravne submenu #}
|
|
||||||
{% block submenu %}
|
|
||||||
{# co-je-MaM #}
|
|
||||||
{% if "/co-je-MaM/" in flatpage.url %}
|
|
||||||
{% if "/uvod/" in flatpage.url %}
|
|
||||||
{% with "uvod" as selected %}
|
|
||||||
{% include "seminar/cojemam/submenu.html" %}
|
|
||||||
{% endwith %}
|
|
||||||
{% elif "jak-resit" in flatpage.url %}
|
|
||||||
{% with "jak-resit" as selected %}
|
|
||||||
{% include "seminar/cojemam/submenu.html" %}
|
|
||||||
{% endwith %}
|
|
||||||
{% elif "odmeny" in flatpage.url %}
|
|
||||||
{% with "odmeny" as selected %}
|
|
||||||
{% include "seminar/cojemam/submenu.html" %}
|
|
||||||
{% endwith %}
|
|
||||||
{% elif "FAQ" in flatpage.url %}
|
|
||||||
{% with "FAQ" as selected %}
|
|
||||||
{% include "seminar/cojemam/submenu.html" %}
|
|
||||||
{% endwith %}
|
|
||||||
{% elif "kontakt" in flatpage.url %}
|
|
||||||
{% else %}
|
|
||||||
{% include "seminar/cojemam/submenu.html" %}
|
|
||||||
{% endif %}
|
|
||||||
{% endif %}
|
|
||||||
{# soustredeni #}
|
|
||||||
{% if "/soustredeni/" in flatpage.url %}
|
|
||||||
{% if "/pripravujeme/" in flatpage.url %}
|
|
||||||
{% with "pripravujeme" as selected %}
|
|
||||||
{% include "seminar/soustredeni/submenu.html" %}
|
|
||||||
{% endwith %}
|
|
||||||
{% else %}
|
|
||||||
{% with "uvod" as selected %}
|
|
||||||
{% include "seminar/soustredeni/submenu.html" %}
|
|
||||||
{% endwith %}
|
|
||||||
{% endif %}
|
|
||||||
{% endif %}
|
|
||||||
{# zadani #}
|
|
||||||
{% if "/zadani/" in flatpage.url %}
|
|
||||||
{% if "/aktualni-cislo/" in flatpage.url %}
|
|
||||||
{% with "aktualni-cislo" as selected %}
|
|
||||||
{% include "seminar/zadani/submenu.html" %}
|
|
||||||
{% endwith %}
|
|
||||||
{% elif "/vysledkova-listina/" in flatpage.url %}
|
|
||||||
{% with "vysledkova-listina" as selected %}
|
|
||||||
{% include "seminar/zadani/submenu.html" %}
|
|
||||||
{% endwith %}
|
|
||||||
{% else %}
|
|
||||||
{% include "seminar/zadani/submenu.html" %}
|
|
||||||
{% endif %}
|
|
||||||
{% endif %}
|
|
||||||
{# clanky #}
|
|
||||||
{% if "/clanky/" in flatpage.url %}
|
|
||||||
{% if "/uvod/" in flatpage.url %}
|
|
||||||
{% with "uvod" as selected %}
|
|
||||||
{% include "seminar/clanky/submenu.html" %}
|
|
||||||
{% endwith %}
|
|
||||||
{% elif "/org/" in flatpage.url %}
|
|
||||||
{% with "org" as selected %}
|
|
||||||
{% include "seminar/clanky/submenu.html" %}
|
|
||||||
{% endwith %}
|
|
||||||
{% elif "/resitel/" in flatpage.url %}
|
|
||||||
{% with "resitel" as selected %}
|
|
||||||
{% include "seminar/clanky/submenu.html" %}
|
|
||||||
{% endwith %}
|
|
||||||
{% elif "/jak-psat-vedecky-clanek/" in flatpage.url %}
|
|
||||||
{% with "jak-psat-vedecky-clanek" as selected %}
|
|
||||||
{% include "seminar/clanky/submenu.html" %}
|
|
||||||
{% endwith %}
|
|
||||||
{% else %}
|
|
||||||
{% include "seminar/clanky/submenu.html" %}
|
|
||||||
{% endif %}
|
|
||||||
{% endif %}
|
|
||||||
{# archiv #}
|
|
||||||
{% if "/archiv/" in flatpage.url %}
|
|
||||||
{% if "/ulohy/" in flatpage.url %}
|
|
||||||
{% with "ulohy" as selected %}
|
|
||||||
{% include "seminar/archiv/submenu.html" %}
|
|
||||||
{% endwith %}
|
|
||||||
{% elif "/vysledky/" in flatpage.url %}
|
|
||||||
{% with "vysledky" as selected %}
|
|
||||||
{% include "seminar/archiv/submenu.html" %}
|
|
||||||
{% endwith %}
|
|
||||||
{% else %}
|
|
||||||
{% include "seminar/archiv/submenu.html" %}
|
|
||||||
{% endif %}
|
|
||||||
{% endif %}
|
|
||||||
{% endblock %}
|
|
||||||
|
|
||||||
{# zvirazneni menu #}
|
|
||||||
{% block menu_uvod %}{% if not "/kontakt/" in flatpage.url %}{% if "/co-je-MaM/" in flatpage.url %}selected{% endif %}{% endif %}{% endblock %}
|
|
||||||
{% block menu_soustredeni %}{% if "/soustredeni/" in flatpage.url %}selected{% endif %}{% endblock %}
|
|
||||||
{% block menu_zadani %}{% if "/zadani/" in flatpage.url %}selected{% endif %}{% endblock %}
|
|
||||||
{% block menu_clanky %}{% if "/clanky/" in flatpage.url %}selected{% endif %}{% endblock %}
|
|
||||||
{% block menu_archiv %}{% if "/archiv/" in flatpage.url %}selected{% endif %}{% endblock %}
|
|
||||||
{% block menu_odevzdat %}{% if "/kontakt/" in flatpage.url %}selected{% endif %}{% endblock %}
|
|
||||||
|
|
||||||
{# zmena titulniho obrazku #}
|
|
||||||
{% block header %}{% if "/co-je-MaM/" in flatpage.url %}cojemam{% elif "/soustredeni/" in flatpage.url %}soustredeni{% elif "/zadani/" in flatpage.url %}zadani{% elif "/clanky/" in flatpage.url %}clanky{% elif "/archiv/" in flatpage.url %}archiv{% else %}odeslat{% endif %}{% endblock header %}
|
|
||||||
|
|
||||||
{# TODO zvirazneni submenu #}
|
|
26
mamweb/templates/logo.html
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
{% load staticfiles %}
|
||||||
|
<img class="logo"
|
||||||
|
{% for item in sitetree_items %}
|
||||||
|
{% if item.is_active or item.in_current_branch %}
|
||||||
|
{% if forloop.counter == 1 %}
|
||||||
|
src="{% static 'images/logo_1.svg' %}"
|
||||||
|
{% endif %}
|
||||||
|
{% if forloop.counter == 2 %}
|
||||||
|
src="{% static 'images/logo_2.svg' %}"
|
||||||
|
{% endif %}
|
||||||
|
{% if forloop.counter == 3 %}
|
||||||
|
src="{% static 'images/logo_3.svg' %}"
|
||||||
|
{% endif %}
|
||||||
|
{% if forloop.counter == 4 %}
|
||||||
|
src="{% static 'images/logo_4.svg' %}"
|
||||||
|
{% endif %}
|
||||||
|
{% if forloop.counter == 5 %}
|
||||||
|
src="{% static 'images/logo_5.svg' %}"
|
||||||
|
{% endif %}
|
||||||
|
{% if forloop.counter == 6 %}
|
||||||
|
src="{% static 'images/logo_6.svg' %}"
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
src="{% static 'images/logo.svg' %}"
|
||||||
|
/>
|
|
@ -3,7 +3,9 @@
|
||||||
{% autoescape off %}
|
{% autoescape off %}
|
||||||
<ul class="menu">
|
<ul class="menu">
|
||||||
{% for item in sitetree_items %}
|
{% for item in sitetree_items %}
|
||||||
<li class="{% if item.has_children %}dropdown{% endif %} {% if item.is_current or item.in_current_branch %}active{% endif %}" >
|
<li class="{% if item.has_children %}dropdown{% endif %} {% if item.is_current or item.in_current_branch %}active{% endif %}"
|
||||||
|
style="{% if item.title == "HIDDEN" %}display:none{% endif %}"
|
||||||
|
>
|
||||||
<a href="{% sitetree_url for item %}" >
|
<a href="{% sitetree_url for item %}" >
|
||||||
{{ item.title_resolved }}
|
{{ item.title_resolved }}
|
||||||
</a>
|
</a>
|
||||||
|
|
|
@ -3,7 +3,9 @@
|
||||||
{% autoescape off %}
|
{% autoescape off %}
|
||||||
<ul class="menu_mobile">
|
<ul class="menu_mobile">
|
||||||
{% for item in sitetree_items %}
|
{% for item in sitetree_items %}
|
||||||
<li class="{% if item.has_children %}dropdown{% endif %} {% if item.is_current or item.in_current_branch %}active{% endif %}">
|
<li class="{% if item.has_children %}dropdown{% endif %} {% if item.is_current or item.in_current_branch %}active{% endif %}"
|
||||||
|
style="{% if item.title == "HIDDEN" %}display:none{% endif %}"
|
||||||
|
>
|
||||||
<a href="{% if item.has_children %}#{% else %}{% sitetree_url for item %}{% endif %}" {% if item.has_children %}class="dropdown-toggle" data-toggle="dropdown"{% endif %}>
|
<a href="{% if item.has_children %}#{% else %}{% sitetree_url for item %}{% endif %}" {% if item.has_children %}class="dropdown-toggle" data-toggle="dropdown"{% endif %}>
|
||||||
{{ item.title_resolved }}
|
{{ item.title_resolved }}
|
||||||
</a>
|
</a>
|
||||||
|
|
|
@ -5,7 +5,7 @@ chdir = /akce/mam/www/mamweb-prod/
|
||||||
home = /akce/mam/www/mamweb-prod/
|
home = /akce/mam/www/mamweb-prod/
|
||||||
|
|
||||||
module = mamweb.wsgi
|
module = mamweb.wsgi
|
||||||
plugin = python
|
plugin = python3
|
||||||
virtualenv = env
|
virtualenv = env
|
||||||
master = True
|
master = True
|
||||||
vacuum = True
|
vacuum = True
|
||||||
|
|
|
@ -5,7 +5,7 @@ chdir = /akce/mam/www/mamweb-test/
|
||||||
home = /akce/mam/www/mamweb-test/
|
home = /akce/mam/www/mamweb-test/
|
||||||
|
|
||||||
module = mamweb.wsgi
|
module = mamweb.wsgi
|
||||||
plugin = python
|
plugin = python3
|
||||||
virtualenv = env
|
virtualenv = env
|
||||||
master = True
|
master = True
|
||||||
vacuum = True
|
vacuum = True
|
||||||
|
|
1603
obalky/lisak.eps
|
@ -1,78 +0,0 @@
|
||||||
\input czech.sty
|
|
||||||
\input epsf
|
|
||||||
\special{landscape}
|
|
||||||
\nopagenumbers
|
|
||||||
\hoffset=-1in
|
|
||||||
\voffset=-1in
|
|
||||||
\advance\voffset by 0.9cm
|
|
||||||
%nove pridano, aby to fungovalo...
|
|
||||||
\advance\hoffset by 6.5cm
|
|
||||||
\hsize=22cm
|
|
||||||
\vsize=16cm
|
|
||||||
|
|
||||||
\font\adrfonta=csssbx10 at 14pt
|
|
||||||
\font\adrfontb=csssbx10 at 12pt
|
|
||||||
\font\adrfontc=csss12
|
|
||||||
\font\tofont=csr12 at 16pt
|
|
||||||
|
|
||||||
\newdimen\fromskip
|
|
||||||
\newdimen\toskip
|
|
||||||
\fromskip=4.35cm
|
|
||||||
\toskip=13.2cm
|
|
||||||
|
|
||||||
\def\first{\relax}
|
|
||||||
|
|
||||||
\catcode`_=13
|
|
||||||
%\catcode`_=12
|
|
||||||
|
|
||||||
\def_{$\_$}
|
|
||||||
|
|
||||||
\advance\voffset by 2.5cm
|
|
||||||
|
|
||||||
|
|
||||||
\def\obalka#1#2#3#4#5#6#7{
|
|
||||||
|
|
||||||
\def\jmeno{#1}
|
|
||||||
\def\prijm{#2}
|
|
||||||
\def\skola{#3}
|
|
||||||
\def\popis{}
|
|
||||||
\def\first{}
|
|
||||||
\def\ulice{#4}
|
|
||||||
\def\PSC{#5}
|
|
||||||
\def\mesto{#6}
|
|
||||||
\def\stat{#7}
|
|
||||||
\vskip-4mm\vbox to 0pt{\hbox to 0pt{\hskip1.4cm\epsfysize=2.55cm\epsfbox{lisak.eps}\hss}\vss}
|
|
||||||
|
|
||||||
\baselineskip=13pt
|
|
||||||
\parindent=\fromskip
|
|
||||||
\line{\indent\adrfonta Časopis M\&M,\hfil}
|
|
||||||
\vskip3pt
|
|
||||||
\line{\indent\adrfontb OPMK UK MFF\hfil}
|
|
||||||
\vskip3pt
|
|
||||||
\line{\indent\adrfontc Ke Karlovu 3, 121 16 Praha 2\hfil}
|
|
||||||
\line{\indent\adrfontc Tel.: +420 221 911 235\hss}
|
|
||||||
\line{\indent\adrfontc mam@atrey.karlin.mff.cuni.cz\hfil}
|
|
||||||
|
|
||||||
\vskip6.15cm
|
|
||||||
\vbox to 0pt{\parindent=1.4cm\hsize=\toskip\advance\hsize by -1cm
|
|
||||||
\vbox to 60pt{\vfil} \popis\vss}
|
|
||||||
\parindent=\toskip
|
|
||||||
\baselineskip=18pt
|
|
||||||
\line{\indent\tofont\first\hfil}
|
|
||||||
\line{\indent\tofont\jmeno\ \prijm\hfil}
|
|
||||||
\ifx \skola \empty
|
|
||||||
{}
|
|
||||||
\else
|
|
||||||
\line{\indent\tofont\skola\hfil}
|
|
||||||
\fi
|
|
||||||
\line{\indent\tofont\ulice\hfil}
|
|
||||||
\line{\tofont\item{\PSC} \mesto\hfil}
|
|
||||||
\vskip5pt
|
|
||||||
\line{\indent\tofont\stat\hfil}
|
|
||||||
|
|
||||||
\vfil\eject
|
|
||||||
}
|
|
||||||
|
|
||||||
%\obalka{Lenka}{Kopfová}{Leknínová 10}{746 01}{Opava}
|
|
||||||
|
|
||||||
|
|
|
@ -1,53 +0,0 @@
|
||||||
#!/usr/bin/python
|
|
||||||
#coding: utf-8
|
|
||||||
|
|
||||||
import psycopg2
|
|
||||||
import sys
|
|
||||||
import subprocess
|
|
||||||
import re
|
|
||||||
|
|
||||||
dbname="mam-prod"
|
|
||||||
user="mam"
|
|
||||||
|
|
||||||
conn = psycopg2.connect("dbname={0} user={1}".format(dbname,user))
|
|
||||||
cur = conn.cursor()
|
|
||||||
|
|
||||||
names = []
|
|
||||||
|
|
||||||
with open("obalky.sql") as qfile, open("obalky-template.tex") as texheader, open("obalky.tex","w") as texout :
|
|
||||||
texout.write(texheader.read())
|
|
||||||
cur.execute(qfile.read())
|
|
||||||
for row in cur.fetchall():
|
|
||||||
(muz,jmeno,prijmeni,skola,ulice,mesto,psc,stat)=row
|
|
||||||
if (stat=='CZ'):
|
|
||||||
stat = ""
|
|
||||||
elif (stat=='SK'):
|
|
||||||
stat = "Slovenská republika"
|
|
||||||
else:
|
|
||||||
print("Neznamy stat: {}\n".format(stat))
|
|
||||||
if (skola==None):
|
|
||||||
skola=""
|
|
||||||
psc = psc.replace(" ","")
|
|
||||||
psc = psc[0:3]+" "+psc[3:]
|
|
||||||
|
|
||||||
texout.write("\\obalka{{{0}}}{{{1}}}{{{2}}}{{{3}}}{{{4}}}{{{5}}}{{{6}}}\n".format(jmeno,prijmeni,skola,ulice,psc,mesto,stat))
|
|
||||||
names.append((jmeno,prijmeni))
|
|
||||||
texout.write("\\bye\n")
|
|
||||||
|
|
||||||
cur.close()
|
|
||||||
conn.close()
|
|
||||||
|
|
||||||
print("Spoustim csplain ...")
|
|
||||||
output = subprocess.check_output(["csplain","obalky.tex"],stderr=subprocess.STDOUT)
|
|
||||||
page = 0
|
|
||||||
for line in output.decode("utf-8").splitlines():
|
|
||||||
pmatch = re.search("\[([0-9]+)\]",line)
|
|
||||||
if pmatch:
|
|
||||||
page = int(pmatch.group(1))
|
|
||||||
errmatch = re.match("Overfull",line)
|
|
||||||
if errmatch:
|
|
||||||
print("Preteceni na strane",page,"u osoby",names[page][0],names[page][1])
|
|
||||||
|
|
||||||
print("Spoustim dvipdf ...")
|
|
||||||
subprocess.call(["dvipdf","obalky.dvi"])
|
|
||||||
print("Hotovo.")
|
|
|
@ -1,26 +0,0 @@
|
||||||
WITH akt_rocnik AS (
|
|
||||||
SELECT rocnik FROM seminar_rocniky
|
|
||||||
WHERE id=(SELECT aktualni_rocnik_id FROM seminar_nastaveni)
|
|
||||||
), id_rocniku AS (
|
|
||||||
SELECT id,prvni_rok FROM seminar_rocniky
|
|
||||||
WHERE rocnik=(SELECT * FROM akt_rocnik) OR rocnik=(SELECT * FROM akt_rocnik)-1
|
|
||||||
), id_cisel AS (
|
|
||||||
SELECT seminar_cisla.id FROM seminar_cisla
|
|
||||||
INNER JOIN id_rocniku ON rocnik_id=id_rocniku.id
|
|
||||||
), problemy AS (
|
|
||||||
SELECT seminar_problemy.id FROM seminar_problemy
|
|
||||||
INNER JOIN id_cisel ON cislo_zadani_id = id_cisel.id
|
|
||||||
), resitele AS(
|
|
||||||
SELECT DISTINCT resitel_id FROM seminar_reseni
|
|
||||||
INNER JOIN problemy ON problem_id=problemy.id
|
|
||||||
)
|
|
||||||
SELECT pohlavi_muz,jmeno,prijmeni,NULL AS skola,ulice,mesto,psc,stat FROM seminar_resitele
|
|
||||||
INNER JOIN resitele ON seminar_resitele.id=resitel_id
|
|
||||||
WHERE zasilat='domu' AND rok_maturity > (SELECT MAX(prvni_rok) FROM id_rocniku)
|
|
||||||
UNION
|
|
||||||
SELECT res.pohlavi_muz,res.jmeno,res.prijmeni,sk.nazev,sk.ulice,sk.mesto,sk.psc,sk.stat
|
|
||||||
FROM seminar_resitele AS res
|
|
||||||
INNER JOIN resitele ON res.id=resitel_id
|
|
||||||
INNER JOIN seminar_skoly AS sk ON sk.id=skola_id
|
|
||||||
WHERE zasilat='do_skoly' AND rok_maturity > (SELECT MAX(prvni_rok) FROM id_rocniku)
|
|
||||||
ORDER BY prijmeni ASC, jmeno ASC
|
|
|
@ -17,19 +17,17 @@ Jak moc by ses chtěl(a) zúčastnit následujících přednášek?
|
||||||
|
|
||||||
<form enctype="multipart/form-data" action="." method="post">
|
<form enctype="multipart/form-data" action="." method="post">
|
||||||
{% csrf_token %}
|
{% csrf_token %}
|
||||||
<table>{{form.as_table}}
|
|
||||||
</table>
|
|
||||||
<table>
|
<table>
|
||||||
{% for p in prednasky.prednaska_set.all %}
|
{% for p, h in prednasky %}
|
||||||
<tr><td><label>{{p.org}}: <span style="font-size: 175%">{{p.nazev}}</span></label></td></tr>
|
<tr><td><label>{{p.org}}: <span style="font-size: 175%">{{p.nazev}}</span></label></td></tr>
|
||||||
<tr><td><p><i>{{p.anotace}}</i></p></td></tr>
|
<tr><td><p><i>{{p.anotace}}</i></p></td></tr>
|
||||||
<tr><td><label>Obor: </label> {{p.obor}}</td></tr>
|
<tr><td><label>Obor: </label> {{p.obor}}</td></tr>
|
||||||
<tr><td><label>Obtížnost: </label> {{p.obtiznost}}</td> </tr>
|
<tr><td><label>Obtížnost: </label> {{p.obtiznost}}</td> </tr>
|
||||||
{% if p.klicova %}<tr><td><label>Klíčová slova: </label> {{p.klicova}}</td></tr>{% endif%}
|
{% if p.klicova %}<tr><td><label>Klíčová slova: </label> {{p.klicova}}</td></tr>{% endif%}
|
||||||
<tr><td>Hodnocení:
|
<tr><td>Hodnocení:
|
||||||
<INPUT TYPE="radio" NAME="q{{p.pk}}" VALUE="-1"> rozhodně nechci
|
<INPUT TYPE="radio" NAME="q{{p.pk}}" VALUE="-1" {% if h == -1 %} CHECKED="checked" {% endif %} > rozhodně nechci
|
||||||
<INPUT TYPE="radio" NAME="q{{p.pk}}" VALUE="0" checked> je mi to jedno
|
<INPUT TYPE="radio" NAME="q{{p.pk}}" VALUE="0" {% if h == 0 %} CHECKED="checked" {% endif %}> je mi to jedno
|
||||||
<INPUT TYPE="radio" NAME="q{{p.pk}}" VALUE="1"> rozhodně chci
|
<INPUT TYPE="radio" NAME="q{{p.pk}}" VALUE="1" {% if h == 1 %} CHECKED="checked" {% endif %}> rozhodně chci
|
||||||
</td></tr>
|
</td></tr>
|
||||||
<tr><td> </td></tr>
|
<tr><td> </td></tr>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
|
@ -1,9 +1,5 @@
|
||||||
{% extends "prednasky/base.html" %}
|
{% extends "prednasky/base.html" %}
|
||||||
|
|
||||||
|
|
||||||
{% block header %}hlasovani{% endblock %}
|
|
||||||
|
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<h1>{% block nadpis1a %}{% block nadpis1b %}Hlasování o přednáškách{% endblock %}{% endblock %}</h1>
|
<h1>{% block nadpis1a %}{% block nadpis1b %}Hlasování o přednáškách{% endblock %}{% endblock %}</h1>
|
||||||
{# Projdi vsechny seznamy #}
|
{# Projdi vsechny seznamy #}
|
||||||
|
@ -19,6 +15,8 @@
|
||||||
<a href="/prednasky/seznam_prednasek/{{seznam.id}}/export">Export</a>
|
<a href="/prednasky/seznam_prednasek/{{seznam.id}}/export">Export</a>
|
||||||
</li>
|
</li>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,5 @@
|
||||||
{% extends "prednasky/base.html" %}
|
{% extends "prednasky/base.html" %}
|
||||||
|
|
||||||
|
|
||||||
{% block header %}seznam_prednasek{% endblock %}
|
|
||||||
|
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<h1>{% block nadpis1a %}Průběžné výsledky hlasování{% endblock %}</h1>
|
<h1>{% block nadpis1a %}Průběžné výsledky hlasování{% endblock %}</h1>
|
||||||
<div class="mam-org-only">
|
<div class="mam-org-only">
|
||||||
|
@ -15,5 +11,7 @@
|
||||||
{{ prednaska.body }} b</i>) – {{ prednaska.org }}
|
{{ prednaska.body }} b</i>) – {{ prednaska.org }}
|
||||||
</li>
|
</li>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
|
@ -1,19 +1,7 @@
|
||||||
{% block content %}
|
{% block content %}
|
||||||
{% spaceless %}
|
{% spaceless %}
|
||||||
{% for hlas in hlasovani %}
|
|
||||||
hlas({{hlas.ucastnik}},{{hlas.prednaska.id}},{{hlas.body}})
|
|
||||||
{% endfor %}
|
|
||||||
{% for prednaska in prednasky %}
|
{% for prednaska in prednasky %}
|
||||||
prednaska({{prednaska.id}},{{prednaska.org.id}},{{prednaska.obtiznost}},{{prednaska.obor}})
|
{{prednaska.id}};{{prednaska.nazev}};{{prednaska.org}}
|
||||||
{% endfor %}
|
|
||||||
{% for org in orgove %}
|
|
||||||
org({{org.id}},4,0,15)
|
|
||||||
{% endfor %}
|
|
||||||
{% for org in orgove %}
|
|
||||||
{{org.id}};{{org}}
|
|
||||||
{% endfor %}
|
|
||||||
{% for prednaska in prednasky %}
|
|
||||||
{{prednaska.id}};{{prednaska.nazev}};{{prednaska.org.id}}
|
|
||||||
{{prednaska.body}}
|
{{prednaska.body}}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% endspaceless %}
|
{% endspaceless %}
|
||||||
|
|
|
@ -1,14 +1,25 @@
|
||||||
from django.urls import path
|
from django.urls import path
|
||||||
from django.contrib.auth.decorators import user_passes_test
|
from seminar.utils import org_required, resitel_required
|
||||||
from . import views
|
from . import views
|
||||||
|
|
||||||
staff_member_required = user_passes_test(lambda u: u.is_staff)
|
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
path('prednasky/', views.newPrednaska),
|
path(
|
||||||
|
'prednasky/',
|
||||||
|
resitel_required(views.newPrednaska)
|
||||||
|
),
|
||||||
path('prednasky/hotovo', views.Prednaska_hotovo),
|
path('prednasky/hotovo', views.Prednaska_hotovo),
|
||||||
path('prednasky/metaseznam_prednasek', staff_member_required(views.MetaSeznamListView.as_view()), name='metaseznam-list'),
|
path(
|
||||||
path('prednasky/seznam_prednasek/<int:seznam>/export', staff_member_required(views.SeznamExportView), name='seznam-export'),
|
'prednasky/metaseznam_prednasek',
|
||||||
path('prednasky/seznam_prednasek/<int:seznam>/', staff_member_required(views.SeznamListView.as_view()), name='seznam-list'),
|
org_required(views.MetaSeznamListView.as_view()),
|
||||||
# path('korektury/help/', staff_member_required(views.KorekturyHelpView.as_view()), name='korektury-help'),
|
name='metaseznam-list'),
|
||||||
|
path(
|
||||||
|
'prednasky/seznam_prednasek/<int:seznam>/export',
|
||||||
|
org_required(views.SeznamExportView),
|
||||||
|
name='seznam-export'
|
||||||
|
),
|
||||||
|
path(
|
||||||
|
'prednasky/seznam_prednasek/<int:seznam>/',
|
||||||
|
org_required(views.SeznamListView.as_view()),
|
||||||
|
name='seznam-list'
|
||||||
|
),
|
||||||
]
|
]
|
||||||
|
|
|
@ -4,41 +4,52 @@ from django.views import generic
|
||||||
from django.shortcuts import HttpResponseRedirect
|
from django.shortcuts import HttpResponseRedirect
|
||||||
from django.core.exceptions import ObjectDoesNotExist
|
from django.core.exceptions import ObjectDoesNotExist
|
||||||
from django.db.models import Sum
|
from django.db.models import Sum
|
||||||
|
from django.forms import Form
|
||||||
|
|
||||||
from prednasky.models import Prednaska, Hlasovani, Seznam, STAV_NAVRH
|
from prednasky.models import Prednaska, Hlasovani, Seznam, STAV_NAVRH
|
||||||
from seminar.models import Soustredeni
|
from seminar.models import Soustredeni, Osoba
|
||||||
from prednasky.forms import NewPrednaskyForm
|
|
||||||
|
|
||||||
def newPrednaska(request):
|
def newPrednaska(request):
|
||||||
# hlasovani se vztahuje k nejnovejsimu soustredeni
|
# hlasovani se vztahuje k nejnovejsimu soustredeni
|
||||||
sous = Soustredeni.objects.first()
|
sous = Soustredeni.objects.first()
|
||||||
seznam = Seznam.objects.filter(soustredeni = sous, stav = STAV_NAVRH).first()
|
seznam = Seznam.objects.filter(soustredeni = sous, stav = STAV_NAVRH).first()
|
||||||
print(seznam)
|
osoba = Osoba.objects.filter(user=request.user).first()
|
||||||
|
ucastnik = osoba.plne_jmeno() + ' ' + str(osoba.id)
|
||||||
# obsluha formulare
|
# obsluha formulare
|
||||||
if request.method == 'POST':
|
if request.method == 'POST':
|
||||||
form = NewPrednaskyForm(request.POST, request.FILES)
|
form = Form(request.POST, request.FILES)
|
||||||
if form.is_valid():
|
if form.is_valid():
|
||||||
jmeno = form.cleaned_data['ucastnik']
|
# id z důvodu duplicitních jmen (přechod z jména na objekt Osoby nějak kape na tom,
|
||||||
|
# že všechna předchozí hlasování zde mají náhodný string…)
|
||||||
|
# TODO Změnit to na Osobu
|
||||||
|
|
||||||
|
# TODO v následujících řádcích je zbytečně mnoho dotazů na QuerySet (pokud účastník hlasoval, hlasoval u všech)
|
||||||
for i in request.POST:
|
for i in request.POST:
|
||||||
if i[0] == 'q':
|
if i[0] == 'q':
|
||||||
hlasovani = Hlasovani()
|
prednaska = Prednaska.objects.filter(pk=int(i[1:]))[0]
|
||||||
print("q:"+i[1:])
|
hlasovani = Hlasovani.objects.filter(ucastnik=ucastnik, prednaska=prednaska).first()
|
||||||
hlasovani.prednaska = Prednaska.objects.filter(pk = int(i[1:]))[0]
|
if not hlasovani:
|
||||||
|
hlasovani = Hlasovani()
|
||||||
|
hlasovani.prednaska = prednaska
|
||||||
|
hlasovani.ucastnik = ucastnik
|
||||||
|
hlasovani.seznam = seznam
|
||||||
hlasovani.body = int(request.POST[i])
|
hlasovani.body = int(request.POST[i])
|
||||||
hlasovani.ucastnik = jmeno
|
|
||||||
hlasovani.seznam = seznam
|
|
||||||
hlasovani.save()
|
hlasovani.save()
|
||||||
|
|
||||||
# presmerovani na prave vzniklou galerii
|
# presmerovani na prave vzniklou galerii
|
||||||
return HttpResponseRedirect('./hotovo')
|
return HttpResponseRedirect('./hotovo')
|
||||||
|
|
||||||
else:
|
def prednaska_hodnoceni(prednaska):
|
||||||
form = NewPrednaskyForm()
|
h = Hlasovani.objects.filter(ucastnik=ucastnik, prednaska=prednaska).first()
|
||||||
|
if h:
|
||||||
|
return prednaska, h.body
|
||||||
|
else:
|
||||||
|
return prednaska, 0
|
||||||
|
|
||||||
return render(
|
return render(
|
||||||
request,
|
request,
|
||||||
'prednasky/base.html',
|
'prednasky/base.html',
|
||||||
{'form': form, 'prednasky': seznam}
|
{'prednasky': map(prednaska_hodnoceni, seznam.prednaska_set.all())}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@ -57,12 +68,26 @@ class SeznamListView(generic.ListView):
|
||||||
self.seznam = get_object_or_404(Seznam, id=self.kwargs["seznam"])
|
self.seznam = get_object_or_404(Seznam, id=self.kwargs["seznam"])
|
||||||
prednasky = Prednaska.objects.filter(seznamy=self.seznam).order_by(
|
prednasky = Prednaska.objects.filter(seznamy=self.seznam).order_by(
|
||||||
'org__user__first_name', 'org__user__last_name'
|
'org__user__first_name', 'org__user__last_name'
|
||||||
).annotate(body=Sum('hlasovani__body'))
|
)
|
||||||
return prednasky
|
return prednasky
|
||||||
|
|
||||||
|
# FIXME nahradit anotaci s filtrem po prechodu na Django 2.2
|
||||||
|
def get_context_data(self,**kwargs):
|
||||||
|
context = super(SeznamListView, self).get_context_data(**kwargs)
|
||||||
|
|
||||||
|
# hlasovani se vztahuje k nejnovejsimu soustredeni
|
||||||
|
sous = Soustredeni.objects.first()
|
||||||
|
seznam = Seznam.objects.filter(soustredeni = sous, stav = STAV_NAVRH).first()
|
||||||
|
|
||||||
|
for obj in self.object_list:
|
||||||
|
hlasovani_set = obj.hlasovani_set.filter(seznam=seznam).only('body')
|
||||||
|
obj.body = sum(map(lambda x: x.body,hlasovani_set))
|
||||||
|
|
||||||
|
return context
|
||||||
|
|
||||||
|
|
||||||
def SeznamExportView(request, seznam):
|
def SeznamExportView(request, seznam):
|
||||||
u"""Vypíše výsledky hlasování ve formátu pro prologovský optimalizátor"""
|
"""Vypíše výsledky hlasování ve formátu pro prologovský optimalizátor"""
|
||||||
# TODO zřejmě se nepoužívá, časem vyřadit? nahradit tabulkou vhodnější pro
|
# TODO zřejmě se nepoužívá, časem vyřadit? nahradit tabulkou vhodnější pro
|
||||||
# lidi?
|
# lidi?
|
||||||
hlasovani = Hlasovani.objects.filter(seznam=seznam)
|
hlasovani = Hlasovani.objects.filter(seznam=seznam)
|
||||||
|
|
|
@ -3,6 +3,7 @@ from django.contrib import admin
|
||||||
from polymorphic.admin import PolymorphicParentModelAdmin, PolymorphicChildModelAdmin, PolymorphicChildModelFilter
|
from polymorphic.admin import PolymorphicParentModelAdmin, PolymorphicChildModelAdmin, PolymorphicChildModelFilter
|
||||||
from reversion.admin import VersionAdmin
|
from reversion.admin import VersionAdmin
|
||||||
from django_reverse_admin import ReverseModelAdmin
|
from django_reverse_admin import ReverseModelAdmin
|
||||||
|
from solo.admin import SingletonModelAdmin
|
||||||
|
|
||||||
# Todo: reversion
|
# Todo: reversion
|
||||||
|
|
||||||
|
@ -173,5 +174,5 @@ class TextNodeAdmin(PolymorphicChildModelAdmin):
|
||||||
show_in_index = True
|
show_in_index = True
|
||||||
|
|
||||||
|
|
||||||
admin.site.register(m.Nastaveni)
|
admin.site.register(m.Nastaveni, SingletonModelAdmin)
|
||||||
admin.site.register(m.Novinky)
|
admin.site.register(m.Novinky)
|
||||||
|
|
|
@ -9,6 +9,7 @@ from .models import Problem, Cislo, Reseni, Nastaveni, Rocnik, Soustredeni
|
||||||
#from .models import VysledkyZaCislo, VysledkyKCisluZaRocnik, VysledkyKCisluOdjakziva
|
#from .models import VysledkyZaCislo, VysledkyKCisluZaRocnik, VysledkyKCisluOdjakziva
|
||||||
from .ovvpfile import OvvpFile
|
from .ovvpfile import OvvpFile
|
||||||
from seminar import views
|
from seminar import views
|
||||||
|
from seminar.utils import aktivniResitele
|
||||||
|
|
||||||
class ExportIndexView(generic.View):
|
class ExportIndexView(generic.View):
|
||||||
def get(self, request):
|
def get(self, request):
|
||||||
|
@ -76,7 +77,7 @@ class ExportRocnikView(generic.View):
|
||||||
|
|
||||||
rocnik = get_object_or_404(Rocnik, prvni_rok=pr, exportovat=True)
|
rocnik = get_object_or_404(Rocnik, prvni_rok=pr, exportovat=True)
|
||||||
cislo = rocnik.posledni_zverejnena_vysledkovka_cislo()
|
cislo = rocnik.posledni_zverejnena_vysledkovka_cislo()
|
||||||
resitele = views.aktivniResitele(cislo.rocnik.rocnik, cislo.poradi, True)
|
resitele = aktivniResitele(cislo, True)
|
||||||
slovnik_body = views.secti_body_za_rocnik(cislo, resitele)
|
slovnik_body = views.secti_body_za_rocnik(cislo, resitele)
|
||||||
_, setrizeni_resitele, setrizene_body = views.setrid_resitele_a_body(slovnik_body)
|
_, setrizeni_resitele, setrizene_body = views.setrid_resitele_a_body(slovnik_body)
|
||||||
|
|
||||||
|
|
|
@ -1,17 +1,17 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
from django.core.management.base import NoArgsCommand
|
from django.core.management.base import BaseCommand
|
||||||
from django.contrib.sessions.models import Session
|
from django.contrib.sessions.models import Session
|
||||||
from django.contrib.auth.models import User
|
from django.contrib.auth.models import User
|
||||||
|
|
||||||
class Command(NoArgsCommand):
|
class Command(BaseCommand):
|
||||||
u"""Vypiš username přihlášeného orga s daným session_key.
|
u"""Vypiš username přihlášeného orga s daným session_key.
|
||||||
|
|
||||||
Příkaz pro manage.py, který ze vstupu přečte session_key (tak, jak je
|
Příkaz pro manage.py, který ze vstupu přečte session_key (tak, jak je
|
||||||
uložen v cookie sessionid) a pokud session existuje a příslušný přihlášený
|
uložen v cookie sessionid) a pokud session existuje a příslušný přihlášený
|
||||||
uživatel má právo přihlásit se do admina, vypíše jeho username.
|
uživatel má právo přihlásit se do admina, vypíše jeho username.
|
||||||
"""
|
"""
|
||||||
def handle_noargs(self, **options):
|
def handle(self, *args, **options):
|
||||||
session_key = raw_input()
|
session_key = raw_input()
|
||||||
s = Session.objects.get(pk=session_key).get_decoded()
|
s = Session.objects.get(pk=session_key).get_decoded()
|
||||||
user_id = s['_auth_user_id']
|
user_id = s['_auth_user_id']
|
||||||
|
|
|
@ -511,7 +511,7 @@ def vyrob_problemum_ctypes(apps, schema_editor):
|
||||||
|
|
||||||
class Migration(migrations.Migration):
|
class Migration(migrations.Migration):
|
||||||
atomic = False
|
atomic = False
|
||||||
replaces = [('seminar', '0001_initial'), ('seminar', '0002_add_body_views'), ('seminar', '0003_add_skola_zs_ss'), ('seminar', '0004_add_old_dakos_id'), ('seminar', '0005_alter_problem_autor'), ('seminar', '0006_problem_add_timestamp'), ('seminar', '0007_problem_zamereni'), ('seminar', '0008_reseni_forma'), ('seminar', '0009_rename_imported_IDs'), ('seminar', '0010_alter_rok_maturity'), ('seminar', '0011_alter_timestamp_def'), ('seminar', '0012_remove_soustredeni_ucastnici'), ('seminar', '0013_soustredeni_ucastnici_through_model'), ('seminar', '0014_uprava_poznamek'), ('seminar', '0015_soustredeni_text'), ('seminar', '0016_texty_problemu'), ('seminar', '0017_texty_problemu_minor'), ('seminar', '0018_problemnavrh_problemzadany'), ('seminar', '0019_rocnik_ciselne'), ('seminar', '0020_indexy_a_razeni'), ('seminar', '0021_cislo_verejna_vysledkovka'), ('seminar', '0022_decimal_body'), ('seminar', '0023_add_novinky'), ('seminar', '0024_add_organizator'), ('seminar', '0025_zmena_cesty_nahravani_obrazku'), ('seminar', '0026_soustredeni_typ'), ('seminar', '0027_export_flag_a_typ_akce'), ('seminar', '0028_add_body_celkem_views'), ('seminar', '0029_fix_body_celkem_views'), ('seminar', '0030_add_vysledky'), ('seminar', '0031_cislo_pdf'), ('seminar', '0032_cislo_pdf_blank_typos'), ('seminar', '0033_organizator_studuje_popisek'), ('seminar', '0034_reseni_forma_default_email'), ('seminar', '0035_django_imagekit'), ('seminar', '0036_add_org_to_soustredeni'), ('seminar', '0037_prispevek'), ('seminar', '0038_change_meta_prispevek'), ('seminar', '0039_pohadka'), ('seminar', '0040_pohadka_nepovinny_autor'), ('seminar', '0041_konfery'), ('seminar', '0042_cislo_faze'), ('seminar', '0043_uprava_faze'), ('seminar', '0044_uprava_faze'), ('seminar', '0045_cislo_pridani_faze_nahrano'), ('seminar', '0042_auto_20161005_0847'), ('seminar', '0046_merge'), ('seminar', '0047_auto_20170120_2118'), ('seminar', '0048_add_cislo_datum_deadline_soustredeni'), ('seminar', '0049_auto_20190430_2354'), ('seminar', '0050_auto_20190510_2228'), ('seminar', '0051_resitel_to_osoba'), ('seminar', '0052_user_to_organizator'), ('seminar', '0053_organizator_organizuje_od_do'), ('seminar', '0055_smazat_nemigrovane_zastarale_veci'), ('seminar', '0056_vrcholy_pro_rocniky_a_cisla'), ('seminar', '0057_reseni_to_reseni_hodnoceni'), ('seminar', '0058_problem_to_uloha_tema_clanek'), ('seminar', '0059_vytvorit_pohadkanode'), ('seminar', '0060_spoj_stromy'), ('seminar', '0061_kill_frankenstein'), ('seminar', '0062_redukce_modelu_pohadky'), ('seminar', '0063_procisteni_migraci'), ('seminar', '0064_auto_20190610_2358'), ('seminar', '0065_treenode_polymorphic_ctype'), ('seminar', '0066_problem_polymorphic_ctype'), ('seminar', '0067_auto_20190814_0805')]
|
replaces = [('seminar', '0001_initial'), ('seminar', '0002_add_body_views'), ('seminar', '0003_add_skola_zs_ss'), ('seminar', '0004_add_old_dakos_id'), ('seminar', '0005_alter_problem_autor'), ('seminar', '0006_problem_add_timestamp'), ('seminar', '0007_problem_zamereni'), ('seminar', '0008_reseni_forma'), ('seminar', '0009_rename_imported_IDs'), ('seminar', '0010_alter_rok_maturity'), ('seminar', '0011_alter_timestamp_def'), ('seminar', '0012_remove_soustredeni_ucastnici'), ('seminar', '0013_soustredeni_ucastnici_through_model'), ('seminar', '0014_uprava_poznamek'), ('seminar', '0015_soustredeni_text'), ('seminar', '0016_texty_problemu'), ('seminar', '0017_texty_problemu_minor'), ('seminar', '0018_problemnavrh_problemzadany'), ('seminar', '0019_rocnik_ciselne'), ('seminar', '0020_indexy_a_razeni'), ('seminar', '0021_cislo_verejna_vysledkovka'), ('seminar', '0022_decimal_body'), ('seminar', '0023_add_novinky'), ('seminar', '0024_add_organizator'), ('seminar', '0025_zmena_cesty_nahravani_obrazku'), ('seminar', '0026_soustredeni_typ'), ('seminar', '0027_export_flag_a_typ_akce'), ('seminar', '0028_add_body_celkem_views'), ('seminar', '0029_fix_body_celkem_views'), ('seminar', '0030_add_vysledky'), ('seminar', '0031_cislo_pdf'), ('seminar', '0032_cislo_pdf_blank_typos'), ('seminar', '0033_organizator_studuje_popisek'), ('seminar', '0034_reseni_forma_default_email'), ('seminar', '0035_django_imagekit'), ('seminar', '0036_add_org_to_soustredeni'), ('seminar', '0037_prispevek'), ('seminar', '0038_change_meta_prispevek'), ('seminar', '0039_pohadka'), ('seminar', '0040_pohadka_nepovinny_autor'), ('seminar', '0041_konfery'), ('seminar', '0042_cislo_faze'), ('seminar', '0043_uprava_faze'), ('seminar', '0044_uprava_faze'), ('seminar', '0045_cislo_pridani_faze_nahrano'), ('seminar', '0042_auto_20161005_0847'), ('seminar', '0046_merge'), ('seminar', '0047_auto_20170120_2118'), ('seminar', '0048_add_cislo_datum_deadline_soustredeni'), ('seminar', '0049_auto_20190430_2354'), ('seminar', '0050_auto_20190510_2228'), ('seminar', '0051_resitel_to_osoba'), ('seminar', '0052_user_to_organizator'), ('seminar', '0053_organizator_organizuje_od_do'), ('seminar', '0055_smazat_nemigrovane_zastarale_veci'), ('seminar', '0056_vrcholy_pro_rocniky_a_cisla'), ('seminar', '0057_reseni_to_reseni_hodnoceni'), ('seminar', '0058_problem_to_uloha_tema_clanek'), ('seminar', 'fix_0058'), ('seminar', '0059_vytvorit_pohadkanode'), ('seminar', '0060_spoj_stromy'), ('seminar', '0061_kill_frankenstein'), ('seminar', '0062_redukce_modelu_pohadky'), ('seminar', '0063_procisteni_migraci'), ('seminar', '0064_auto_20190610_2358'), ('seminar', '0065_treenode_polymorphic_ctype'), ('seminar', '0066_problem_polymorphic_ctype'), ('seminar', '0067_auto_20190814_0805')]
|
||||||
|
|
||||||
initial = True
|
initial = True
|
||||||
|
|
||||||
|
@ -877,6 +877,7 @@ class Migration(migrations.Migration):
|
||||||
),
|
),
|
||||||
migrations.RunSQL(
|
migrations.RunSQL(
|
||||||
sql='update seminar_rocniky set rocnik_n = cast (rocnik as integer)',
|
sql='update seminar_rocniky set rocnik_n = cast (rocnik as integer)',
|
||||||
|
reverse_sql='update seminar_rocniky set rocnik_n = cast (rocnik as nvarchar(16))',
|
||||||
),
|
),
|
||||||
migrations.RemoveField(
|
migrations.RemoveField(
|
||||||
model_name='rocnik',
|
model_name='rocnik',
|
||||||
|
@ -1733,15 +1734,19 @@ class Migration(migrations.Migration):
|
||||||
# migr 0052
|
# migr 0052
|
||||||
migrations.RunPython(
|
migrations.RunPython(
|
||||||
spoj_k_organizatorum_osoby,
|
spoj_k_organizatorum_osoby,
|
||||||
|
reverse_code=migrations.RunPython.noop,
|
||||||
),
|
),
|
||||||
migrations.RunPython(
|
migrations.RunPython(
|
||||||
fix_problem,
|
fix_problem,
|
||||||
|
reverse_code=migrations.RunPython.noop,
|
||||||
),
|
),
|
||||||
migrations.RunPython(
|
migrations.RunPython(
|
||||||
fix_pohadka,
|
fix_pohadka,
|
||||||
|
reverse_code=migrations.RunPython.noop,
|
||||||
),
|
),
|
||||||
migrations.RunPython(
|
migrations.RunPython(
|
||||||
fix_novinka,
|
fix_novinka,
|
||||||
|
reverse_code=migrations.RunPython.noop,
|
||||||
),
|
),
|
||||||
|
|
||||||
# migr 0053
|
# migr 0053
|
||||||
|
@ -1795,35 +1800,49 @@ class Migration(migrations.Migration):
|
||||||
# migr 0056
|
# migr 0056
|
||||||
migrations.RunPython(
|
migrations.RunPython(
|
||||||
generuj_RocnikNody_a_CisloNody,
|
generuj_RocnikNody_a_CisloNody,
|
||||||
|
reverse_code=migrations.RunPython.noop,
|
||||||
),
|
),
|
||||||
|
|
||||||
# migr 0057
|
# migr 0057
|
||||||
migrations.RunPython(
|
migrations.RunPython(
|
||||||
reseni_to_Reseni,
|
reseni_to_Reseni,
|
||||||
|
reverse_code=migrations.RunPython.noop,
|
||||||
),
|
),
|
||||||
|
|
||||||
# migr 0058
|
# migr 0058
|
||||||
migrations.RunPython(
|
migrations.RunPython(
|
||||||
uloha_to_Uloha,
|
uloha_to_Uloha,
|
||||||
|
reverse_code=migrations.RunPython.noop,
|
||||||
),
|
),
|
||||||
migrations.RunPython(
|
migrations.RunPython(
|
||||||
tema_to_Tema,
|
tema_to_Tema,
|
||||||
|
reverse_code=migrations.RunPython.noop,
|
||||||
),
|
),
|
||||||
migrations.RunPython(
|
migrations.RunPython(
|
||||||
clanek_to_Clanek,
|
clanek_to_Clanek,
|
||||||
|
reverse_code=migrations.RunPython.noop,
|
||||||
),
|
),
|
||||||
migrations.RunPython(
|
migrations.RunPython(
|
||||||
konfery_rucne,
|
konfery_rucne,
|
||||||
|
reverse_code=migrations.RunPython.noop,
|
||||||
|
),
|
||||||
|
|
||||||
|
# migr "fix 0058"
|
||||||
|
migrations.RunSQL(
|
||||||
|
"update seminar_problemy set typ = 'uloha' where typ like 'b_uloha_';",
|
||||||
|
"update seminar_problemy set typ = 'uloha' where typ like 'b_uloha_';"
|
||||||
),
|
),
|
||||||
|
|
||||||
# migr 0059
|
# migr 0059
|
||||||
migrations.RunPython(
|
migrations.RunPython(
|
||||||
vytvor_pohadkanode,
|
vytvor_pohadkanode,
|
||||||
|
reverse_code=migrations.RunPython.noop,
|
||||||
),
|
),
|
||||||
|
|
||||||
# migr 0060
|
# migr 0060
|
||||||
migrations.RunPython(
|
migrations.RunPython(
|
||||||
pokacej_les,
|
pokacej_les,
|
||||||
|
reverse_code=migrations.RunPython.noop,
|
||||||
),
|
),
|
||||||
|
|
||||||
migrations.RemoveField(
|
migrations.RemoveField(
|
||||||
|
|
|
@ -18,7 +18,8 @@ class Migration(migrations.Migration):
|
||||||
preserve_default=False,
|
preserve_default=False,
|
||||||
),
|
),
|
||||||
migrations.RunSQL(
|
migrations.RunSQL(
|
||||||
sql="update seminar_rocniky set rocnik_n = cast (rocnik as integer)"
|
sql="update seminar_rocniky set rocnik_n = cast (rocnik as integer)",
|
||||||
|
reverse_sql='update seminar_rocniky set rocnik_n = cast (rocnik as nvarchar(16))',
|
||||||
),
|
),
|
||||||
migrations.RemoveField(
|
migrations.RemoveField(
|
||||||
model_name='rocnik',
|
model_name='rocnik',
|
||||||
|
|
|
@ -75,8 +75,8 @@ class Migration(migrations.Migration):
|
||||||
]
|
]
|
||||||
|
|
||||||
operations = [
|
operations = [
|
||||||
migrations.RunPython(spoj_k_organizatorum_osoby),
|
migrations.RunPython(spoj_k_organizatorum_osoby, migrations.RunPython.noop),
|
||||||
migrations.RunPython(fix_problem),
|
migrations.RunPython(fix_problem, migrations.RunPython.noop),
|
||||||
migrations.RunPython(fix_pohadka),
|
migrations.RunPython(fix_pohadka, migrations.RunPython.noop),
|
||||||
migrations.RunPython(fix_novinka),
|
migrations.RunPython(fix_novinka, migrations.RunPython.noop),
|
||||||
]
|
]
|
||||||
|
|
|
@ -43,5 +43,5 @@ class Migration(migrations.Migration):
|
||||||
]
|
]
|
||||||
|
|
||||||
operations = [
|
operations = [
|
||||||
migrations.RunPython(generuj_RocnikNody_a_CisloNody),
|
migrations.RunPython(generuj_RocnikNody_a_CisloNody, migrations.RunPython.noop),
|
||||||
]
|
]
|
||||||
|
|
|
@ -30,5 +30,5 @@ class Migration(migrations.Migration):
|
||||||
]
|
]
|
||||||
|
|
||||||
operations = [
|
operations = [
|
||||||
migrations.RunPython(reseni_to_Reseni)
|
migrations.RunPython(reseni_to_Reseni, migrations.RunPython.noop)
|
||||||
]
|
]
|
||||||
|
|
|
@ -154,8 +154,8 @@ class Migration(migrations.Migration):
|
||||||
|
|
||||||
operations = [
|
operations = [
|
||||||
# ashes to Ashes, dust to Dust....
|
# ashes to Ashes, dust to Dust....
|
||||||
migrations.RunPython(uloha_to_Uloha),
|
migrations.RunPython(uloha_to_Uloha, migrations.RunPython.noop),
|
||||||
migrations.RunPython(tema_to_Tema),
|
migrations.RunPython(tema_to_Tema, migrations.RunPython.noop),
|
||||||
migrations.RunPython(clanek_to_Clanek),
|
migrations.RunPython(clanek_to_Clanek, migrations.RunPython.noop),
|
||||||
migrations.RunPython(konfery_rucne),
|
migrations.RunPython(konfery_rucne, migrations.RunPython.noop),
|
||||||
]
|
]
|
||||||
|
|
|
@ -21,9 +21,9 @@ def vytvor_pohadkanode(apps, schema_editor):
|
||||||
class Migration(migrations.Migration):
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
dependencies = [
|
dependencies = [
|
||||||
('seminar', '0058_problem_to_uloha_tema_clanek'),
|
('seminar', 'fix_0058'),
|
||||||
]
|
]
|
||||||
|
|
||||||
operations = [
|
operations = [
|
||||||
migrations.RunPython(vytvor_pohadkanode),
|
migrations.RunPython(vytvor_pohadkanode, migrations.RunPython.noop),
|
||||||
]
|
]
|
||||||
|
|
|
@ -108,5 +108,5 @@ class Migration(migrations.Migration):
|
||||||
]
|
]
|
||||||
|
|
||||||
operations = [
|
operations = [
|
||||||
migrations.RunPython(pokacej_les),
|
migrations.RunPython(pokacej_les, migrations.RunPython.noop),
|
||||||
]
|
]
|
||||||
|
|
|
@ -5,7 +5,7 @@ import django.db.models.deletion
|
||||||
|
|
||||||
def vyrob_treenodum_ctypes(apps, schema_editor):
|
def vyrob_treenodum_ctypes(apps, schema_editor):
|
||||||
# Kód zkopírovaný z dokumentace: https://django-polymorphic.readthedocs.io/en/stable/migrating.html
|
# Kód zkopírovaný z dokumentace: https://django-polymorphic.readthedocs.io/en/stable/migrating.html
|
||||||
# XXX: Nevím, jestli se tohle náhodou nemělo spustit na všech childech (jen/i)
|
# NOTE: Tahle migrace je špatně, 0087 ji opravuje. Možno squashnout pryč.
|
||||||
TreeNode = apps.get_model('seminar', 'TreeNode')
|
TreeNode = apps.get_model('seminar', 'TreeNode')
|
||||||
ContentType = apps.get_model('contenttypes', 'ContentType')
|
ContentType = apps.get_model('contenttypes', 'ContentType')
|
||||||
|
|
||||||
|
@ -27,5 +27,5 @@ class Migration(migrations.Migration):
|
||||||
name='polymorphic_ctype',
|
name='polymorphic_ctype',
|
||||||
field=models.ForeignKey(editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='polymorphic_seminar.treenode_set+', to='contenttypes.ContentType'),
|
field=models.ForeignKey(editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='polymorphic_seminar.treenode_set+', to='contenttypes.ContentType'),
|
||||||
),
|
),
|
||||||
migrations.RunPython(vyrob_treenodum_ctypes, migrations.RunPython.noop),
|
migrations.RunPython(vyrob_treenodum_ctypes, migrations.RunPython.noop, elidable=True),
|
||||||
]
|
]
|
||||||
|
|
|
@ -5,7 +5,7 @@ import django.db.models.deletion
|
||||||
|
|
||||||
def vyrob_problemum_ctypes(apps, schema_editor):
|
def vyrob_problemum_ctypes(apps, schema_editor):
|
||||||
# Kód zkopírovaný z dokumentace: https://django-polymorphic.readthedocs.io/en/stable/migrating.html
|
# Kód zkopírovaný z dokumentace: https://django-polymorphic.readthedocs.io/en/stable/migrating.html
|
||||||
# XXX: Nevím, jestli se tohle náhodou nemělo spustit na všech childech (jen/i)
|
# NOTE: Tahle migrace je špatně, 0087 ji opravuje. Možno squashnout pryč.
|
||||||
Problem = apps.get_model('seminar', 'Problem')
|
Problem = apps.get_model('seminar', 'Problem')
|
||||||
ContentType = apps.get_model('contenttypes', 'ContentType')
|
ContentType = apps.get_model('contenttypes', 'ContentType')
|
||||||
|
|
||||||
|
@ -25,5 +25,5 @@ class Migration(migrations.Migration):
|
||||||
name='polymorphic_ctype',
|
name='polymorphic_ctype',
|
||||||
field=models.ForeignKey(editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='polymorphic_seminar.problem_set+', to='contenttypes.ContentType'),
|
field=models.ForeignKey(editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='polymorphic_seminar.problem_set+', to='contenttypes.ContentType'),
|
||||||
),
|
),
|
||||||
migrations.RunPython(vyrob_problemum_ctypes, migrations.RunPython.noop),
|
migrations.RunPython(vyrob_problemum_ctypes, migrations.RunPython.noop, elidable=True),
|
||||||
]
|
]
|
||||||
|
|
|
@ -103,5 +103,5 @@ class Migration(migrations.Migration):
|
||||||
name='nazev',
|
name='nazev',
|
||||||
field=models.TextField(help_text='Tento název se zobrazuje v nabídkách pro výběr vhodného TreeNode', null=True, verbose_name='název tohoto node'),
|
field=models.TextField(help_text='Tento název se zobrazuje v nabídkách pro výběr vhodného TreeNode', null=True, verbose_name='název tohoto node'),
|
||||||
),
|
),
|
||||||
migrations.RunPython(fix_all_names),
|
migrations.RunPython(fix_all_names, migrations.RunPython.noop),
|
||||||
]
|
]
|
||||||
|
|
|
@ -65,6 +65,9 @@ class Migration(migrations.Migration):
|
||||||
model_name='reseni',
|
model_name='reseni',
|
||||||
name='text_zkraceny',
|
name='text_zkraceny',
|
||||||
),
|
),
|
||||||
|
migrations.DeleteModel( # nejdříve musím smazat objekt ukazující na konferu,
|
||||||
|
name='KonferaNode', # pak až změnit klíč konferám (viz další operace)
|
||||||
|
),
|
||||||
migrations.AddField(
|
migrations.AddField(
|
||||||
model_name='konfera',
|
model_name='konfera',
|
||||||
name='problem_ptr',
|
name='problem_ptr',
|
||||||
|
@ -95,9 +98,6 @@ class Migration(migrations.Migration):
|
||||||
migrations.DeleteModel(
|
migrations.DeleteModel(
|
||||||
name='ClanekNode',
|
name='ClanekNode',
|
||||||
),
|
),
|
||||||
migrations.DeleteModel(
|
|
||||||
name='KonferaNode',
|
|
||||||
),
|
|
||||||
migrations.CreateModel(
|
migrations.CreateModel(
|
||||||
name='Konfery_Ucastnici',
|
name='Konfery_Ucastnici',
|
||||||
fields=[
|
fields=[
|
||||||
|
|
56
seminar/migrations/0084_clanek_cislo.py
Normal file
|
@ -0,0 +1,56 @@
|
||||||
|
# Generated by Django 2.2.13 on 2020-06-17 19:06
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
import django.db.models.deletion
|
||||||
|
from seminar.treelib import get_parent
|
||||||
|
|
||||||
|
import logging
|
||||||
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
def najdi_cislo(apps, schema_editor):
|
||||||
|
Clanek = apps.get_model('seminar', 'Clanek')
|
||||||
|
Hodnoceni = apps.get_model('seminar', 'Hodnoceni')
|
||||||
|
Reseni = apps.get_model('seminar', 'Reseni')
|
||||||
|
ReseniNode = apps.get_model('seminar', 'ReseniNode')
|
||||||
|
CisloNode = apps.get_model('seminar', 'CisloNode')
|
||||||
|
ContentType = apps.get_model('contenttypes', 'ContentType')
|
||||||
|
|
||||||
|
for c in Clanek.objects.all():
|
||||||
|
reseni = c.reseni_set
|
||||||
|
if (reseni.count() != 1): # Pozor, reseni_set je Manager, takže se na něj musí trošku jinak
|
||||||
|
logger.warn(f"Více než jedno řešení pro článek {c}")
|
||||||
|
c.cislo = None
|
||||||
|
c.save()
|
||||||
|
continue
|
||||||
|
r = reseni.first()
|
||||||
|
aktualniNode = r.text_cely # Hlavní ReseniNode pro řešení
|
||||||
|
while aktualniNode is not None:
|
||||||
|
#if isinstance(aktualniNode, CisloNode): # Nejde, protože aktualniNode se tváří jako obecný TreeNode...
|
||||||
|
# Ale v dokumentaci k django-polymorphic se píše, že tam jsou nastavené nějaké fieldy na známé hodnoty :-)
|
||||||
|
# https://django-polymorphic.readthedocs.io/en/stable/migrating.html
|
||||||
|
cislonode_ct = ContentType.objects.get_for_model(CisloNode)
|
||||||
|
akt_ct = aktualniNode.polymorphic_ctype
|
||||||
|
if akt_ct == cislonode_ct:
|
||||||
|
# Zneužíváme tu opačnou vazbu k treenode_ptr, protože
|
||||||
|
# aktualniNode je "jen" TreeNode a ne CisloNode
|
||||||
|
c.cislo = aktualniNode.cislonode.cislo
|
||||||
|
c.save()
|
||||||
|
break
|
||||||
|
aktualniNode = get_parent(aktualniNode)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('seminar', '0083_auto_20200506_1952'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='clanek',
|
||||||
|
name='cislo',
|
||||||
|
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='vydane_clanky', to='seminar.Cislo', verbose_name='číslo vydání'),
|
||||||
|
),
|
||||||
|
migrations.RunPython(najdi_cislo, migrations.RunPython.noop),
|
||||||
|
]
|
32
seminar/migrations/0085_nepovinna_prezdivka.py
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
# Generated by Django 2.2.13 on 2020-06-24 22:57
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
def smaz_prezdivku(apps, schema_editor):
|
||||||
|
Osoba = apps.get_model('seminar', 'Osoba')
|
||||||
|
|
||||||
|
for o in Osoba.objects.filter(prezdivka=''):
|
||||||
|
o.prezdivka = None
|
||||||
|
o.save()
|
||||||
|
|
||||||
|
def pridej_prezdivku(apps, schema_editor):
|
||||||
|
Osoba = apps.get_model('seminar', 'Osoba')
|
||||||
|
|
||||||
|
for o in Osoba.objects.filter(prezdivka=None):
|
||||||
|
o.prezdivka = ''
|
||||||
|
o.save()
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('seminar', '0084_clanek_cislo'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='osoba',
|
||||||
|
name='prezdivka',
|
||||||
|
field=models.CharField(blank=True, max_length=256, null=True, verbose_name='přezdívka'),
|
||||||
|
),
|
||||||
|
migrations.RunPython(smaz_prezdivku, pridej_prezdivku),
|
||||||
|
]
|
17
seminar/migrations/0086_auto_20200819_0959.py
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
# Generated by Django 2.2.15 on 2020-08-19 07:59
|
||||||
|
|
||||||
|
from django.db import migrations
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('seminar', '0085_nepovinna_prezdivka'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterModelOptions(
|
||||||
|
name='organizator',
|
||||||
|
options={'ordering': ['-organizuje_do', 'osoba__jmeno', 'osoba__prijmeni'], 'verbose_name': 'Organizátor', 'verbose_name_plural': 'Organizátoři'},
|
||||||
|
),
|
||||||
|
]
|
49
seminar/migrations/0087_fix_polymorphism.py
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
# Generated by Django 2.2.16 on 2020-09-04 12:06
|
||||||
|
|
||||||
|
from django.db import migrations
|
||||||
|
from logging import getLogger
|
||||||
|
|
||||||
|
log = getLogger(__name__)
|
||||||
|
|
||||||
|
# Oprava migrací 0065 a 0066, kde jsem špatně pochopil django-polymorphic
|
||||||
|
|
||||||
|
# Pomocná funkce -- děláme to samé pro obě polymorfní hierarchie
|
||||||
|
def fix_ctypes(parent: str, children, apps, schema_editor):
|
||||||
|
Parent = apps.get_model('seminar', parent)
|
||||||
|
ContentType = apps.get_model('contenttypes', 'ContentType')
|
||||||
|
|
||||||
|
# Nejdřív všechno smažeme:
|
||||||
|
Parent.objects.update(polymorphic_ctype=None)
|
||||||
|
|
||||||
|
# Opravíme děti
|
||||||
|
for clsname in children:
|
||||||
|
Model = apps.get_model('seminar', clsname)
|
||||||
|
ct = ContentType.objects.get_for_model(Model)
|
||||||
|
Model.objects.update(polymorphic_ctype=ct)
|
||||||
|
|
||||||
|
|
||||||
|
# Ostatní instance mají mít explicitně content type pro rodiče
|
||||||
|
new_ct = ContentType.objects.get_for_model(Parent)
|
||||||
|
for obj in Parent.objects.filter(polymorphic_ctype__isnull=True):
|
||||||
|
log.warn(f"{parent} \"{obj}\" neměl content type -- nejspíš to je instance přímo {parent}!")
|
||||||
|
obj.polymorphic_ctype=new_ct
|
||||||
|
obj.save()
|
||||||
|
|
||||||
|
def fix_treenode(apps, schema_editor):
|
||||||
|
children = ['RocnikNode', 'CisloNode', 'MezicisloNode', 'TemaVCisleNode',
|
||||||
|
'OrgTextNode', 'UlohaZadaniNode', 'UlohaVzorakNode', 'PohadkaNode',
|
||||||
|
'TextNode', 'CastNode', 'ReseniNode']
|
||||||
|
fix_ctypes("TreeNode", children, apps, schema_editor)
|
||||||
|
|
||||||
|
def fix_problem(apps, schema_editor):
|
||||||
|
children = ['Tema', 'Clanek', 'Uloha'] # FIXME: Konfera z nějakého důvodu tenhle field vůbec nemá, asi je to špatně.
|
||||||
|
fix_ctypes("Problem", children, apps, schema_editor)
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
dependencies = [
|
||||||
|
('seminar', '0086_auto_20200819_0959'),
|
||||||
|
]
|
||||||
|
operations = [
|
||||||
|
migrations.RunPython(fix_treenode, migrations.RunPython.noop),
|
||||||
|
migrations.RunPython(fix_problem, migrations.RunPython.noop),
|
||||||
|
]
|
35
seminar/migrations/0088_perm_org_a_ucastnik.py
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
# Generated by Django 2.2.15 on 2020-09-05 10:10
|
||||||
|
from django.db import migrations
|
||||||
|
|
||||||
|
|
||||||
|
def add_perms(apps, schema_editor):
|
||||||
|
ContentType = apps.get_model('contenttypes', 'ContentType')
|
||||||
|
User = apps.get_model('auth', 'User')
|
||||||
|
Permission = apps.get_model('auth', 'Permission')
|
||||||
|
Resitel = apps.get_model('seminar', 'Resitel')
|
||||||
|
|
||||||
|
c = ContentType.objects.get_for_model(User)
|
||||||
|
org_perm = Permission.objects.filter(codename__exact='org').first()
|
||||||
|
if not org_perm:
|
||||||
|
org_perm = Permission.objects.create(codename='org', name='org', content_type=c)
|
||||||
|
resitel_perm = Permission.objects.filter(codename__exact='resitel').first()
|
||||||
|
if not resitel_perm:
|
||||||
|
resitel_perm = Permission.objects.create(codename='resitel', name='resitel', content_type=c)
|
||||||
|
for r in Resitel.objects.all():
|
||||||
|
u = r.osoba.user
|
||||||
|
if u:
|
||||||
|
u.user_permissions.add(resitel_perm)
|
||||||
|
for org in User.objects.all():
|
||||||
|
if org and org.is_staff:
|
||||||
|
org.user_permissions.add(org_perm)
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('seminar', '0087_fix_polymorphism'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.RunPython(add_perms, migrations.RunPython.noop),
|
||||||
|
]
|
18
seminar/migrations/0089_cislo_datum_preddeadline.py
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
# Generated by Django 2.2.16 on 2020-10-13 19:40
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('seminar', '0088_perm_org_a_ucastnik'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='cislo',
|
||||||
|
name='datum_preddeadline',
|
||||||
|
field=models.DateField(blank=True, help_text='Datum pro příjem řešení, která se otisknou v dalším čísle', null=True, verbose_name='datum předdeadline'),
|
||||||
|
),
|
||||||
|
]
|
14
seminar/migrations/fix_0058.py
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
from django.db import migrations
|
||||||
|
|
||||||
|
sql = "update seminar_problemy set typ = 'uloha' where typ like 'b_uloha_';"
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('seminar', '0058_problem_to_uloha_tema_clanek'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.RunSQL(sql, sql),
|
||||||
|
]
|
||||||
|
|
|
@ -13,7 +13,7 @@ from django.utils.encoding import force_text
|
||||||
from django.utils.text import slugify
|
from django.utils.text import slugify
|
||||||
from django.urls import reverse
|
from django.urls import reverse
|
||||||
from django.core.cache import cache
|
from django.core.cache import cache
|
||||||
from django.core.exceptions import ObjectDoesNotExist
|
from django.core.exceptions import ObjectDoesNotExist, ValidationError
|
||||||
from django.contrib.contenttypes.models import ContentType
|
from django.contrib.contenttypes.models import ContentType
|
||||||
from django.utils.text import get_valid_filename
|
from django.utils.text import get_valid_filename
|
||||||
from imagekit.models import ImageSpecField, ProcessedImageField
|
from imagekit.models import ImageSpecField, ProcessedImageField
|
||||||
|
@ -65,7 +65,7 @@ class Osoba(SeminarModelBase):
|
||||||
|
|
||||||
prijmeni = models.CharField('příjmení', max_length=256)
|
prijmeni = models.CharField('příjmení', max_length=256)
|
||||||
|
|
||||||
prezdivka = models.CharField('přezdívka', max_length=256)
|
prezdivka = models.CharField('přezdívka', blank=True, null=True, max_length=256)
|
||||||
|
|
||||||
# User, pokud má na webu účet
|
# User, pokud má na webu účet
|
||||||
user = models.OneToOneField(settings.AUTH_USER_MODEL, blank=True, null=True,
|
user = models.OneToOneField(settings.AUTH_USER_MODEL, blank=True, null=True,
|
||||||
|
@ -442,6 +442,9 @@ class Cislo(SeminarModelBase):
|
||||||
datum_deadline = models.DateField('datum deadline', blank=True, null=True,
|
datum_deadline = models.DateField('datum deadline', blank=True, null=True,
|
||||||
help_text='Datum pro příjem řešení úloh zadaných v tomto čísle')
|
help_text='Datum pro příjem řešení úloh zadaných v tomto čísle')
|
||||||
|
|
||||||
|
datum_preddeadline = models.DateField('datum předdeadline', blank=True, null=True,
|
||||||
|
help_text='Datum pro příjem řešení, která se otisknou v dalším čísle')
|
||||||
|
|
||||||
datum_deadline_soustredeni = models.DateField(
|
datum_deadline_soustredeni = models.DateField(
|
||||||
'datum deadline soustředění',
|
'datum deadline soustředění',
|
||||||
blank=True, null=True,
|
blank=True, null=True,
|
||||||
|
@ -580,6 +583,11 @@ class Organizator(SeminarModelBase):
|
||||||
help_text="Škola, např. MFF, VŠCHT, VUT, ... prostě aby se nemuselo psát do studuje"
|
help_text="Škola, např. MFF, VŠCHT, VUT, ... prostě aby se nemuselo psát do studuje"
|
||||||
"školu, ale jen obor, možnost zobrazit zvlášť")
|
"školu, ale jen obor, možnost zobrazit zvlášť")
|
||||||
|
|
||||||
|
def clean(self):
|
||||||
|
if self.organizuje_od and self.organizuje_do and (self.organizuje_od > self.organizuje_do):
|
||||||
|
raise ValidationError("Organizátor nemůže skončit s organizováním dříve než začal!")
|
||||||
|
super().clean()
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
if self.osoba.prezdivka:
|
if self.osoba.prezdivka:
|
||||||
return "{} '{}' {}".format(self.osoba.jmeno,
|
return "{} '{}' {}".format(self.osoba.jmeno,
|
||||||
|
@ -591,6 +599,11 @@ class Organizator(SeminarModelBase):
|
||||||
class Meta:
|
class Meta:
|
||||||
verbose_name = 'Organizátor'
|
verbose_name = 'Organizátor'
|
||||||
verbose_name_plural = 'Organizátoři'
|
verbose_name_plural = 'Organizátoři'
|
||||||
|
# Řadí aktivní orgy na začátek, pod tím v pořadí od nejstarších neaktivní orgy.
|
||||||
|
# TODO: Chtěl bych spíš mít nejstarší orgy dole.
|
||||||
|
# TODO: Zohledňovat přezdívky?
|
||||||
|
# TODO: Sjednotit s tím, jak se řadí organizátoři v seznau orgů na webu
|
||||||
|
ordering = ['-organizuje_do', 'osoba__jmeno', 'osoba__prijmeni']
|
||||||
|
|
||||||
@reversion.register(ignore_duplicates=True)
|
@reversion.register(ignore_duplicates=True)
|
||||||
class Soustredeni(SeminarModelBase):
|
class Soustredeni(SeminarModelBase):
|
||||||
|
@ -692,6 +705,7 @@ class Problem(SeminarModelBase,PolymorphicModel):
|
||||||
(STAV_SMAZANY, 'Smazaný'),
|
(STAV_SMAZANY, 'Smazaný'),
|
||||||
]
|
]
|
||||||
stav = models.CharField('stav problému', max_length=32, choices=STAV_CHOICES, blank=False, default=STAV_NAVRH)
|
stav = models.CharField('stav problému', max_length=32, choices=STAV_CHOICES, blank=False, default=STAV_NAVRH)
|
||||||
|
# Téma je taky Problém, takže má stavy, "zadané" témátko je aktuálně otevřené a dá se k němu něco poslat (řešení nebo článek)
|
||||||
|
|
||||||
zamereni = TaggableManager(verbose_name='zaměření',
|
zamereni = TaggableManager(verbose_name='zaměření',
|
||||||
help_text='Zaměření M/F/I/O problému, příp. další tagy', blank=True)
|
help_text='Zaměření M/F/I/O problému, příp. další tagy', blank=True)
|
||||||
|
@ -731,7 +745,9 @@ class Problem(SeminarModelBase,PolymorphicModel):
|
||||||
def verejne(self):
|
def verejne(self):
|
||||||
# FIXME: Tohle se liší podle typu problému, má se udělat polymorfně.
|
# FIXME: Tohle se liší podle typu problému, má se udělat polymorfně.
|
||||||
# Zatím je tu jen dummy fail-safe default: nic není veřejné.
|
# Zatím je tu jen dummy fail-safe default: nic není veřejné.
|
||||||
|
# Doporučené řešení: dělat tohle podle stavu problému a veřejnosti čísla, ve kterém je
|
||||||
return False
|
return False
|
||||||
|
# FIXME: Tohle je blbost
|
||||||
return (self.cislo_zadani and self.cislo_zadani.verejne())
|
return (self.cislo_zadani and self.cislo_zadani.verejne())
|
||||||
verejne.boolean = True
|
verejne.boolean = True
|
||||||
|
|
||||||
|
@ -793,6 +809,9 @@ class Clanek(Problem):
|
||||||
verbose_name = 'Článek'
|
verbose_name = 'Článek'
|
||||||
verbose_name_plural = 'Články'
|
verbose_name_plural = 'Články'
|
||||||
|
|
||||||
|
cislo = models.ForeignKey(Cislo, blank=True, null=True, on_delete=models.PROTECT,
|
||||||
|
verbose_name='číslo vydání', related_name='vydane_clanky')
|
||||||
|
|
||||||
def kod_v_rocniku(self):
|
def kod_v_rocniku(self):
|
||||||
if self.stav == 'zadany':
|
if self.stav == 'zadany':
|
||||||
# Nemělo by být potřeba
|
# Nemělo by být potřeba
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
{% extends "base.html" %}
|
|
||||||
|
|
||||||
{# zmena fotky #}{% block header %}archiv{% endblock %}
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{% extends "seminar/archiv/base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<div>
|
<div>
|
||||||
|
@ -8,10 +8,6 @@
|
||||||
{% endblock %}{% endblock %}
|
{% endblock %}{% endblock %}
|
||||||
</h2>
|
</h2>
|
||||||
|
|
||||||
<!-- <div class='nahledy_cisel'>
|
|
||||||
{% autoescape off %}{{ nahledy }}{% endautoescape %}
|
|
||||||
</div>-->
|
|
||||||
|
|
||||||
{% for rocnik, url_png in object_list.items %}
|
{% for rocnik, url_png in object_list.items %}
|
||||||
|
|
||||||
<div class="rocnik_pole">
|
<div class="rocnik_pole">
|
||||||
|
@ -33,7 +29,7 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="flip-card-back">
|
<div class="flip-card-back" id="archiv">
|
||||||
<div class="popis_rocniku">
|
<div class="popis_rocniku">
|
||||||
Jednotlivá čísla:
|
Jednotlivá čísla:
|
||||||
<ul>
|
<ul>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{% extends "seminar/archiv/base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<div>
|
<div>
|
||||||
|
@ -18,9 +18,9 @@
|
||||||
<h2>Zadané problémy</h2>
|
<h2>Zadané problémy</h2>
|
||||||
<ul>
|
<ul>
|
||||||
{% for p in v_cisle_zadane %}
|
{% for p in v_cisle_zadane %}
|
||||||
<li{% if user.is_staff and not cislo.verejne %} class='mam-org-only'{% endif %}>
|
<li{% if user.je_org and not cislo.verejne %} class='mam-org-only'{% endif %}>
|
||||||
{% if user.is_staff or cislo.verejne %}
|
{% if user.je_org or cislo.verejne %}
|
||||||
<a href='{{ p.verejne_url }}'>{% endif %}{{ p.kod_v_rocniku }} {{ p.nazev }} {{ p.body_v_zavorce }}{% if user.is_staff or cislo.verejne %}</a>{% endif %}
|
<a href='{{ p.verejne_url }}'>{% endif %}{{ p.kod_v_rocniku }} {{ p.nazev }} {{ p.body_v_zavorce }}{% if user.je_org or cislo.verejne %}</a>{% endif %}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</ul>
|
</ul>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@ -29,14 +29,14 @@
|
||||||
<h2>Řešené problémy</h2>
|
<h2>Řešené problémy</h2>
|
||||||
<ul>
|
<ul>
|
||||||
{% for p in resene_problemy %}
|
{% for p in resene_problemy %}
|
||||||
<li{% if user.is_staff and not cislo.verejne %} class='mam-org-only'{% endif %}>
|
<li{% if user.je_org and not cislo.verejne %} class='mam-org-only'{% endif %}>
|
||||||
{% if user.is_staff or cislo.verejne %}
|
{% if user.je_org or cislo.verejne %}
|
||||||
<a href='{{ p.verejne_url }}'>{% endif %}{{ p.kod_v_rocniku }} {{ p.nazev }} {{ p.body_v_zavorce }}{% if user.is_staff or cislo.verejne %}</a>{% endif %}
|
<a href='{{ p.verejne_url }}'>{% endif %}{{ p.kod_v_rocniku }} {{ p.nazev }} {{ p.body_v_zavorce }}{% if user.je_org or cislo.verejne %}</a>{% endif %}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</ul>
|
</ul>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if user.is_staff %}
|
{% if user.je_org %}
|
||||||
<div class="mam-org-only">
|
<div class="mam-org-only">
|
||||||
<h2> Orgovské odkazy </h2>
|
<h2> Orgovské odkazy </h2>
|
||||||
<ul>
|
<ul>
|
||||||
|
@ -52,13 +52,13 @@
|
||||||
<h2>Výsledkovka</h2>
|
<h2>Výsledkovka</h2>
|
||||||
|
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if user.is_staff %}
|
{% if user.je_org %}
|
||||||
<div class='mam-org-only'>
|
<div class='mam-org-only'>
|
||||||
<h2>Výsledkovka (neveřejná)</h2>
|
<h2>Výsledkovka (neveřejná)</h2>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if cislo.verejna_vysledkovka or user.is_staff %}
|
{% if cislo.verejna_vysledkovka or user.je_org %}
|
||||||
<table class='vysledkovka'>
|
<table class='vysledkovka'>
|
||||||
<tr class='border-b'>
|
<tr class='border-b'>
|
||||||
<th class='border-r'>#
|
<th class='border-r'>#
|
||||||
|
@ -66,7 +66,7 @@
|
||||||
{% for p in problemy %}
|
{% for p in problemy %}
|
||||||
<th class='border-r'><a href="{{ p.verejne_url }}">{{ p.kod_v_rocniku }}</a>
|
<th class='border-r'><a href="{{ p.verejne_url }}">{{ p.kod_v_rocniku }}</a>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
<th class='border-r'>Za číslo</sup>
|
<th class='border-r'>Za číslo
|
||||||
<th class='border-r'>Za ročník
|
<th class='border-r'>Za ročník
|
||||||
<th class='border-r'>Odjakživa
|
<th class='border-r'>Odjakživa
|
||||||
{% for rv in radky_vysledkovky %}
|
{% for rv in radky_vysledkovky %}
|
||||||
|
@ -88,7 +88,7 @@
|
||||||
</table>
|
</table>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if not cislo.verejna_vysledkovka and user.is_staff %}
|
{% if not cislo.verejna_vysledkovka and user.je_org %}
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{% extends "seminar/archiv/base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<h1>
|
<h1>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{% extends "seminar/archiv/base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
{% block title %}
|
{% block title %}
|
||||||
{{prispevek.nazev}}
|
{{prispevek.nazev}}
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
{% extends "seminar/archiv/base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
{% load comments %}
|
{% load comments %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<div {% if not problem.verejne and user.is_staff %}class="mam-org-only"{% endif %}>
|
<div {% if not problem.verejne and user.je_org %}class="mam-org-only"{% endif %}>
|
||||||
{% block problem %}
|
{% block problem %}
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
{% if user.is_staff %}
|
{% if user.je_org %}
|
||||||
<div class='mam-org-only'>
|
<div class='mam-org-only'>
|
||||||
|
|
||||||
<h2>Text - org</h2>
|
<h2>Text - org</h2>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{% extends "seminar/archiv/base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<div>
|
<div>
|
||||||
|
@ -62,7 +62,7 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{% if vysledkovka %}
|
{% if vysledkovka %}
|
||||||
{% if user.is_staff %}
|
{% if user.je_org %}
|
||||||
<div class='mam-org-only'>
|
<div class='mam-org-only'>
|
||||||
<a href='vysledkovka.tex'>Výsledkovka ročníku (LaTeX)</a>
|
<a href='vysledkovka.tex'>Výsledkovka ročníku (LaTeX)</a>
|
||||||
</div>
|
</div>
|
||||||
|
@ -72,7 +72,7 @@
|
||||||
{% include "seminar/vysledkovka_rocnik.html" %}
|
{% include "seminar/vysledkovka_rocnik.html" %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if user.is_staff and vysledkovka_s_neverejnymi %}
|
{% if user.je_org and vysledkovka_s_neverejnymi %}
|
||||||
<div class='mam-org-only'>
|
<div class='mam-org-only'>
|
||||||
<h2>Výsledková listina včetně neveřejných bodů</h2>
|
<h2>Výsledková listina včetně neveřejných bodů</h2>
|
||||||
{% with radky_vyledkovky_s_neverejnymi as radky_vysledkovky %}
|
{% with radky_vyledkovky_s_neverejnymi as radky_vysledkovky %}
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
{% with "/archiv" as cesta %}
|
|
||||||
|
|
||||||
<div id='submenu'>
|
|
||||||
<ul>
|
|
||||||
<li class="{% if selected == "cisla" %}selected{% endif %}"><a href="{{cesta}}/cisla/">Čísla</a>
|
|
||||||
{# TODO zprovoznit až budou témata v db <li class="{% if selected == "temata" %}selected{% endif %}"><a href="{{cesta}}/temata/">Témata</a> #}
|
|
||||||
{# TODO zprovoznit až budou úlohy v db <li class="{% if selected == "ulohy" %}selected{% endif %}"><a href="{{cesta}}/ulohy/">Úlohy</a> #}
|
|
||||||
{# <li class="{% if selected == "vysledky" %}selected{% endif %}"><a href="{{cesta}}/vysledky/">Výsledkové listiny</a> #}
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
{% endwith %}
|
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{% extends "seminar/archiv/base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<h1>
|
<h1>
|
||||||
|
@ -11,7 +11,7 @@
|
||||||
<h2>Ročník {{ rocnik }}</h2>
|
<h2>Ročník {{ rocnik }}</h2>
|
||||||
<ul>
|
<ul>
|
||||||
{% for tema in temata %}
|
{% for tema in temata %}
|
||||||
<li><a href="{{ tema.verejne_utl }}"> {{ tema.kod_v_rocniku }}: {{ tema.nazev }} </a></li>
|
<li><a href="{{ tema.verejne_url }}"> {{ tema.kod_v_rocniku }}: {{ tema.nazev }} </a></li>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</ul>
|
</ul>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
{% extends "base.html" %}
|
|
||||||
|
|
||||||
{% block menu_clanky %}selected{% endblock %}
|
|
||||||
|
|
||||||
{# zmena fotky #}{% block header %}clanky{% endblock %}
|
|
||||||
|
|
||||||
{% block submenu %}
|
|
||||||
{% include "seminar/clanky/submenu.html" %}
|
|
||||||
{% endblock %}
|
|
||||||
|
|
|
@ -1,11 +1,5 @@
|
||||||
{% extends 'seminar/clanky/resitelske_clanky.html' %}
|
{% extends 'seminar/clanky/resitelske_clanky.html' %}
|
||||||
|
|
||||||
{% block submenu %}
|
|
||||||
{% with "org" as selected %}
|
|
||||||
{% include "seminar/clanky/submenu.html" %}
|
|
||||||
{% endwith %}
|
|
||||||
{% endblock submenu %}
|
|
||||||
|
|
||||||
{% block nadpis1a %}{% block nadpis1b %}
|
{% block nadpis1a %}{% block nadpis1b %}
|
||||||
Organizátorské články
|
Organizátorské články
|
||||||
{% endblock %}{% endblock %}
|
{% endblock %}{% endblock %}
|
||||||
|
|
|
@ -1,13 +1,5 @@
|
||||||
{% extends 'base.html' %}
|
{% extends 'base.html' %}
|
||||||
|
|
||||||
{% block menu_clanky %}selected{% endblock %}
|
|
||||||
|
|
||||||
{% block submenu %}
|
|
||||||
{% with "resitel" as selected %}
|
|
||||||
{% include "seminar/clanky/submenu.html" %}
|
|
||||||
{% endwith %}
|
|
||||||
{% endblock submenu %}
|
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
|
|
||||||
<h1>
|
<h1>
|
||||||
|
@ -17,7 +9,7 @@
|
||||||
</h1>
|
</h1>
|
||||||
|
|
||||||
{% for clanek in object_list %}
|
{% for clanek in object_list %}
|
||||||
{% with clanek.cislo_zadani.rocnik.rocnik as rocnik %}
|
{% with clanek.cislo.rocnik.rocnik as rocnik %}
|
||||||
{% ifchanged rocnik %}
|
{% ifchanged rocnik %}
|
||||||
{% if not forloop.first %}</ul>{% endif %}
|
{% if not forloop.first %}</ul>{% endif %}
|
||||||
<h2>{{ rocnik }}. ročník</h2>
|
<h2>{{ rocnik }}. ročník</h2>
|
||||||
|
|