
% \iffalse meta-comment
%
% Copyright (C) 2014-2026 by Tibor Tómács
%
% This file may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.2
% of this license or (at your option) any later version.
% The latest version of this license is in:
%
% http://www.latex-project.org/lppl.txt
%
% and version 1.2 or later is part of all distributions of LaTeX
% version 1999/12/01 or later.
%
% \fi
%
% \iffalse
%<*driver>
\ProvidesFile{thesis-ekf.dtx}
%</driver>
%<class>\NeedsTeXFormat{LaTeX2e}[2020/10/01]
%<class>\ProvidesClass{thesis-ekf}[2026/01/10 v5.0 Thesis class for Eszterházy Károly Catholic University (Eger, Hungary)]
%<class>
%<*driver>
\documentclass[nohyperref]{ltxdoc}
\OnlyDescription
\usepackage[T1]{fontenc}
\PassOptionsToPackage{defaults=hu-min}{magyar.ldf}
\usepackage[english,magyar]{babel}
\usepackage[a4paper,left=2in,top=1.5in,bottom=1.5in]{geometry}
\usepackage[pdfstartview=FitH,bookmarksnumbered,allcolors=black,bookmarksopen,colorlinks]{hyperref}
\usepackage{bookmark,lmodern,fancyvrb,upquote}
\fvset{gobble=1,commandchars=+()}
\let\oldmeta\meta
\def\meta#1{{\rmfamily\oldmeta{#1}}}
\def\param#1{\hspace*{-.5em}{\ttfamily#1}}
\setlength{\parindent}{0pt}
\def\descriptionlabel#1{\hspace{\labelsep}\texttt{#1} --}
\def\MacroFont{\ttfamily}
\setlength{\overfullrule}{5pt}
\begin{document}
	\DocInput{./thesis-ekf.dtx}
\end{document}
%</driver>
% \fi
%
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%     Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
%     Digits \0\1\2\3\4\5\6\7\8\9
%     Exclamation         \!     Double quote    \"     Hash (number)   \#
%     Dollar              \$     Percent         \%     Ampersand       \&
%     Acute accent        \'     Left paren      \(     Right paren     \)
%     Asterisk            \*     Plus            \+     Comma           \,
%     Minus               \-     Point           \.     Solidus         \/
%     Colon               \:     Semicolon       \;     Less than       \<
%     Equals              \=     Greater than    \>     Question mark   \?
%     Commercial at       \@     Left bracket    \[     Backslash       \\
%     Right bracket       \]     Circumflex      \^     Underscore      \_
%     Grave accent        \`     Left brace      \{     Vertical bar    \|
%     Right brace         \}     Tilde           \~}
%
% \GetFileInfo{thesis-ekf.cls}
% \title{Thesis class for\\ Eszterházy Károly Catholic University\\\textsf{thesis-ekcu.cls} alias \textsf{thesis-ekf.cls}\\[2mm]{\normalsize v5.0 (2026/01/10)}}
% \author{Tibor Tómács\\{\normalsize\href{mailto:tomacs.tibor@gmail.com}{\texttt{tomacs.tibor@gmail.com}}}}
% \date{}
% \maketitle
%
% {\selectlanguage{english}
% This bundle provides the |thesis-ekcu| (alias |thesis-ekf|) \LaTeX\ class for theses and dissertations at \emph{Eszterházy Károly Catholic University} (Eger, Hungary; \url{https://uni-eszterhazy.hu/en}).
% This documentation is written in Hungarian.}
%
% \section{Bevezető}
%
% A |thesis-ekcu| dokumentumosztály segítségével az \emph{Eszterházy Károly Katolikus Egyetem} szabályzatának megfelelő szakdolgozatokat lehet készíteni.
% Az első verzió |thesis-ekf| néven 2014-ben készült, amikor az intézmény neve Eszterházy Károly Főiskola volt.
% Ennek rövidítése a dokumentumosztály nevében szereplő |ekf|.
% Kompatibilitási okokból a dokumentumosztály elérhető |thesis-ekcu| és |thesis-ekf| néven is, melyek teljes mértében egyenértékűek.
%
% \bigskip Az egyetem szakdolgozatának formai követelményei a következők:
%
% \begin{itemize}
% \item A4-es lap- és 12\,pt betűméret,
% \item a margó a kötés oldalon 30\,mm, a többi 25\,mm,
% \item oldalszámozás a láblécben arab számozással,
% \item a fejezetcímek középre, a további szintek címei balra igazítva,
% \item a főszöveg antikva betűcsaláddal kiszedve,
% \item sorkizárt igazítás, másfeles sortávolság.
% \end{itemize}
%
% A |thesis-ekcu| ezeket a paramétereket automatikusan beállítja, továbbá a megfelelő címoldal elkészítését is elvégzi.
%
% \section{A dokumentumosztály által betöltött csomagok}
%
% A |thesis-ekcu| dokumentumosztály a |report| osztályt használja alapként, továbbá a következő csomagokat tölti be:
%
% \begin{description}
% \item[kvoptions] Opciók definiálásához.
% \item[iftex] PDF/DVI kimenet detektálásához.
% \item[hyperref] Elektronikus verzióhoz. Opciók: |pdfstartview=FitH|, |linktocpage|, |allcolors=blue|, |bookmarksnumbered|, |pdfborder={0 0 0}|.
% \item[geometry] Oldalméretek beállításához. Opciók: |a4paper|, |inner=30mm|, |top=25mm|, |outer=25mm|, |bottom=25mm|.
% \item[lmodern] Latin Modern fontkészlethez. |times| opció esetén nem töltődik be.
% \item[fixcmex] Latin Modern fontkészlet esetén a nagy operátor jeleket méretezhetővé teszi. |times| opció esetén nem töltődik be.
% \item[cmupint] Latin Modern fontkészlet esetén az integráljelek álló alakúak. Csak az |upint| és |times=false| opciók esetén töltődik be.
% \item[setspace] Sortávolság beállításához.
% \item[graphicx] Képek betöltéséhez.
% \item[newtxtext] Times fontkészlethez. |times| opció esetén töltődik be.
% \item[newtxmath] Times matematikai fontkészlethez. |times| opció esetén töltődik be.
% \item[fontsize] A |fontsize=|\meta{méret} opcióhoz. Csak akkor töltődik be, ha a \meta{méret} különbözik a |10pt|, |11pt| és |12pt| értékektől.
% \item[upquote] Verbatimban |'| és |`| jelekért.
% \end{description}
%
% \section{A dokumentumosztály betöltése és legfontosabb opciói}
%
%\begin{Verbatim}
%\documentclass+oarg(opciók){thesis-ekcu}
%\end{Verbatim}
%vagy
%\begin{Verbatim}
%\documentclass+oarg(opciók){thesis-ekf}
%\end{Verbatim}
%
% A dokumentumosztályt a preambulum elején ezzel lehet betölteni.
% Opciók nélkül akkor használja, ha a szakdolgozatot egyoldalasan szeretné kinyomtatni, vagy ha olyan elektronikus verziót akar, amelyben a linkek nem színes karakterrel jelennek meg.
% A fontosabb \meta{opciók} a következők:
%
% \begin{macro}{twoside}
% Ha a szakdolgozatot kétoldalasan szeretné kinyomtatni, akkor ezt az opciót alkalmazza!
% Ne használja egyoldalas nyomtatáshoz illetve elektronikus verzióhoz!
% \end{macro}
%
% \begin{macro}{colorlinks}
% A linkek színes karakterekkel jelennek meg.
% Ezt csak a szakdolgozat elektronikus verziójához használja, a nyomtatott verzióhoz nem kell!
% \end{macro}
%
% \begin{macro}{tocnopagenum}
% A tartalomjegyzéknek nem lesz oldalszámozása. Ha közvetlenül a címoldalt követően van elhelyezve a tartalomjegyzék, akkor az első számozott oldal csak ezután következik.
% \end{macro}
%
% \begin{macro}{reverseorder}
% Alapbeállítás esetén a címoldalon a szerző bal, a témavezető pedig a jobb oldalon helyezkedik el.
% Ezzel az opcióval fordított lesz a sorrend.
% \end{macro}
%
% \begin{macro}{times}
% Alapbeállítás esetén a Latin Modern fontkészletet használja a dokumentumosztály.
% Ezzel az opcióval áttérhet a Times fontkészletre, amely nagyon hasonló a közismert Times New Roman-hoz.
% Ne használja |xelatex| vagy |lualatex| fordító esetén!
% \end{macro}
%
% \begin{macro}{upint}
% Alapbeállítás esetén a dokumentumban található integráljelek dőltek.
% Ezzel az opcióval álló alakúak lesznek és kiemelt képletekben a határok az integráljel alatt és fölött helyezkednek el (hasonlóan az |amsmath| csomag |intlimits| opciójához).
% Ezt főleg magyar nyelvű dokumentumok esetén használja.
% \end{macro}
%
% \section{Címoldal létrehozása}
%
% \begin{macro}{\institute}\param{\marg{intézmény neve}}
% Ezzel kell megadni annak az intézménynek a nevét, ahol a szakdolgozat készült.
% Az Eszterházy Károly Katolikus Egyetem esetében az egyetem nevét nem kell kiírni, mert azt tartalmazza a logója.
% Ekkor elég csak az intézet nevét feltüntetni.
% \end{macro}
%
% \begin{macro}{\title}\param{\marg{szakdolgozat címe}}
% Ezzel kell megadni a szakdolgozat címét.
% \end{macro}
%
% \begin{macro}{\author}\param{\{\meta{szerző neve}\textbackslash\textbackslash\meta{szak}\}}
% Ezzel kell megadni a szakdolgozat szerzőjének a nevét és a szakot.
% \end{macro}
%
% \begin{macro}{\supervisor}\param{\{\meta{témavezető neve}\textbackslash\textbackslash\meta{beosztás}\}}
% Ezzel kell megadni a szakdolgozat témavezetőjének a nevét és beosztását.
% \end{macro}
%
% \begin{macro}{\collaborator}\param{\oarg{felirat}}
% Ha több szerzőt vagy témavezetőt akar beírni, akkor azokat ezzel kell elválasztani.
% A \meta{felirat} opció használatával ez a felirat jelenik meg a soronkövetkező név felett. Például
%\begin{Verbatim}
%\author{Kiss István\\matematika BSc
%        \collaborator
%        Nagy János\\matematika BSc}
%\supervisor{Dr. Szabó Gábor\\egyetemi docens
%            \collaborator[Külső konzulens]
%            Dr. Takács Tamás\\adjunktus\\ELTE}
%\end{Verbatim}
% \end{macro}
%
% \begin{macro}{\city}\param{\marg{város}}
% Ezzel kell megadni annak a városnak a nevét, ahol az intézmény található.
% \end{macro}
%
% \begin{macro}{\date}\param{\marg{dolgozat leadásának éve}}
% Ezzel kell megadni a szakdolgozat leadásának az évét.
% Ha nem adja meg, akkor az aktuális évszám fog megjelenni.
% \end{macro}
%
% \begin{macro}{\maketitle}
% A standard dokumentumosztályokhoz hasonlóan a címoldal itt is ezzel a paranccsal hozható létre.
% \end{macro}
%
% \section{Példa a használatra}
%
% A következő sablon akkor működik helyesen, ha UTF-8 kódolású fájlban van.
%
%\begin{Verbatim}
%\documentclass{thesis-ekcu}
%\usepackage[T1]{fontenc}
%\PassOptionsToPackage{defaults=hu-min}{magyar.ldf}
%\usepackage[magyar]{babel}
%
%\begin{document}
%
%\institute{Matematikai és Informatikai Intézet}
%\title{Szakdolgozat címe}
%\author{Hallgató neve\\szak}
%\supervisor{Konzulens neve\\beosztás}
%\city{Eger}
%\date{2024}
%\maketitle
%
%\tableofcontents
%\chapter{Fejezet címe}
%\section{Szakasz címe}
%\begin{thebibliography}{1}
%\bibitem{cimke} \textsc{Szerző}: Cím, Kiadó, Hely, évszám.
%\end{thebibliography}
%
%\end{document}
%\end{Verbatim}
%
% \section{A dokumentumosztály testreszabása}
%
% A |thesis-ekcu| dokumentumosztály testreszabható opciókkal és parancsokkal, így más egyetemek is használhatják.
%
% \subsection{A dokumentumosztály opciói}
%
% A |twoside|, |colorlinks|, |tocnopagenum|, |reverseorder|, |times| és |upint| opciókról már volt szó.
% További opciók:
%
% \medskip
% \begin{macro}{centeredchapter}\param{=false}
% Ezzel a fejezetcímek nem középre, hanem balra zártan lesznek kiszedve.
% \end{macro}
%
% \begin{macro}{warning}\param{=false}
% A dokumentumosztály figyelmeztetéseinek kikapcsolása.
% \end{macro}
%
% \begin{macro}{10pt}
% Az alapbetűméret 10\,pt.
% \end{macro}
%
% \begin{macro}{11pt}
% Az alapbetűméret 11\,pt.
% \end{macro}
%
% \begin{macro}{12pt}
% Az alapbetűméret 12\,pt (alapopció).
% \end{macro}
%
% \begin{macro}{fontsize}\param{=\meta{betűméret}}
% A \meta{betűméret} adja meg az alapbetűméretet, amely bármilyen méret lehet.
% Ha a \meta{betűméret} különbözik a |10pt|, |11pt| és |12pt| értékektől, akkor  ez az opció a beállításhoz betölti a |fontsize| csomagot.
% Ennek az opciónak a használata felülbírálja a |10pt|, |11pt| és |12pt| opciókat.
% \end{macro}
%
% \begin{macro}{logodown}
% Alapbeállítás esetén a logó az intézmény neve felett van.
% Ezzel a logó az intézmény neve alá kerül.
% \end{macro}
%
% \begin{macro}{logofont}\param{=\meta{betűtípus}}
% Ha a logó helyén szöveg van (lásd a |\logo| parancsot), akkor annak a betűtípusa (alapérték |\large\scshape|).
% \end{macro}
%
% \begin{macro}{logosep}\param{=\meta{méret}}
% A logó alatti térköz a normál sortávolságon felül, ha a |logodown| opció nincs bekapcsolva (alapérték |0mm|).
% \end{macro}
%
% \begin{macro}{institutefont}\param{=\meta{betűtípus}}
% Az intézménynév betűtípusa (alapérték |\large\scshape|).
% \end{macro}
%
% \begin{macro}{institutesep}\param{=\meta{méret}}
%  Az intézmény neve alatti térköz a normál sortávolságon felül, ha a |logodown| opció be van kapcsolva (alapérték |10mm|).
% \end{macro}
%
% \begin{macro}{titlefont}\param{=\meta{betűtípus}}
% A dolgozat címének betűtípusa (alapérték |\Huge\bfseries|).
% \end{macro}
%
% \begin{macro}{titlesep}\param{=\meta{méret}}
% A cím feletti térköz mérete |\stretch{1}|.
% Ezzel a cím alatti térközt lehet beállítani a normál sortávolságon felül (alapérték |\stretch{1.4}|).
% \end{macro}
%
% \begin{macro}{captionfont}\param{=\meta{betűtípus}}
% A szerző és témavezető nevei feletti feliratok betűtípusa (alapérték |\large\bfseries|).
% \end{macro}
%
% \begin{macro}{captionsep}\param{=\meta{méret}}
% Az előbbi feliratok alatti térköz a normál sortávolságon felül, amennyiben nem használja a |\collaborator| parancsot több szerző vagy témavezető megadásához (alapérték |0mm|).
% \end{macro}
%
% \begin{macro}{collcaptionsep}\param{=\meta{méret}}
% Az előbbi feliratok alatti térköz a normál sortávolságon felül, amennyiben használja az |\collaborator| parancsot több szerző vagy témavezető megadásához (alapérték |2mm|).
% Ahol az |collcaptionsep| értékét fel kell használni, ott még nem lehet tudni, hogy lesz-e |\collaborator| kifejtve.
% Ezért ennek érzékeléséhez kereszthivatkozást alkalmaz a kód, így csak a második fordításnál alakulnak ki a helyes térközök. Mivel például a tartalomjegyzék miatt úgyis többször kell fordítani, ezért ez nem okoz gondot.
% Ha |latexmk|-val vagy valamilyen hasonló programmal fordít, akkor természetesen azt csak egyszer kell futtatni.
% \end{macro}
%
% \begin{macro}{authorfont}\param{=\meta{betűtípus}}
% A szerző nevének és szakjának, illetve a témavezető nevének és beosztásának betűtípusa (alapérték |\large|).
% \end{macro}
%
% \begin{macro}{authoralign}\param{=\meta{igazítás}}
% A szerző adatait tartalmazó doboz tartalmának igazítása.
% Az \meta{igazítás} lehetséges értékei |left| (balra igazítás, ez az alapérték), |center| (középre igazítás) |right| (jobbra igazítás).
% \end{macro}
%
% \begin{macro}{supervisoralign}\param{=\meta{igazítás}}
% A témavezető adatait tartalmazó doboz tartalmának igazítása.
% Az \meta{igazí\-tás} lehetséges értékei |left| (balra igazítás, ez az alapérték), |center| (középre igazítás) |right| (jobbra igazítás).
% \end{macro}
%
% \begin{macro}{authorxmargin}\param{=\meta{méret}}
% Ezzel a szerző és témavezető dobozának sorában a normál margóméret ennyivel nő meg (alapérték |10mm|).
% \end{macro}
%
% \begin{macro}{authorsep}\param{=\meta{méret}}
% A szerző és témavezető dobozait tartalmazó sor alatti térköz a normál sortávolságon felül (alapérték |15mm|).
% \end{macro}
%
% \begin{macro}{hminsep}\param{=\meta{méret}}
% A szerző és témavezető dobozai közötti minimális vízszintes térköz (alapérték |5mm|).
% \end{macro}
%
% \begin{macro}{cityfont}\param{=\meta{betűtípus}}
% A város nevének betűtípusa (alapérték |\large\scshape|).
% \end{macro}
%
% \begin{macro}{datefont}\param{=\meta{betűtípus}}
% Az évszám betűtípusa (alapérték |\large\scshape|).
% \end{macro}
%
% \begin{macro}{datesep}\param{=\meta{elválasztás}}
% A város és az évszám közötti elválasztás (alapérték |{,~}|).
% Például |datesep=\\| esetén a városnév alá kerül az évszám.
% \end{macro}
%
% \subsection{Parancsok}
%
% \begin{macro}{\setkeys}\param{\{thesis-ekcu\}\marg{opciók}}
% A |thesis-ekcu| opciói az alapbetűméretet beállító (|10pt|, |11pt|, |12pt|, |fontsize=|\meta{méret}) opciók kivételével ezzel is beállíthatók.
% Ha a |\setkeys| parancsot a konfigurációs fájlba írja (lásd később), akkor abba az alapbetűméretet beállító opciók is beírhatók.
% Azok az opciók, melyekben parancs van, mint például a betűtípusra vonatkozók, csak a |\setkeys| parancsba írhatók!
% Például |\setkeys{thesis-ekcu}{logodown,tocnopagenum}|.
% \end{macro}
%
% \begin{macro}{\setkeys}\param{\{thesis-ekf\}\marg{opciók}}
% Ugyanaz, mint a |\setkeys{thesis-ekcu}|\marg{opciók}, de ezt akkor használja, ha az osztályt nem |thesis-ekcu|, hanem |thesis-ekf| néven töltötte be.
% \end{macro}
%
% \begin{macro}{\hypersetup}\param{\marg{hyperref opciók}}
% A |hyperref| csomag opciói ezzel állíthatók be.
% Például, ha a linkek színét pirosra akarja állítani: |\hypersetup{allcolors=red}|.
% \end{macro}
%
% \begin{macro}{\geometry}\param{\marg{geometry opciók}}
% A |geometry| csomag opciói ezzel állíthatók be.
% Például, ha B5 lapméretet szeretne, 20\,mm margókkal, kivéve a belső margót, amely 25\,mm:\\ |\geometry{b5paper,top=20mm,bottom=20mm,inner=25mm,outer=20mm}|.
% \end{macro}
%
% \begin{macro}{\singlespacing}
% Alapbeállítás esetén a sortávolság másfeles.
% A |setspace| csomag |\singlespacing| parancsával visszaállítható a normál méretű sortávolság.
% \end{macro}
%
% \begin{macro}{\logo}\param{\marg{kép vagy szöveg}}
% Ezt a parancsot a |\maketitle| előtt vagy a konfigurációs fájlban (lásd később) kell használni.
% Ezzel kell megadni az intézmény logóját.
% Például |\logo{\includegraphics[width=9cm]{logo}}|.
% Ha nem adja meg, akkor az Eszterházy Károly Katolikus Egyetem angol, német vagy magyar logója fog megjelenni aszerint, hogy a |babel| csomaggal melyik nyelvet töltötte be.
% Ha nem akar logót, akkor írja be a |\logo{}| parancsot.
% \end{macro}
%
% \begin{macro}{\authorcaption}\param{\marg{szerző neve feletti felirat}}
% Ezt a parancsot a |\maketitle| előtt vagy a konfigurációs fájlban (lásd később) kell használni.
% Ezzel adhatja meg a szakdolgozat szerzőjének neve feletti feliratot.
% Alapértéke |Author|, magyar nyelv esetén |Készítette|, német nyelv esetén |Autor|.
% \end{macro}
%
% \begin{macro}{\supervisorcaption}\param{\marg{témavezető neve feletti felirat}}
% Ezt a parancsot a |\maketitle| előtt vagy a konfigurációs fájlban (lásd később) kell használni.
% Ezzel adhatja meg a szakdolgozat témavezetőjének neve feletti feliratot.
% Alapértéke |Supervisor|, magyar nyelv esetén |Témavezető|, német nyelv esetén |Betreuer|.
% \end{macro}
%
% \subsection{Konfigurációs fájl}
%
% \begin{macro}{thesis-ekcu.cfg}
% Az átparaméterező opciókat és parancsokat célszerű egy |thesis-ekcu.cfg| nevű fájlba írni, amit a tex forrásfájl mellé kell tenni.
% Ebben minden parancsot a |\setkeys| kivételével |\AtEndOfClass|\marg{parancsok} parancsba kell írni.
% A dokumentumosztály betöltésekor ez a fájl automatikusan betöltődik.
% Egy példa a |thesis-ekcu.cfg| fájl tartalmára:
%\begin{Verbatim}
%\setkeys{thesis-ekcu}{
%  11pt,
%  centeredchapter=false,
%  titlefont=\Huge\sffamily,
%  }
%\AtEndOfClass{
%  \hypersetup{allcolors=red}
%  \geometry{b5paper,top=20mm,bottom=20mm,inner=25mm,outer=20mm}
%  \singlespacing
%  \authorcaption{Írta}
%  }
%\end{Verbatim}
% \end{macro}
%
% \begin{macro}{thesis-ekf.cfg}
% Ugyanaz mint a |thesis-ekcu.cfg|, de ezt akkor használja, ha az osztályt nem |thesis-ekcu|, hanem |thesis-ekf| néven töltötte be.
% \end{macro}
% \StopEventually{}
%    \begin{macrocode}
%<*ekcu>
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\ProvidesClass{thesis-ekcu}[2026/01/10 v5.0 Thesis class for Eszterházy Károly Catholic University (Eger, Hungary)]

\typeout{Class 'thesis-ekcu' is an alias for 'thesis-ekf' and will simply load 'thesis-ekf'.}

\def\thesisekcu@setalias{
  \let\thesisekcu@orig@setkeys\setkeys
  \def\setkeys##1##2{%
    \def\thesisekcu@tmp{##1}%
    \def\thesisekcu@fam{thesis-ekcu}%
    \ifx\thesisekcu@tmp\thesisekcu@fam
      \thesisekcu@orig@setkeys{thesis-ekf}{##2}%
    \else
      \thesisekcu@orig@setkeys{##1}{##2}%
    \fi
  }
}

\LoadClassWithOptions{thesis-ekf}

%</ekcu>
%<*class>
\RequirePackage{kvoptions}
\SetupKeyvalOptions{family=thesis-ekf,prefix=thesisekf@}
\DeclareVoidOption{twoside}{\PassOptionsToClass{twoside}{report}}
\DeclareVoidOption{colorlinks}{\PassOptionsToPackage{colorlinks}{hyperref}}
\DeclareBoolOption{times}
\DeclareBoolOption{upint}
\DeclareBoolOption{logodown}
\DeclareBoolOption{tocnopagenum}
\DeclareBoolOption{reverseorder}
\DeclareBoolOption[true]{centeredchapter}
\DeclareBoolOption[true]{warning}
\DeclareVoidOption{10pt}{\def\thesisekf@fontsize@{10pt}}
\DeclareVoidOption{11pt}{\def\thesisekf@fontsize@{11pt}}
\DeclareVoidOption{12pt}{\def\thesisekf@fontsize@{12pt}}
\DeclareStringOption{fontsize}
\DeclareStringOption[10mm]{institutesep}
\DeclareStringOption[0mm]{logosep}
\DeclareStringOption[\stretch{1.4}]{titlesep}
\DeclareStringOption[15mm]{authorsep}
\DeclareStringOption[5mm]{hminsep}
\DeclareStringOption[10mm]{authorxmargin}
\DeclareStringOption[0mm]{captionsep}
\DeclareStringOption[2mm]{collcaptionsep}
\DeclareStringOption[left]{authoralign}
\DeclareStringOption[left]{supervisoralign}
\DeclareStringOption[\large\scshape]{institutefont}
\DeclareStringOption[\large\scshape]{logofont}
\DeclareStringOption[\Huge\bfseries]{titlefont}
\DeclareStringOption[\large]{authorfont}
\DeclareStringOption[\large\bfseries]{captionfont}
\DeclareStringOption[\large\scshape]{cityfont}
\DeclareStringOption[\large\scshape]{datefont}
\DeclareStringOption[,~]{datesep}
\def\thesisekf@fontsize@{12pt}
\ProcessKeyvalOptions{thesis-ekf}

\@ifundefined{thesisekcu@setalias}{
  \InputIfFileExists{thesis-ekf.cfg}{}{}
}{
  \thesisekcu@setalias
  \InputIfFileExists{thesis-ekcu.cfg}{}{}
}

\def\thesisekf@ten{10pt}
\def\thesisekf@eleven{11pt}
\def\thesisekf@twelve{12pt}
\ifx\thesisekf@fontsize\thesisekf@ten
  \def\thesisekf@fontsize@{10pt}
\fi
\ifx\thesisekf@fontsize\thesisekf@eleven
  \def\thesisekf@fontsize@{11pt}
\fi
\ifx\thesisekf@fontsize\thesisekf@twelve
  \def\thesisekf@fontsize@{12pt}
\fi

\LoadClass[\thesisekf@fontsize@]{report}
\RequirePackage{setspace}
\RequirePackage[linktocpage,allcolors=blue,pdfstartview=FitH,bookmarksnumbered,pdfborder={0 0 0}]{hyperref}
\RequirePackage[a4paper,top=25mm,bottom=25mm,inner=30mm,outer=25mm]{geometry}
\ifthesisekf@times
  \ifthesisekf@upint
    \PassOptionsToPackage{upint}{newtxmath}
    \PassOptionsToPackage{intlimits}{amsmath}
  \fi
\else
  \RequirePackage{lmodern,fixcmex}
  \ifthesisekf@upint
    \RequirePackage{cmupint}
  \fi
\fi
\RequirePackage{graphicx,iftex}

\onehalfspacing

\AddToHook{begindocument/before}{

\ifthesisekf@times
  \RequirePackage{newtxtext,newtxmath}
\fi

\ifx\thesisekf@fontsize\@empty
\else
  \ifx\thesisekf@fontsize\thesisekf@ten
  \else
    \ifx\thesisekf@fontsize\thesisekf@eleven
    \else
      \ifx\thesisekf@fontsize\thesisekf@twelve
      \else
        \RequirePackage[fontsize=\thesisekf@fontsize]{fontsize}
      \fi
    \fi
  \fi
\fi

\RequirePackage{upquote}

}

\let\thesisekf@orig@dottedtocline\@dottedtocline

\AddToHook{begindocument/end}{

\ifthesisekf@tocnopagenum
  \hypersetup{pageanchor=false}
  \let\thesisekf@tableofcontents\tableofcontents
  \def\tableofcontents{%
    \global\let\thesisekf@thepage\thepage%
    \global\let\thepage\empty%
    \thesisekf@tableofcontents%
    \clearpage%
    \global\c@page\@ne%
    \global\let\thepage\thesisekf@thepage%
    \hypersetup{pageanchor}}
\fi

\ifthesisekf@centeredchapter
  \let\thesisekf@makechapterhead\@makechapterhead
  \let\thesisekf@makeschapterhead\@makeschapterhead
  \let\thesisekf@raggedright\raggedright
  \def\@makechapterhead#1{
    \let\raggedright\centering
    \thesisekf@makechapterhead{#1}
    \let\raggedright\thesisekf@raggedright}
  \def\@makeschapterhead#1{
    \let\raggedright\centering
    \thesisekf@makeschapterhead{#1}
    \let\raggedright\thesisekf@raggedright}
\fi

\@ifundefined{magyar@opt@@dottedtocline}{}{%
  \let\@dottedtocline\thesisekf@orig@dottedtocline%
}

\renewcommand*\l@chapter[2]{%
  \ifnum \c@tocdepth >\z@
    \addpenalty\@secpenalty
    \addvspace{1.0em \@plus\p@}%
    \setlength\@tempdima{1.8em}%
    \begingroup
      \parindent \z@ \rightskip \@pnumwidth
      \parfillskip -\@pnumwidth
      \leavevmode \bfseries
      \advance\leftskip\@tempdima
      \hskip -\leftskip
      #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
    \endgroup
  \fi}
\renewcommand*\l@section{\@dottedtocline{1}{1.8em}{2.5em}}
\renewcommand*\l@subsection{\@dottedtocline{2}{4.3em}{3.2em}}

\if@thesisekf@nochanged@authorcaption@%
  \@ifundefined{l@magyar}{}{%
    \iflanguage{magyar}{\gdef\thesisekf@authorcaption{K\'{e}sz\'{\i}tette}}{}}%
  \@ifundefined{l@hungarian}{}{%
    \iflanguage{hungarian}{\gdef\thesisekf@authorcaption{K\'{e}sz\'{\i}tette}}{}}%
  \@ifundefined{l@ngerman}{}{%
    \iflanguage{ngerman}{\gdef\thesisekf@authorcaption{Autor}}{}}%
  \@ifundefined{l@german}{}{%
    \iflanguage{german}{\gdef\thesisekf@authorcaption{Autor}}{}}%
\fi

\if@thesisekf@nochanged@supervisorcaption@%
  \@ifundefined{l@magyar}{}{%
    \iflanguage{magyar}{\gdef\thesisekf@supervisorcaption{T\'{e}mavezet\H{o}}}{}}%
  \@ifundefined{l@hungarian}{}{%
    \iflanguage{hungarian}{\gdef\thesisekf@supervisorcaption{T\'{e}mavezet\H{o}}}{}}%
  \@ifundefined{l@ngerman}{}{%
    \iflanguage{ngerman}{\gdef\thesisekf@supervisorcaption{Betreuer}}{}}%
  \@ifundefined{l@german}{}{%
    \iflanguage{german}{\gdef\thesisekf@supervisorcaption{Betreuer}}{}}%
\fi

\if@thesisekf@nochanged@logo@%
  \@ifundefined{l@magyar}{}{%
    \iflanguage{magyar}{\if@thesisekf@exists@logo@hu@\gdef\thesisekf@logo{\includegraphics{eszterhazy-logo-hu}}\fi}{}}%
  \@ifundefined{l@hungarian}{}{%
    \iflanguage{hungarian}{\if@thesisekf@exists@logo@hu@\gdef\thesisekf@logo{\includegraphics{eszterhazy-logo-hu}}\fi}{}}%
  \@ifundefined{l@ngerman}{}{%
    \iflanguage{ngerman}{\if@thesisekf@exists@logo@de@\gdef\thesisekf@logo{\includegraphics{eszterhazy-logo-de}}\fi}{}}%
  \@ifundefined{l@german}{}{%
    \iflanguage{german}{\if@thesisekf@exists@logo@de@\gdef\thesisekf@logo{\includegraphics{eszterhazy-logo-de}}\fi}{}}%
\fi

}

\newif\if@thesisekf@nochanged@logo@
\@thesisekf@nochanged@logo@true
\def\logo#1{\@thesisekf@nochanged@logo@false\gdef\thesisekf@logo{#1}}
\def\thesisekf@logo{}
\newif\if@thesisekf@exists@logo@en@
\ifpdf
  \IfFileExists{eszterhazy-logo-en.pdf}{\@thesisekf@exists@logo@en@true}{}
\else
  \IfFileExists{eszterhazy-logo-en.eps}{\@thesisekf@exists@logo@en@true}{}
\fi
\newif\if@thesisekf@exists@logo@hu@
\ifpdf
  \IfFileExists{eszterhazy-logo-hu.pdf}{\@thesisekf@exists@logo@hu@true}{}
\else
  \IfFileExists{eszterhazy-logo-hu.eps}{\@thesisekf@exists@logo@hu@true}{}
\fi
\newif\if@thesisekf@exists@logo@de@
\ifpdf
  \IfFileExists{eszterhazy-logo-de.pdf}{\@thesisekf@exists@logo@de@true}{}
\else
  \IfFileExists{eszterhazy-logo-de.eps}{\@thesisekf@exists@logo@de@true}{}
\fi
\if@thesisekf@exists@logo@en@
  \def\thesisekf@logo{\includegraphics{eszterhazy-logo-en}}
\fi
\def\thesisekf@logo@{%
  \thesisekf@logo%
  \ifx\thesisekf@logo\@empty%
    \ifthesisekf@warning%
      \ClassWarning{thesis-ekf}{logo is missing}%
    \fi%
  \fi}

\def\institute#1{\gdef\thesisekf@institute{#1}}
\institute{}
\def\thesisekf@institute@{%
  \thesisekf@institute%
  \ifx\thesisekf@institute\@empty%
    \ifthesisekf@warning%
      \ClassWarning{thesis-ekf}{institute is missing}%
    \fi%
  \fi}

\def\title#1{\gdef\thesisekf@title{#1}}
\title{}
\def\thesisekf@title@{%
  \thesisekf@title%
  \ifx\thesisekf@title\@empty%
    \ifthesisekf@warning%
      \ClassWarning{thesis-ekf}{title is missing}%
    \fi%
  \fi}

\def\author#1{\gdef\thesisekf@author{#1}}
\author{}
\def\thesisekf@author@{%
  \ifx\thesisekf@authorcaption\@empty%
  \else%
    \ifx\thesisekf@author\@empty%
      \ifthesisekf@warning%
        \ClassWarning{thesis-ekf}{author is missing}%
      \fi%
    \else%
      \thesisekf@author%
    \fi%
  \fi}

\newif\if@thesisekf@nochanged@authorcaption@
\@thesisekf@nochanged@authorcaption@true
\def\authorcaption#1{%
  \@thesisekf@nochanged@authorcaption@false%
  \gdef\thesisekf@authorcaption{#1}}
\def\thesisekf@authorcaption{Author}
\def\thesisekf@authorcaption@{%
  \ifx\thesisekf@author\@empty%
  \else%
    \ifx\thesisekf@authorcaption\@empty%
      \ifthesisekf@warning%
        \ClassWarning{thesis-ekf}{authorcaption is missing}%
      \fi%
    \else%
      \thesisekf@authorcaption%
    \fi%
  \fi}

\def\supervisor#1{\gdef\thesisekf@supervisor{#1}}
\supervisor{}
\def\thesisekf@supervisor@{%
  \ifx\thesisekf@supervisorcaption\@empty
  \else
    \ifx\thesisekf@supervisor\@empty
      \ifthesisekf@warning
        \ClassWarning{thesis-ekf}{supervisor is missing}
      \fi
    \else
      \thesisekf@supervisor
    \fi
  \fi}

\newif\if@thesisekf@nochanged@supervisorcaption@
\@thesisekf@nochanged@supervisorcaption@true
\def\supervisorcaption#1{%
  \@thesisekf@nochanged@supervisorcaption@false%
  \gdef\thesisekf@supervisorcaption{#1}}
\def\thesisekf@supervisorcaption{Supervisor}
\def\thesisekf@supervisorcaption@{%
  \ifx\thesisekf@supervisor\@empty%
  \else%
    \ifx\thesisekf@supervisorcaption\@empty%
      \ifthesisekf@warning%
        \ClassWarning{thesis-ekf}{supervisorcaption is missing}%
      \fi%
    \else%
      \thesisekf@supervisorcaption%
    \fi%
  \fi}

\def\city#1{\gdef\thesisekf@city{#1}}
\city{}
\def\thesisekf@city@{%
  \thesisekf@city%
  \ifx\thesisekf@city\@empty%
    \ifthesisekf@warning%
      \ClassWarning{thesis-ekf}{city is missing}%
    \fi%
  \fi}

\def\date#1{\gdef\thesisekf@date{#1}}
\date{\number\year}
\def\thesisekf@date@{%
  \thesisekf@date%
  \ifx\thesisekf@date\@empty%
    \ifthesisekf@warning%
      \ClassWarning{thesis-ekf}{date is missing}%
    \fi%
  \fi}

\def\thesisekf@datesep@{%
  \ifx\thesisekf@city\@empty
  \else
    \ifx\thesisekf@date\@empty
    \else
      \thesisekf@datesep
    \fi
  \fi}

\def\thesisekf@box@logo{%
  \ifthesisekf@logodown%
    {\normalfont\normalsize\thesisekf@institutefont\thesisekf@institute@%
     \ifx\thesisekf@institute\@empty%
     \else%
       \\%
       \ifx\thesisekf@logo\@empty%
       \else%
         \vspace{\thesisekf@institutesep}%
       \fi%
     \fi}%
    {\normalfont\normalsize\thesisekf@logofont\thesisekf@logo@%
     \ifx\thesisekf@logo\@empty%
     \else%
       \\%
     \fi}%
  \else%
    {\normalfont\normalsize\thesisekf@logofont\thesisekf@logo@%
     \ifx\thesisekf@logo\@empty%
     \else%
       \\%
       \ifx\thesisekf@institute\@empty%
       \else%
         \vspace{\thesisekf@logosep}%
       \fi%
     \fi}%
    {\normalfont\normalsize\thesisekf@institutefont\thesisekf@institute@%
     \ifx\thesisekf@institute\@empty%
     \else%
       \\%
     \fi}%
  \fi%
  \vspace*{\fill}}

\def\thesisekf@box@title{%
  {\normalfont\normalsize\thesisekf@titlefont\thesisekf@title@%
   \ifx\thesisekf@title\@empty%
   \else%
     \par\vspace{\thesisekf@titlesep}%
   \fi}}

\def\thesisekf@align@center{center}
\def\thesisekf@align@left{left}
\def\thesisekf@align@right{right}

\def\thesisekf@box@author{%
  {\normalfont\normalsize\thesisekf@authorfont%
   \ifx\thesisekf@authoralign\thesisekf@align@center%
     \begin{tabular}[t]{@{}c@{}}%
   \fi%
   \ifx\thesisekf@authoralign\thesisekf@align@left%
     \begin{tabular}[t]{@{}l@{}}%
   \fi%
   \ifx\thesisekf@authoralign\thesisekf@align@right%
     \begin{tabular}[t]{@{}r@{}}%
   \fi%
   {\normalfont\normalsize\thesisekf@captionfont\thesisekf@authorcaption@}\\[\thesisekf@captionsep]%
   \thesisekf@author@%
   \end{tabular}}}

\def\thesisekf@box@supervisor{%
  {\normalfont\normalsize\thesisekf@authorfont%
   \ifx\thesisekf@supervisoralign\thesisekf@align@center%
     \begin{tabular}[t]{@{}c@{}}%
   \fi%
   \ifx\thesisekf@supervisoralign\thesisekf@align@left%
     \begin{tabular}[t]{@{}l@{}}%
   \fi%
   \ifx\thesisekf@supervisoralign\thesisekf@align@right%
     \begin{tabular}[t]{@{}r@{}}%
   \fi%
   {\normalfont\normalsize\thesisekf@captionfont\thesisekf@supervisorcaption@}\\[\thesisekf@captionsep]%
   \thesisekf@supervisor@%
   \end{tabular}}}

\def\thesisekf@box@author@supervisor@{%
  \hbox{}\nobreak\hspace*{\thesisekf@authorxmargin}%
  \ifthesisekf@reverseorder%
    \thesisekf@box@supervisor%
    \nobreak\hspace{\thesisekf@hminsep}\hfill%
    \thesisekf@box@author%
  \else%
    \thesisekf@box@author%
    \nobreak\hspace{\thesisekf@hminsep}\hfill%
    \thesisekf@box@supervisor%
  \fi%
  \nobreak\hspace{\thesisekf@authorxmargin}\hbox{}%
  \par\vspace{\thesisekf@authorsep}}

\def\thesisekf@box@author@supervisor{%
  \if\getrefnumber{@thesisekf@collaborator@}%
    \gdef\thesisekf@captionsep{\thesisekf@collcaptionsep}%
  \fi%
  \thesisekf@box@author@supervisor@%
  \gdef\@currentlabel{10}%
  \if@thesisekf@collaborator@%
    \gdef\@currentlabel{11}%
  \fi%
  \label{@thesisekf@collaborator@}}

\def\thesisekf@box@city@date{%
  {\normalfont\normalsize\thesisekf@cityfont\thesisekf@city@\thesisekf@datesep@}%
  {\normalfont\normalsize\thesisekf@datefont\thesisekf@date@}}

\newif\if@thesisekf@collaborator@

\newcommand{\collaborator}[1][]{%
  \global\@thesisekf@collaborator@true%
  \\[\thesisekf@captionsep]
  \def\thesisekf@temp{#1}%
  \ifx\thesisekf@temp\@empty%
  \else%
    {\normalfont\normalsize\thesisekf@captionfont#1}\\[\thesisekf@captionsep]%
  \fi}

\def\maketitle{
  \thispagestyle{empty}
  {\centering
   \thesisekf@box@logo%
   \thesisekf@box@title%
   \thesisekf@box@author@supervisor%
   \thesisekf@box@city@date%
   \par}
  \newpage
  \if@twoside
    \thispagestyle{empty}
    \hbox{}
    \newpage
  \fi}
%</class>
%    \end{macrocode}
% \Finale
\endinput