#!/usr/bin/perl
# Zobrazí propozice turnaje předaného parametrem.
# (c) 2004-2006 Dan Zeman <zeman@ufal.mff.cuni.cz>
# Licence: GNU GPL

use utf8; # říct Perlu, že konstantní řetězce ve zdrojáku jsou v UTF
use open ":utf8"; # budeme-li otvírat statické propozice, Perl musí vědět, že jsou v UTF-8
use Encode; # knihovna pro překódování ne-ASCII znaků
use DBI; # spolupráce se serverem MySQL
use dancgi; # čtení parametrů z webu nebo z ARGV
use cas; # práce s daty a časem
use jazyky; # jazykové verze textů
use mso; # funkce pro generování stránek o olympiádě
binmode(STDOUT, ":utf8"); # říct Perlu, že UTF chceme i na výstupu



# Připojit se k databázi.
$databaze = mso::pripojit_se_k_databazi();



# Výchozí nastavení parametrů. Může být přebito parametry z URL/ARGV.
mso::provest_vychozi_nastaveni_parametru(\%konfig, $databaze);
# Načíst parametry z URL.
dancgi::cist_parametry(\%konfig);
# Umožnit volat skript z příkazového řádku a předat parametry tam (např. perl partie.pl zdroj=cas).
dancgi::rozebrat_parametry($ARGV[0], \%konfig);
# Opsat z parametrů jazyk a pak doplnit jazykově závislé hodnoty.
$konfig{jazyk} = "cs" if($konfig{jazyk} eq "");
$jazyky::jazyk = $konfig{jazyk};



# Zjistit z databáze údaje o akci.
$akce = zjistit_udaje_o_akci($konfig{rok}, $konfig{hra}, $konfig{turnaj});



# Vypsat propozice.
mso::vypsat_stranku(
{
    "nazev"  => "MSO: $konfig{rok}: Propozice",
    "nadpis" => $akce->{jazyky::zjistit("klic_nazev")},
    "telo"   => propozice($akce, \%konfig),
    "rok"  => $konfig{rok},
});



###############################################################################
# PODPROGRAMY
###############################################################################



#------------------------------------------------------------------------------
# Zjistí údaje o akci.
#------------------------------------------------------------------------------
sub zjistit_udaje_o_akci
{
    my $rok = shift;
    my $hra = shift;
    my $turnaj = shift;
    # Načíst z databáze údaje o akci.
    my $nazev_jazyk = jazyky::zjistit("klic_nazev");
    my $nazev_hry_jazyk = jazyky::zjistit("klic_nazev_hry");
    my $kdo_se_muze_zucastnit_jazyk = jazyky::zjistit("klic_kdo_muze");
    my $hraci_system_jazyk = jazyky::zjistit("klic_hraci_system");
    my $kriteria_jazyk = jazyky::zjistit("klic_kriteria");
    my $pocet_kol_jazyk = jazyky::zjistit("klic_pocet_kol");
    my $tempo_jazyk = jazyky::zjistit("klic_tempo");
    my $cena1_jazyk = jazyky::zjistit("klic_1_cena");
    my $cena2_jazyk = jazyky::zjistit("klic_2_cena");
    my $cena3_jazyk = jazyky::zjistit("klic_3_cena");
    my $dalsi_ceny_jazyk = jazyky::zjistit("klic_dalsi_ceny");
    my $poznamka_jazyk = jazyky::zjistit("klic_poznamka");
    my @nazvy =
    (
        "rok", "kod_hry", "kod_turnaje",
        "pentamind", "pentaskup", $nazev_jazyk, $nazev_hry_jazyk,
        "propozice", "zacatek", "zacatek_1_kola", "konec", "mistnost", "kapacita",
        $kdo_se_muze_zucastnit_jazyk, "prihlasky", $hraci_system_jazyk, $kriteria_jazyk, $pocet_kol_jazyk, $tempo_jazyk,
        "startovne", "startovne_2", "startovne_3", "startovne_4", "startovne_sleva", "organizator", "organizator2",
        $cena1_jazyk, $cena2_jazyk, $cena3_jazyk, $dalsi_ceny_jazyk, "porizovaci_cena", "celkova_hodnota", "foto_ceny", "sponzor",
        $poznamka_jazyk, "tiskova_zprava", "pocet_ucastniku", "pocet_prihlasenych"
    );
    my $nazvy = join(", ", @nazvy);
    my $dotaz = "SELECT $nazvy FROM akce WHERE (rok = '$rok') AND (kod_hry = '$hra') AND (kod_turnaje = '$turnaj')";
    my $dtzobj = $databaze->prepare($dotaz);
    $dtzobj->execute();
    my @radek = map{decode("utf8", $_)}($dtzobj->fetchrow_array());
    my %akce;
    for(my $i = 0; $i<=$#nazvy; $i++)
    {
        $akce{$nazvy[$i]} = $radek[$i];
    }
    # Oddělit data od časů.
    if($akce{zacatek} =~ m/^(\d+)\.(\d+)\.(\d+) (\d+):(\d+):\d+$/)
    {
        $akce{_zacatek_datum_rok} = "$1.$2.$3";
        $akce{_zacatek_datum} = "$1.$2.";
        $akce{_zacatek_cas} = "$4:$5";
    }
    if($akce{konec} =~ m/^(\d+)\.(\d+)\.(\d+) (\d+):(\d+):\d+$/)
    {
        $akce{_konec_datum_rok} = "$1.$2.$3";
        $akce{_konec_datum} = "$1.$2.";
        $akce{_konec_cas} = "$4:$5";
    }
    if($akce{zacatek_1_kola} =~ m/^(\d+)\.(\d+)\.(\d+) (\d+):(\d+):\d+$/)
    {
        $akce{_zacatek1_datum} = "$1.$2.";
        $akce{_zacatek1_cas} = "$4:$5";
    }
    return \%akce;
}



#------------------------------------------------------------------------------
# Vypíše tělo propozic k dané hře.
#------------------------------------------------------------------------------
sub propozice
{
    my $akce = shift;
    my $konfig = shift;
    my $nazev_jazyk = jazyky::zjistit("klic_nazev");
    my $nazev_hry_jazyk = jazyky::zjistit("klic_nazev_hry");
    my $kdo_se_muze_zucastnit_jazyk = jazyky::zjistit("klic_kdo_muze");
    my $hraci_system_jazyk = jazyky::zjistit("klic_hraci_system");
    my $kriteria_jazyk = jazyky::zjistit("klic_kriteria");
    my $pocet_kol_jazyk = jazyky::zjistit("klic_pocet_kol");
    my $tempo_jazyk = jazyky::zjistit("klic_tempo");
    my $cena1_jazyk = jazyky::zjistit("klic_1_cena");
    my $cena2_jazyk = jazyky::zjistit("klic_2_cena");
    my $cena3_jazyk = jazyky::zjistit("klic_3_cena");
    my $dalsi_ceny_jazyk = jazyky::zjistit("klic_dalsi_ceny");
    my $poznamka_jazyk = jazyky::zjistit("klic_poznamka");
    # Zjistit letošní datum pro včasnou přihlášku.
    my $dotaz = "SELECT vcasne_prihlasky_do FROM rocniky WHERE rok = '$akce->{rok}'";
    my $dtzobj = $databaze->prepare($dotaz);
    $dtzobj->execute();
    my @radek = map{decode("utf8", $_)}($dtzobj->fetchrow_array());
    my $vcasne_prihlasky_do = $radek[0];
    my $stranka;
    # Zjistit, ve kterých letech se tento turnaj konal.
    my $roky = mso::dotazat_se_databaze($databaze, "rok", "akce WHERE (kod_hry = '$akce->{kod_hry}') AND (kod_turnaje = '$akce->{kod_turnaje}')");
    my @odkazy_na_jine_roky;
    
     if(-f "$konfig->{_cesta_html_system}/obr/fotky/$akce->{kod_hry}/$akce->{rok}$akce->{kod_hry}$akce->{kod_turnaje}01.jpg")
     {
        $stranka .= "<img src=\"$konfig->{_cesta_html_prohlizec}/obr/fotky/$akce->{kod_hry}/$akce->{rok}$akce->{kod_hry}$akce->{kod_turnaje}01.jpg\" align=right width=350>";
     }
     elsif(-f "$konfig->{_cesta_html_system}/obr/fotky/$akce->{kod_hry}/$akce->{kod_hry}$akce->{kod_turnaje}.jpg")
     {
        $stranka .= "<img src=\"$konfig->{_cesta_html_prohlizec}/obr/fotky/$akce->{kod_hry}/$akce->{kod_hry}$akce->{kod_turnaje}.jpg\" align=right width=350>";
     }
     elsif(-f "$konfig->{_cesta_html_system}/obr/fotky/$akce->{kod_hry}/$akce->{kod_hry}.jpg")
     {
        $stranka .= "<img src=\"$konfig->{_cesta_html_prohlizec}/obr/fotky/$akce->{kod_hry}/$akce->{kod_hry}.jpg\" align=right width=350>";
     }

    
    
    foreach my $rok (map{$_->{rok}}(@{$roky}))
    {
        if($rok==$akce->{rok})
        {
            push(@odkazy_na_jine_roky, $rok);
        }
        else
        {
            my $parametry = dancgi::sestavit_parametry_odkaz($konfig, "telo=propozice.pl", "rok=$rok");
            push(@odkazy_na_jine_roky, "<a href=\"index.pl?$parametry\" target=\"_top\">$rok</a>");
        }
    }
    if(scalar(@odkazy_na_jine_roky)>1)
    {
        $stranka .= "<p>".jazyky::zjistit("turnaj_se_konal_v_letech")." ".join(", ", @odkazy_na_jine_roky).".\n";
    }
    elsif(cas::ted()->{eden}>cas::datum2eden($akce->{_zacatek_datum_rok}))
    {
        $stranka .= "<p>".jazyky::zjistit("turnaj_se_konal_v_roce")." $odkazy_na_jine_roky[0].\n";
    }
    else
    {
        $stranka .= "<p>".jazyky::zjistit("turnaj_se_bude_konat_v_roce")." $odkazy_na_jine_roky[0].\n";
    }
    # Přidat odkaz na seznam přihlášených nebo na výsledky.
    if($akce->{kod_hry} eq "pet")
    {
        my $parametry = dancgi::sestavit_parametry_odkaz($konfig, "telo=pentamind.pl");
        $stranka .= jazyky::zjistit("vysledky_najdete_zde", $akce->{rok}, $parametry)."</p>\n";
    }
    else
    {
        # Nejdřív zjistit, jestli k této akci existují výsledky.
        my $dotaz = "SELECT COUNT(kod_osoby) AS pocet FROM vysledky WHERE (rok = '$akce->{rok}') AND (kod_hry = '$akce->{kod_hry}') AND (kod_akce = '$akce->{kod_turnaje}')";
        my $dtzobj = $databaze->prepare($dotaz);
        $dtzobj->execute();
        my @radek = map{decode("utf8", $_)}($dtzobj->fetchrow_array());
        my $n_vysledku = $radek[0];
        if($n_vysledku)
        {
            my $parametry = dancgi::sestavit_parametry_odkaz($konfig, "telo=vysledky.pl");
            $stranka .= "<p>".jazyky::zjistit("vysledky_najdete_zde", $akce->{rok}, $parametry)."</p>\n";
        }
    }
    # Přidat odkaz na seznam akcí v dané hře.
    my $parametry = dancgi::sestavit_parametry_odkaz($konfig, "telo=hra.pl");
    $stranka .= "<p>".jazyky::zjistit("seznam_akci_ve_hre_najdete_zde", $akce->{nazev_hry}, $parametry)."</p>\n";
    # Parametry přihlášky musíme uchystat už zde, protože je můžeme potřebovat jak uvnitř bloku s dynamickými propozicemi, tak na konci dyn. i stat. propozic.
    # Při volání přihlášky nepředávat kód hry a turnaje, je to zbytečné a omezíme
    # kombinatorickou explozi při převádění stránek na statické.
    my %parametry_prihlaska = %main::konfig;
    delete($parametry_prihlaska{text});
    delete($parametry_prihlaska{hra});
    delete($parametry_prihlaska{turnaj});
    my $odkaz_prihlaska = dancgi::sestavit_parametry_odkaz(\%parametry_prihlaska, "telo=prihlaska.pl");
    # Sestavit stránku s propozicemi akce.
    # Některé turnaje mají propozice uložené v samostatném souboru. U takových
    # turnajů ignorovat databázi a místo ní sem zkopírovat obsah dotyčného souboru.
    # Nespokojit se s tvrzením databáze, že statické propozice existují, zkontrolovat
    # skutečnou existenci souboru na disku.
    if($akce->{propozice} && -f "propozice/$jazyky::jazyk/$akce->{propozice}")
    {
        open(STATICKE, "propozice/$jazyky::jazyk/$akce->{propozice}");
        while(<STATICKE>)
        {
            $stranka .= $_;
        }
        close(STATICKE);
    }
    # Normální dynamické propozice z databáze.
    else
    {
        if($akce->{_konec_datum} eq $akce->{_zacatek_datum})
        {
            $stranka .= "<p><b>".jazyky::zjistit("turnaj_se_uskutecni")." ".jazyky::zjistit("den".cas::den_v_tydnu(cas::datum2eden($akce->{_zacatek_datum_rok}))."g")." $akce->{_zacatek_datum_rok} $akce->{_zacatek1_cas} - $akce->{_konec_cas}.</b></br>\n";
        }
        else
        {
            $stranka .= "<p><b>".jazyky::zjistit("turnaj_se_uskutecni")." $akce->{_zacatek_datum_rok} $akce->{_zacatek1_cas} - $akce->{_konec_datum_rok} $akce->{_konec_cas}.</b></p>\n";
        }
        $stranka .= "<p>".jazyky::zjistit("kdo_muze").": <b>".$akce->{$kdo_se_muze_zucastnit_jazyk}."</b></p>";
        # Uvést, zda se výsledky započítávají do Pětimysli, a pokud ano, tak za kterou hru.
        my $parametry = dancgi::sestavit_parametry_odkaz($konfig, "telo=propozice.pl", "hra=pet", "turnaj=oly");
        if($akce->{pentamind})
        {
            $stranka .= "<p>".jazyky::zjistit("propozice_pentamind_ano", $akce->{$nazev_hry_jazyk}, $parametry, 8*$akce->{pentaskup})."</p>\n";
        }
        else
        {
            $stranka .= "<p>".jazyky::zjistit("propozice_pentamind_ne", "", $parametry)."</p>\n";
        }
        # Zjistit, zda tuto hru máme v pokladnici a můžeme na ni udělat odkaz.
        my $db_hry = DBI->connect("DBI:mysql:hry") or print STDERR ("Nelze se pripojit k databazi: $DBI::errstr\n");
        my $kody_z_pokladnice = mso::dotazat_se_databaze($db_hry, "kod", "hry WHERE (kod = '$akce->{kod_hry}')");
        my $odkaz_do_pokladnice;
        if($kody_z_pokladnice->[0]{kod} eq $akce->{kod_hry})
        {
            $odkaz_do_pokladnice = "https://hrejsi.cz/cgi/hry/hry.pl?hra=$akce->{kod_hry}";
        }
        else
        {
            $odkaz_do_pokladnice = "https://hrejsi.cz/cgi/hry/hry.pl";
        }
        my $parametry = dancgi::sestavit_parametry_odkaz($konfig, "telo=text.pl", "text=ludoteka.htm");
        $stranka .= "<p>".jazyky::zjistit("trenovat_v_ludotece", $odkaz_do_pokladnice, $parametry)."</p>";
        my $odkaz_prihlaseni = dancgi::sestavit_parametry_odkaz(\%main::konfig, "telo=prihlaseni.pl");
        # Jestliže akce ještě nezačala, upozornit hráče, aby se přihlásili včas.
        my $jeste_nezacalo = cas::ted()->{eden} < cas::datum2eden($akce->{_zacatek_datum_rok});
        if($jeste_nezacalo && $akce->{prihlasky} eq "předem")
        {
            $stranka .= jazyky::zjistit("jak_se_prihlasit", $vcasne_prihlasky_do, $odkaz_prihlaska, $odkaz_prihlaseni);
        }
        elsif($jeste_nezacalo && $akce->{prihlasky} eq "kvalifikovaní registrace")
        {
            $stranka .= jazyky::zjistit("registrace_kvalifikovanych", $odkaz_prihlaska);
        }
        elsif($akce->{prihlasky} eq "netřeba") 
        {
            $stranka .= jazyky::zjistit("netreba_se_prihlasit");
        } 
        elsif($akce->{prihlasky} eq "kapacita vyčerpána") 
        {
            $stranka .= jazyky::zjistit("kapacita_plna");
        }
        $stranka .= "<table>\n";
        if($akce->{mistnost} ne "")
        {
            $stranka .= "<tr><td valign=top><b>".jazyky::zjistit("misto_konani").": </b></td><td colspan=\"2\"> Praha, \n";
            $stranka .= "<a HREF=\"$main::konfig{_cesta_html_prohlizec}/mso/$jazyky::jazyk/kde.htm\">Tyršův dům,</a> \n";
            $stranka .= "$akce->{\"mistnost\"}</td></tr>\n";
        }
        if($akce->{zacatek} ne "")
        {
            # Zobrazit datum pouze u vícedenních turnajů. U ostatních je zdatum a kdatum prázdný řetězec.
            my $zdatum;
            my $kdatum;
            if($akce->{_konec_datum} ne $akce->{_zacatek_datum})
            {
                $zdatum = $akce->{_zacatek_datum_rok}." ";
                $kdatum = $akce->{_konec_datum_rok}." ";
            }
            # Když je začátek prezentace a začátek 1.kola ve stejnou chvíli, není to turnaj, ale nějaká akce.
            if($akce->{zacatek_1_kola} eq $akce->{zacatek})
            {
                   $stranka .= "<tr><td valign=top><b>".jazyky::zjistit("zacatek_akce").": </b></td><td colspan=\"2\"> $zdatum$akce->{_zacatek_cas}</td></tr>\n";
                   $stranka .= "<tr><td valign=top><b>".jazyky::zjistit("konec_akce").": </b></td><td colspan=\"2\"> $kdatum$akce->{_konec_cas}</td></tr>\n";
            }
            else
            {
                   $stranka .= "<tr><td valign=top><b>".jazyky::zjistit("harmonogram").": </b></td>\n";
                   $stranka .= "  <td valign=top>\n";
                   $stranka .= "    <table cellpadding=\"0\" cellspacing=\"0\">\n";
                   $stranka .= "      <tr><td>$zdatum$akce->{_zacatek_cas}</td><td>&nbsp;&nbsp;</td><td>".jazyky::zjistit("zacatek_prezence")."</td></tr>\n";
                   $stranka .= "      <tr><td>$zdatum$akce->{_zacatek1_cas}</td><td>&nbsp;&nbsp;</td><td>".jazyky::zjistit("zacatek_1_kola")."</td></tr>\n";
                   $stranka .= "      <tr><td>$kdatum$akce->{_konec_cas}</td><td>&nbsp;&nbsp;</td><td>".jazyky::zjistit("predpokladany_konec")."</td></tr>\n";
                   $stranka .= "    </table>\n";
                   $stranka .= "  </td>\n";
                   $stranka .= "</tr>\n";
            }
                   
        }
        if($akce->{$hraci_system_jazyk} ne "")
        {
            $stranka .= "<tr><td valign=top><b>".jazyky::zjistit("hraci_system").": </b></td><td colspan=\"2\"> $akce->{$hraci_system_jazyk}</td></tr>\n";
        }
        if($akce->{$kriteria_jazyk} ne "")
        {
            $stranka .= "<tr><td valign=top><b>".jazyky::zjistit("kriteria").": </b></td><td colspan=\"2\"> $akce->{$kriteria_jazyk}</td></tr>\n";
        }
        if($akce->{$pocet_kol_jazyk} ne "")
        {
            $stranka .= "<tr><td valign=top><b>".jazyky::zjistit("pocet_kol").": </b></td><td colspan=\"2\"> $akce->{$pocet_kol_jazyk}</td></tr>\n";
        }
        if($akce->{$tempo_jazyk} ne "")
        {
            $stranka .= "<tr><td valign=top><b>".jazyky::zjistit("tempo").": </b></td><td colspan=\"2\"> $akce->{$tempo_jazyk}</td></tr>\n";
        }
        if($akce->{$poznamka_jazyk} ne "")
        {
            $stranka .= "<tr><td valign=top><b>".jazyky::zjistit("poznamka").": </b></td><td colspan=\"2\"> $akce->{$poznamka_jazyk}</td></tr>\n";
        }
        if($akce->{organizator} eq "Klub deskových her Paluba")
        {
            $stranka .= "<tr><td valign=top><b>".jazyky::zjistit("organizator").": </b></td><td colspan=\"2\"> \n";
            $stranka .= "<a href=\"https://hrejsi.cz/paluba/\" target=\"_top\">Klub deskových her Paluba </a>\n";
            $stranka .= "&nbsp;&nbsp;<a href=\"https://hrejsi.cz/paluba/\" target=\"_top\">";
            $stranka .= "<img align=\"center\" SRC=\"$konfig->{_cesta_html_prohlizec}/obr/loga/paluba.png\" BORDER=\"0\" height=\"50\"></a></td></tr>\n";
        }
        else
        {
            if($akce->{organizator} ne "")
            {
                $stranka .= "<tr valign=top><td><b>".jazyky::zjistit("organizator").": </b></td colspan=\"2\"><td> $akce->{organizator}</td></tr>\n";
            }
        }
        if($akce->{organizator2} ne "")
        {
            my $org2 = $akce->{organizator2};
            if($org2 eq "Česká asociace Scrabble")
            {
                $org2 = "<a href=\"https://scrabble.hrejsi.cz/\" target=\"_top\">$org2</a>";
            }
            $stranka .= "<tr><td valign=top><b>".jazyky::zjistit("organizator")." 2: </b></td colspan=\"2\"><td> $org2</td></tr>\n";
        }
        if($akce->{sponzor} ne "")
        {
            $stranka .= "<tr><td valign=top><b>".jazyky::zjistit("sponzor").": </b></td><td colspan=\"2\"> $akce->{sponzor}</td></tr>\n";
        }
        if($akce->{startovne} != 0)
        {       
            if($akce->{startovne} == $akce->{startovne_2} &&
               $akce->{startovne} == $akce->{startovne_3} &&
               $akce->{startovne} == $akce->{startovne_4})
            {
                $stranka .= "<tr valign=top><td><b>".jazyky::zjistit("startovne").": </b></td><td>$akce->{startovne} Kč</td></tr>\n";
            }
            else
            {
                # Jestliže ještě nevypršel termín pro včasné přihlášky, upozornit na něj v souvislosti s výší startovného.
                if(cas::ted()->{eden}<=cas::datum2eden($vcasne_prihlasky_do))
                {
                    $stranka .= "<tr><td valign=top><b>".jazyky::zjistit("startovne").": </b></td>";
                    $stranka .=     "<td><table><tr><td>".jazyky::zjistit("normalni_startovne", $akce->{startovne_2})."</td>";
                    $stranka .=     "<td>(".jazyky::zjistit("pozde_prihlaseni", $vcasne_prihlasky_do, $akce->{startovne}).")</td></tr>\n";
                    $stranka .= "<tr><td>".jazyky::zjistit("zlevnene_startovne", $akce->{startovne_3})."</td>";
                    $stranka .=     "<td>(".jazyky::zjistit("pozde_prihlaseni", $vcasne_prihlasky_do, $akce->{startovne_2}).")</td></tr>\n";
                    $stranka .= "<tr><td>".jazyky::zjistit("detske_startovne", $akce->{startovne_4})."</td>";
                    $stranka .=     "<td>(".jazyky::zjistit("pozde_prihlaseni", $vcasne_prihlasky_do, $akce->{startovne_3}).")</td></tr>\n";
                    $stranka .= "<tr><td colspan=\"2\">".jazyky::zjistit("zlevnene_vysvetlivky")."</td></tr></table></td>\n";
                }
                # Jestliže termín pro včasné přihlášky vypršel, vypsat pouze vyšší hodnoty startovného.
                else
                {
                    $stranka .= "<tr><td><b>".jazyky::zjistit("startovne").": </b></td>";
                    $stranka .=     "<td colspan=\"2\">".jazyky::zjistit("bohuzel_termin_vyprsel")."</td></tr>\n";
                    $stranka .= "<tr><td></td><td colspan=\"2\">".jazyky::zjistit("normalni_startovne", $akce->{startovne})."</td></tr>\n";
                    $stranka .= "<tr><td></td><td colspan=\"2\">".jazyky::zjistit("zlevnene_startovne", $akce->{startovne_2})."</td></tr>\n";
                    $stranka .= "<tr><td></td><td colspan=\"2\">".jazyky::zjistit("detske_startovne", $akce->{startovne_3})."</td></tr>\n";
                    $stranka .= "<tr><td></td><td colspan=\"2\">".jazyky::zjistit("zlevnene_vysvetlivky")."</td></tr>\n";
                }
            }
        }
        if($akce->{"1_cena"} =~ m/^Drobné ceny/)
        {
            $stranka .= "<tr><td valign=top><b>".jazyky::zjistit("ceny").":</b></td><td colspan=\"2\"><b>$akce->{$cena1_jazyk}</b></td></tr>\n";
        }
        elsif($akce->{$cena1_jazyk} ne "")
        {
            $stranka .= "<tr><td valign=top><b>".jazyky::zjistit("ceny").": </b></td><td colspan=\"2\"><b>".jazyky::zjistit("1_cena").": $akce->{$cena1_jazyk}</b></td></tr>\n";
            if($akce->{$cena2_jazyk} ne "")
            {
                $stranka .= "<tr><td></td><td colspan=\"2\"><b>".jazyky::zjistit("2_cena").": $akce->{$cena2_jazyk}</b></td></tr>\n";
            }
            if($akce->{$cena3_jazyk} ne "")
            {
                $stranka .= "<tr><td></td><td colspan=\"2\"><b>".jazyky::zjistit("3_cena").": $akce->{$cena3_jazyk}</b></td></tr>\n";
            }
            if($akce->{$dalsi_ceny_jazyk} ne "")
            {
                $stranka .= "<tr><td></td><td colspan=\"2\">$akce->{$dalsi_ceny_jazyk}</td></tr>\n";
            }
            $stranka .= "<tr><td></td><td colspan=\"2\">".jazyky::zjistit("ceny_garantujeme")."</td></tr>\n";
        }
        $stranka .= "</table>\n";
    }
    # Jestliže akce ještě nezačala, zobrazit odkaz na přihlášku.
    if(cas::ted()->{eden}<cas::datum2eden($akce->{_zacatek_datum_rok}))
    {
        $stranka .= "<p><a href=\"index.pl?$odkaz_prihlaska\" target=\"_top\">".jazyky::zjistit("PRIHLASKA")."</a></p>\n";
    }
    return $stranka;
}
