%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% ulisboa/fcul/defaults.clo
%% NOVA thesis configuration file
%%
%% Customization for FCUL (strings and cover)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\typeout{NT FILE ulisboa/fcul/defaults.clo}%


%%=======================================================================
%% METADATA & GLOBAL PROPERTIES
%%=======================================================================

% All LaTeX engines (pdfLaTeX, XeLaTeX, LuaLaTeX) are accepted
\AddValidProcessor{ulisboa/fcul}{pdf,lua,xe}
\AddValidDegree{ulisboa/fcul}{phd,msc}

\ifdocfinal{\ntsetup{print/frontpage=true}}{}


%%=======================================================================
%% STRINGS (UNIVERSITY & SCHOOL)
%%=======================================================================

% Faculty / School
\SetSchool*(pt)={Faculdade de Ciências}
\SetSchool*(en)={Faculty of Sciences}
\SetSchool*(fr)={Faculty of Sciences}
\SetSchool*(it)={Faculty of Sciences}

% Specialization field
\SetSpecialization*(pt)={Especialidade}
\SetSpecialization*(en)={Specialization}

\NewMemStore{AdvisersLabel}
\SetAdvisersLabel*(phd,pt)={Tese orientada por:}
\SetAdvisersLabel*(phd,en)={Thesis supervised by:}
\SetAdvisersLabel*(phdprop,pt)={Tese orientada por:}
\SetAdvisersLabel*(phdprop,en)={Thesis supervised by:}
\SetAdvisersLabel*(phdplan,pt)={Tese orientada por:}
\SetAdvisersLabel*(phdplan,en)={Thesis supervised by:}
\SetAdvisersLabel*(msc,pt)={Dissertação orientada por:}
\SetAdvisersLabel*(msc,en)={Dissertation supervised by:}
\SetAdvisersLabel*(mscplan,pt)={Dissertação orientada por:}
\SetAdvisersLabel*(mscplan,en)={Dissertation supervised by:}
\SetAdvisersLabel*(de)={TBD}
\SetAdvisersLabel*(es)={TBD}
\SetAdvisersLabel*(fr)={TBD}
\SetAdvisersLabel*(it)={TBD}

\NewMemStore{ProvisionalString}
\SetProvisionalString*(pt)={Documento Provisório}
\SetProvisionalString*(en)={Provisional Document}
\SetProvisionalString*(de)={TBD}
\SetProvisionalString*(es)={TBD}
\SetProvisionalString*(fr)={TBD}
\SetProvisionalString*(it)={TBD}

\SetDissertationString(phdplan,pt)={Documento especialmente elaborado para a obtenção do grau de  %
\GetDegreeString(\option{/novathesis/doctype},\expanded{\GetDocAuthor(gender)},\@LANG@COVER)}
\SetDissertationString(phdprop,pt)={Documento especialmente elaborado para a obtenção do grau de  %
\GetDegreeString(\option{/novathesis/doctype},\expanded{\GetDocAuthor(gender)},\@LANG@COVER)}
\SetDissertationString(phd,pt)={Documento especialmente elaborado para a obtenção do grau de  %
\GetDegreeString(\option{/novathesis/doctype},\expanded{\GetDocAuthor(gender)},\@LANG@COVER)}

\SetDissertationString(phdplan,en)={Document written to earn the degree of %
\GetDegreeString(\option{/novathesis/doctype},\expanded{\GetDocAuthor(gender)},\@LANG@COVER)}
\SetDissertationString(phdprop,en)={Document written to earn the degree of %
\GetDegreeString(\option{/novathesis/doctype},\expanded{\GetDocAuthor(gender)},\@LANG@COVER)}
\SetDissertationString(phd,en)={Document written to earn the degree of %
\GetDegreeString(\option{/novathesis/doctype},\expanded{\GetDocAuthor(gender)},\@LANG@COVER)}


%%=======================================================================
%% COMMITTEE
%%=======================================================================

\SetCommitteeOrder*()={c,r,a,m}%


%%=======================================================================
%% FONTS
%%=======================================================================

\AtEndPreamble{%
  %\LoadHelveticaLikeFont%  % \RequirePackage{gillius2}%
}


%%=======================================================================
%% LAYOUT (MARGINS)
%%=======================================================================

% Set margins for "normal" pages
\SetMargin*(screen,top)={3.5cm}
\SetMargin*(screen,bottom)={2.5cm}
\SetMargin*(screen,left)={3.0cm}
\SetMargin*(screen,right)={3.0cm}
\SetMargin*(paper,top)={3.5cm}
\SetMargin*(paper,bottom)={2.5cm}
\SetMargin*(paper,left)={2.5cm}
\SetMargin*(paper,right)={3.5cm}

%% Set margins for cover pages
\SetMargin*(cover,top)={1.1cm}
\SetMargin*(cover,bottom)={0.8cm}
\SetMargin*(cover,left)={2.5cm}
\SetMargin*(cover,right)={2.5cm}


%%=======================================================================
%% SPINE
%%=======================================================================

\SpineSetup[%
]{%
  box/logo/bg/image           = {ulisboa-fc-logo},
  box/logo/bg/image/angle     = {-90},
  box/title/len   = 18.6cm,
  box/logo/len    =  2.1cm,
  % debug,
}


%%=======================================================================
%% UTILITIES & HOOKS
%%=======================================================================

\SetThesisCover(textfont)={\sffamily}
\NTAddToHook{cover/text/pre}{%
  \ifdocfinal{\SetProvisionalString*(\@LANG@COVER)={~}}{}%
}


%%=======================================================================
%% COVER 1 & 2 ELEMENTS
%%=======================================================================

% School
\ntaddtocover[height=2.5cm, valign=t]{1-1,2-1}{%
  \fontseries{mc}\fontsize{12}{12}\selectfont%
  {\MakeUppercase{\GetUniversity(\@LANG@COVER)}}\\[2mm]%
  {\MakeUppercase{\GetSchool(\@LANG@COVER)}}\\[2mm]%
  \ifmscdoc
     {\MakeUppercase{\GetDepartmentOfString(\@LANG@COVER)}
      \MakeUppercase{\GetDepartment(\@LANG@COVER)}}%
    {}%
}

% Logo
\ntaddtocover[vspace=0.5cm, height=5cm, valign=t]{1-1,2-1}{%
  \ifphddoc%
    {\hspace*{7mm}\includegraphics[height=4.55cm]{ulisboa-fc-logo-vert}}%
    {\includegraphics[width=7cm]{ulisboa-fc-logo-horiz}}%
}

% PhD Title of Dissertation
\ntaddtocover[vspace=0.2cm, height=2cm]{1-1,2-1}{%
  \fontseries{mc}\fontsize{17}{17}\selectfont%
  \textbf{\GetDocTitle(\@LANG@COVER,main)}%
}

% Doc Status (PhD only position)
\ntaddtocover[degree={phd,phdprop,phdplan}, vspace=0cm, height=1.9cm]{1-1,2-1}{%
  \emph{\GetProvisionalString(\@LANG@COVER)}%
}

% Degree (PhD only position)
\ntaddtocover[degree={phd,phdprop,phdplan}, vspace=0.4cm, height=2.5cm]{1-1,2-1}{%
  \fontseries{mc}\fontsize{14}{14}\selectfont%
  \GetDegreeName(\@LANG@COVER)
  \IfMemVoidF{Specialization}{\@LANG@COVER}%
    {\\[2mm]\GetSpecialization(\@LANG@COVER)}%
}%

% Author name
\ntaddtocover[vspace=3.0cm]{1-1,2-1}{%
  \fontseries{mc}\fontsize{14}{14}\selectfont%
  \GetDocAuthor(name)%
}

% Degree (MSc only position)
\ntaddtocover[degree={msc,mscplan}, vspace=1.8cm, height=2.5cm]{1-1,2-1}{%
  \fontseries{mc}\fontsize{14}{14}\selectfont%
  \GetDegreeName(\@LANG@COVER)
  \IfMemVoidF{Specialization}{\@LANG@COVER}%
    {\\[2mm]\GetSpecialization(\@LANG@COVER)}%
}%

% Doc Status (MSc only position)
\ntaddtocover[degree={msc,mscplan}, vspace=0cm, height=1.0cm]{1-1,2-1}{%
  \emph{\GetProvisionalString(\@LANG@COVER)}%
}

% Advisers (PhD only position)
\ntaddtocover[degree={phd,phdprop,phdplan}, halign=c, vspace=2.0cm]{1-1,2-1}{%
  \fontsize{10}{10}\selectfont%
  \GetAdvisersLabel(\option{/novathesis/doctype},\@LANG@COVER)\\[3mm]%
  \MemSet{adviserstringpost}{}{\\[2pt]}%
  \ntprintpersons[full]{0.9}[c]{0}{adviser}{a,c}%
}

% Advisers (MSc only position)
\ntaddtocover[degree={msc,mscplan}, halign=c, vspace=1.0cm]{1-1,2-1}{%
  \fontsize{10}{10}\selectfont%
  \GetAdvisersLabel(\option{/novathesis/doctype},\@LANG@COVER)\\[3mm]%
  \MemSet{adviserstringpost}{}{\\[2pt]}%
  \ntprintpersons[full]{0.9}[c]{0}{adviser}{a,c}%
}

% Sponsor (Cover 2 only)
\ntaddtocover[height=1cm, vfill=2]{2-1}{%
  % \fontseries{mc}
  \fontsize{10}{10}\selectfont%
  \foreach \myi in {1, ..., 9} {%
    \IfMemVoidF{Sponsor}{\@LANG@COVER,\myi,text}
      {\GetSponsor(\@LANG@COVER,\myi,text)\qquad}
  }%
}

% Sponsor spacer (Cover 1 only)
\ntaddtocover[height=1cm, vfill=2]{1-1}{~}

% Document purpose (PhD only)
\ntaddtocover[degree={phd,phdprop,phdplan}, vfill=1]{1-1,2-1}{%
  % \fontseries{mc}
  \fontsize{10}{10}\selectfont%
  \thepresentationtext%
}%

% Date
\ntaddtocover[vspace=1.4cm]{1-1,2-1}{%
  % \fontseries{mc}
  \fontsize{14}{14}\selectfont%
    \PrintDateISO{\GetDocDate(submission,year)}%
}
 
