#!/usr/bin/perl

use strict;
use warnings;

sub pisz_naglowek_p {
my ($nazwisko,$numer,$rok_ak,$pan,$kierunek,$specjalnosc,$semestr)=@_;
print <<'EOP';
% Standardowy nagłówek
\documentclass[a4paper,twoside]{article}
% Cztery następne linie włączają obsługę polskich liter
\usepackage[T1]{fontenc}
\usepackage[polish]{babel}
\fontencoding{T1}
\usepackage[utf8]{inputenc}
% Następna linia włącza alternatywny sposób wydruku polskich liter
% minimalne pogarsza wydruk, dramatycznie polepsza PDF
\usepackage{ae}
% Dwie następne linie dodają udogodnienia do tabelek
\usepackage{dcolumn}
\usepackage{longtable}
\usepackage{multicol}
\setlength{\hoffset}{-1in}
\setlength{\textwidth}{7.2in}
%\setlength{\evensidemargin}{0pt}
%\setlength{\oddsidemargin}{0pt}
\setlength{\evensidemargin}{\oddsidemargin}
\pagestyle{empty}
\begin{document}
EOP
}

sub pisz_naglowek_k {
my ($nazwisko,$numer,$rok_ak,$pan,$kierunek,$specjalnosc,$semestr)=@_;
print <<'EOP';
% Nagłówek karty
\begin{tabular}{p{2in}p{2.5in}p{2in}}
Uniwersytet Wrocławski Wydział Matematyki i Informatyki
& %
&Rok akademicki 
EOP
print $rok_ak,"\\\\\n", "\\end{tabular}\n";

print <<'EOP';

\vspace{0.1in}

\centerline{\bf Karta Egzaminacyjna}

\vspace{0.1in}

EOP
if($pan) {
	print "Student:";
} else { 
	print "Studentka:";
}
print <<'EOP';
\hfil{\large\bf
EOP
print $nazwisko,"}\n\\hfil\nNr albumu:",$numer,"\n\n";


print "Kierunek: $kierunek\\hfil\n";
print "Specjalność: $specjalnosc\\hfil\n";
print "Semestr studiów: $semestr\n";

print <<'EOP';

\vspace{0.1in}
EOP
print "jest "; 

if($pan) { 
	print "uprawniony";
} else { 
	print "uprawniona";
}
print <<'EOP';
 do składania egzaminów z niżej wymienionych przedmiotów
podczas zimowej sesji egzaminacyjnej z zastrzeżeniem uprzedniego 
uzyskania zaliczeń wymaganych planem nauczania zgodnie z regulaminem
studiów.

% Główna tabela przedmiotów
\begin{longtable}{|p{1.4in}|p{1.0in}|D{,}{,}{2}|p{0.3in}|
p{0.3in}|p{0.43in}|p{0.3in}|p{0.3in}|p{0.3in}|p{0.43in}|}
\hline
& & &\multicolumn{3}{c|}{Zaliczenie}&\multicolumn{4}{c|}{Egzamin}\\
Przedmiot&Nazwisko egzaminatora&{\rm Punkty}&%\multicolumn{3}{c}
Oce\-na&Data&Podpis&%\\
\multicolumn{2}{c|}{Ocena}&Data&Podpis\\
\hline
\endhead
EOP
}

sub pisz_przedmiot {
my ($przedmiot, $punkty)=@_;
print "$przedmiot& &$punkty& & & & & & &";
print <<'EOP';
\\
\hline
EOP
}

sub pisz_end_k {
print <<'EOP';
\end{longtable}
\vfill
\eject
EOP
}

sub pisz_end_p {
print <<'EOP';
\end{document}
EOP
}

#Glowny program
pisz_naglowek_p ;
# Najpierw petla po studentach
#  pisz_naglowek($nazwisko,$numer,$rok_ak,$pan,$kierunek,$specjalnosc,$semestr)
pisz_naglowek_k("Andrzej Kowalski",999999,"2001/2002",1,"Matematyka",
	"Matematyka z Informatyką",7);
# Tu ma byc petla po przedmiotach
pisz_przedmiot("Techniki kompilacji i interpretacji programow komputerowych",6.0);
pisz_przedmiot("Algorytmy optymalizacji",6.0);

pisz_end_k;

# Drugi student
pisz_naglowek_k("Jan Kowalski",999998,"2001/2002",1,"Matematyka",
        "Matematyka z Informatyką",7);
pisz_przedmiot("Program interpretacji technik komputerowych",6.0
);
pisz_przedmiot("Optymalizacja algorytmów",6.0);

pisz_end_k;

pisz_end_p;
