From ad976e54f48605a66054bc56e945dabc425c956a Mon Sep 17 00:00:00 2001
From: Norbert Preining <norbert@preining.info>
Date: Sat, 25 Nov 2023 03:03:12 +0000
Subject: CTAN sync 202311250303

---
 .../contrib/ufrgscca/latex/ufrgscca-forms.sty      | 883 +++++----------------
 1 file changed, 196 insertions(+), 687 deletions(-)

(limited to 'macros/latex/contrib/ufrgscca/latex/ufrgscca-forms.sty')

diff --git a/macros/latex/contrib/ufrgscca/latex/ufrgscca-forms.sty b/macros/latex/contrib/ufrgscca/latex/ufrgscca-forms.sty
index 8ccebc5f24..c5f3afe8e9 100644
--- a/macros/latex/contrib/ufrgscca/latex/ufrgscca-forms.sty
+++ b/macros/latex/contrib/ufrgscca/latex/ufrgscca-forms.sty
@@ -12,7 +12,7 @@
 %%
 %% The Current Maintainer of this work is Alceu Frigeri
 %%
-%% This is version 1.12 (2023/09/23)
+%% This is version {2.0} {2023/11/23}
 %%
 %% The list of files that compose this work can be found in the README.md file at
 %% https://ctan.org/pkg/ufrgscca
@@ -23,716 +23,225 @@
 %% CCA   stands for "Control and Automation Engineering Course" (Portuguese acronym)
 %%%==============================================================================
 \NeedsTeXFormat{LaTeX2e}[2022/06/01]
-\def\tc@tmp@packname{ufrgscca-forms}
-\def\tc@tmp@altpackname{ufrgsccaforms}
-\def\tc@tmp@packdesc{UFRGS/CCA forms commands}
-\def\tc@tmp@packdate{2023/09/23}
-\def\tc@tmp@packversion{1.12}
-\let\@exp\expandafter
-\@exp\edef\csname\tc@tmp@altpackname version\endcsname{\tc@tmp@packversion}
-\@exp\@exp\@exp\ProvidesPackage\@exp\@exp\@exp{\@exp\tc@tmp@packname\@exp}\@exp[\tc@tmp@packdate\space v\tc@tmp@packversion\space\tc@tmp@packdesc]
 
-\RequirePackage{amsfonts}
-
-
-%% local for tc@formsigdate {ufrgscca-forms}
-
-\cmdfactory<forms>{formssignaturelabel,examinersignature,boardsignature,advisorsignature,coadvisorsignature}
-\cmdfactory<forms>{studentsignature,studentsignaturegen}%
-\cmdfactory<forms>{formsstudentlabel,formsstudentlabelgen,formproflabel}%
-\cmdfactory<forms>{formsboardlabel,formsadvisorlabel,formsadvisorlabelgen}%
-\cmdfactory<forms>{formscoadvisorlabel,formsexaminerlabel,formsaltexaminerlabel}
-\cmdfactory<forms>{formstimelabel,formsworktitlelabel,formstemptitlelabel}
-\cmdfactory<forms>{formsstudentIDlabel,formsemaillabel,formsphonelabel}
-\cmdfactory<forms>{agreelabel,continuelabel}
-\cmdfactory<forms>{formsdatelabel,formstitle,formstitleTR,formsfootnote}
-\cmdfactory<forms>{renewreqformtitle,renewreqformnotes,reqformtitle,reqformopening,reqformdesc}%
-\cmdfactory<forms>{reqformdescTR}%
-\cmdfactory<forms>{coadvisorformtitle,coadvisorformdesc}
-\cmdfactory<forms>{formsbrieflabel,formsstudentemaillabel,formsadvisoremaillabel,formscoadvisoremaillabel}
-\cmdfactory<forms>{formsreasonlabel}
-\cmdfactory<forms>{examformtitle,examformdesc,examformnoteslabel}
-\cmdfactory<forms>{examformnotes,examboardformtitle,examboardformdesc}%
-\cmdfactory<forms>{examboardformtitleTMP,examboardformdescTMP}%
-\cmdfactory<forms>{formsboardtitle,advisorapprovalformtitle,advisorapprovalformdesc,advisorapprovalformdescB}
-\cmdfactory<forms>{rectifyapprovalformtitle,rectifyapprovalformdesc}%
-\cmdfactory<forms>{rectifyapprovalTRformdesc}%
-\cmdfactory<forms>{receiptformtitle,receiptformfootnote,receiptformdesc}%
-\cmdfactory<forms>{reviewformtitle,reviewformdesc,reviewformfootnoteB,reviewformfootnote}
-\cmdfactory<forms>{formsTRtitle,TRformfootnote}
-\cmdfactory<forms>{TRboardformtitle,TRformfootnote}
-\cmdfactory<forms>{reqArgument}
-
-\cmdfactory<forms>{formsrectifyOKdesc}
-
-\cmdfactory<forms>{reqformdescgen}
-\cmdfactory<forms>{formsinternshiptitle,reqforminternshipdesc,internshipreqformnotes}
-\cmdfactory<forms>{formstutorlabel,formstutoremaillabel}
-\cmdfactory<forms>{formssupervisorlabel,formssupervisoremaillabel}
-\cmdfactory<forms>{formsinternshipstartlabel,formsinternshipendlabel,formsinternshiplengthlabel,formsinternshipregisterlabel}
-\cmdfactory<forms>{reqforminternshipinfo}
-\cmdfactory<forms>{supervisorsignature,tutorsignature,internshipcoordsignature}
-\cmdfactory<forms>{formssupervisorlabel}
-\cmdfactory<forms>{supervisorformtitle}
-\cmdfactory<forms>{tutorformtitle}
-\cmdfactory<forms>{internshipstudentinfo,internshipsupervisorinfo,internshiptutorinfo,internshipcompanyinfo,internshipperiod}
-\cmdfactory<forms>{internshipcoordinfo}
-
-\cmdfactory<forms>{internsupervisorgradesform,internsupervisornote,internsupervisorcomments}
-\cmdfactory<forms>{internshiptutorcomments,internshipcoordcomments}
-\cmdfactory<forms>{interntutorgrade,interncoordgrade}
-
-\NewDocumentCommand{\TCCpointsweight}{mmm}{%
-  \gdef\tc@TCCpointAweight{#1}%
-  \gdef\tc@TCCpointBweight{#2}%
-  \gdef\tc@TCCpointCweight{#3}%
-}%
-
-\NewDocumentCommand{\TCCpointslabel}{mmm}{%
-  \gdef\tc@TCCpointAlabel{#1}%
-  \gdef\tc@TCCpointBlabel{#2}%
-  \gdef\tc@TCCpointClabel{#3}%
-}%
-%
-\NewDocumentCommand{\TCCIpointsweight}{mmmm}{%
-  \gdef\tc@TCCIpointAweight{#1}%
-  \gdef\tc@TCCIpointBweight{#2}%
-  \gdef\tc@TCCIpointCweight{#3}%
-  \gdef\tc@TCCIpointDweight{#4}%
-%%  \gdef\tc@TCCIpointscale{#5}%
-}%
-
-\NewDocumentCommand{\TCCIpointslabel}{mmmm}{%
-  \gdef\tc@TCCIpointAlabel{#1}%
-  \gdef\tc@TCCIpointBlabel{#2}%
-  \gdef\tc@TCCIpointClabel{#3}%
-  \gdef\tc@TCCIpointDlabel{#4}%
-}%
-
-
-
-
-\iftcif@english%
-\input{ufrgscca-en-forms.def}%
-\else%
-\input{ufrgscca-ptBR-forms.def}%
-\fi%
-
-\input{ufrgscca-formsTR.sty}
-\input{ufrgscca-formsintern.sty}
-
-
-
-
-
-
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-%% Examiners forms%
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\NewDocumentCommand{\tcforms@examinersForms}{}{%
-  \tccore@examiners{examinerA}%
-  \tcforms@examinersform{examinerA}%
-  \tcforms@reviewform{examinerA}%
-  \tccore@examiners{examinerB}%
-  \tcforms@examinersform{examinerB}%
-  \tcforms@reviewform{examinerB}%
-  \tccore@examiners{examinerC}%
-  \tcforms@examinersform{examinerC}%
-  \tcforms@reviewform{examinerC}%
-  \tccore@examiners{altexaminerA}%
-  \tcforms@examinersform{altexaminerA}%
-  \tcforms@reviewform{altexaminerA}%
-}%
-%
-\NewDocumentCommand{\tcforms@examinerforms}{m}{%
-  \tcforms@examinersform{#1}%
-  \tcforms@reviewform{#1}%
-}%
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-% Board receipt forms%
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\NewDocumentCommand{\tcforms@receiptforms}{}{%
-  \tcforms@receiptform{examinerA}%
-  \tcforms@receiptform{examinerB}%
-  \tcforms@receiptform{examinerC}%
-  \tcforms@receiptform{altexaminerA}%
-}%
-%
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-% Aux commands%
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\NewDocumentCommand{\tcforms@formsigdate}{m}{%%
-  \begin{flushright} \tcdef@core@formlocal %
-    ~\vspace*{6mm}\\%
-%
-    $\overline{#1}$%%
-  \end{flushright}%
-}%
-%
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-% examiners description (for Board approval forms)%
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\NewDocumentCommand{\tcforms@examinerdesc}{O{\tcdef@forms@formsexaminerlabel}mm}{%%
- \tccore@examiners{#3}%
- \@ifundefined{tc@#2@#3}{--}{#1: {\bf \csname tc@#2@#3\endcsname}%
-
- \hfill \tcdef@forms@formsemaillabel: {\bf \csname tc@#2@#3email\endcsname}  ~\tcdef@forms@formsphonelabel: {\bf \csname tc@#2@#3phone\endcsname} ~\tcdef@forms@agreelabel: \rule{\tc@agreerule}{.1pt}\\}%
-}%
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-% TCC description (for many forms)%
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%\NewDocumentCommand{\tcforms@tccdesc}{}{%%
-%  \noindent\tcdef@forms@formsstudentlabel : {\bf \tc@studentA} \hfill \tcdef@forms@formsstudentIDlabel : {\bf \tc@studentAID}%
-%
-%  \noindent\tcdef@forms@formsworktitlelabel : {\bf \@title}\\[-4mm]%
-%
-%  \noindent\tcdef@forms@formsadvisorlabel : {\bf \tc@studentA@advisor}\\%
-%}%
-%
-\NewDocumentCommand{\tcforms@tccdesc}{}{%%
-  \tcforms@studentIDheader
-  
-  \tcforms@advisorIDheader
-}%
 
+\ProvidesExplPackage
+    {ufrgscca-forms}
+    {2023/11/23}
+    {2.0}
+    {UFRGS/CCA forms commands}
+   
+    
+%%%%%%%
+%%%
+%%% Just an attempt of having my packages info in a regular way
+%%% Idea being: { <pck-name> / pkg info } for each and all.
+%%%
+%%%%%%%
+\keys_define:nn { ufrgscca-forms / pkg info}
+  {
+     name        .code:n = {ufrgscca-forms} ,
+     prefix      .code:n = {ufrgscca} ,
+     date        .code:n = {2023/11/23},
+     version     .code:n = {2.0} ,
+     description .code:n = {UFRGS/CCA~ forms~commands}
+  }
+\cs_if_exist:NF \__codedesc_pkg_info:nn 
+  {
+    \cs_new_protected:Npn \__codedesc_pkg_info:nn #1#2
+      { \keys_set:nn {#1 / pkg info}{#2} }
+  }
+\cs_if_exist:NF \PkgInfo
+  { \NewDocumentCommand \PkgInfo {mm} { \keys_set:nn {#1 / pkg info}{#2} } }
+\cs_if_exist:NF \PkgDescription
+  { 
+    \NewDocumentCommand \PkgDescription {m} 
+      { 
+        \noindent Package~ \textbf{\PkgInfo{#1}{name}}~Version:~\PkgInfo{#1}{version}~ -~ \PkgInfo{#1}{date}\par \emph{\PkgInfo{#1}{description}}~\par 
+      } 
+  }
+%%%%%%%
+%%% End of cut-n-paste
+%%%%%%%
+    
+    
+    
+    
+\RequirePackage{starray}
+\RequirePackage{amsfonts}
 
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-% TCC (new) generic form %
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
-% parameters:
-% #1 : footnote for 'form title'
-% #2 : form 'heading title' (TCC I, for instance)
-% #3 : 'form title'
-% #4 : form oppening
-% #5 : form body
-% #6 : form closing
-%
-\NewDocumentCommand{\tcforms@genform}{O{}mmmmm}{%
-  \tc@formtopbox[tcdef@forms@formsfootnote]{\tcdef@forms@formstitle}{\tcdef@forms@examformtitle}%
-%
-  \vfill%
-   #4
-  \vfill%
-  #5
-  \vfill%
-  #6
-  \pagebreak
-}
 
+\cs_generate_variant:Nn \tl_gset:Nn {Ne}
 
-\NewDocumentCommand{\tcforms@studentIDheader}{}{
-  \noindent\tcdef@forms@formsstudentlabel : {\bf \csname tc@student\Alph{tc@studentcount}\endcsname}\hfill \tcdef@forms@formsstudentIDlabel : {\bf \tc@studentAID}\\%
-  \noindent\tcdef@forms@formsworktitlelabel : \@ifundefined{tc@student\Alph{tc@studentcount}title}{\textsl{\@title}}{\textsl{\csname tc@student\Alph{tc@studentcount}title\endcsname}}\\
+\DeclareKeys[forms]{
+  internreqform.usage = general,
+  internreqform.code = {
+        \MakeForm{internshiprequest}
+        },
+  internsupervisorform.usage = general,
+  internsupervisorform.code = {
+        \MakeForm{internshipsupervisorform}
+        },
+  interntutorform.usage = general,
+  interntutorform.code = {
+        \MakeForm{internshiptutorform}
+        },
+  reqform-I.usage = general,
+  reqform-I.code = {
+        \MakeForm{request-I}
+        },
+  reqform-II.usage = general,
+  reqform-II.code = {
+        \MakeForm{request-II}
+        },
+  coadvisor-I.usage = general,
+  coadvisor-I.code = {
+        \MakeForm{coadvisor-I}
+        },
+  coadvisor-II.usage = general,
+  coadvisor-II.code = {
+        \MakeForm{coadvisor-II}
+        },
+  boardapproval-I.usage = general,
+  boardapproval-I.code = {
+        \MakeForm{boardapproval-I}
+        },
+  boardapproval-II.usage = general,
+  boardapproval-II.code = {
+        \MakeForm{boardapproval-II}
+        },
+  advisorsapproval-I.usage = general,
+  advisorsapproval-I.code = {
+        \MakeForm{advisorsapproval-I}
+        },
+  advisorsapproval-II.usage = general,
+  advisorsapproval-II.code = {
+        \MakeForm{advisorsapproval-II}
+        },
+  receipts-I.usage = general,
+  receipts-I.code = {
+        \MakeForm{receipts-II}
+        },
+  receipts-II.usage = general,
+  receipts-II.code = {
+        \MakeForm{receipts-II}
+        },
+  examinersforms-I.usage = general,
+  examinersforms-I.code = {
+        \SetReviewer{2}
+        \MakeForm{examinersform-I}
+        \SetReviewer{3}
+        \MakeForm{examinersform-I}
+        },
+  examinersforms-II.usage = general,
+  examinersforms-II.code = {
+        \SetReviewer{1}
+        \MakeForm{receipts-II}
+        \MakeForm{examinersform-II}
+        \MakeForm{correctionsform-II}
+        \SetReviewer{2}
+        \MakeForm{receipts-II}
+        \MakeForm{examinersform-II}
+        \MakeForm{correctionsform-II}
+        \SetReviewer{3}
+        \MakeForm{receipts-II}
+        \MakeForm{examinersform-II}
+        \MakeForm{correctionsform-II}
+        },
+  rectifyapproval-I.usage = general,
+  rectifyapproval-I.code = {
+        \MakeForm{rectifyapproval-I}
+        },
+  rectifyapproval-II.usage = general,
+  rectifyapproval-II.code = {
+        \MakeForm{rectifyapproval-II}
+        },
 }
 
-\NewDocumentCommand{\tcforms@examinerIDheader}{m}{
-  %\tccore@examiners{#1}
-  \noindent\tcdef@forms@formsexaminerlabel :  \textbf{\csname tc@student\Alph{tc@studentcount}@#1\endcsname}%
-}
 
-\NewDocumentCommand{\tcforms@advisorIDheader}{}{
-  \noindent\tcdef@forms@formsadvisorlabel :  \textbf{\csname tc@student\Alph{tc@studentcount}@advisor\endcsname}%
+\NewDocumentCommand{\tcforms}{m}{%
+  \SetKeys[forms]{#1}%
 }
 
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-% TCC examiner form (grades)%
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\NewDocumentCommand{\tcforms@examinersform}{m}{%
-  \tc@formtopbox[tcdef@forms@formsfootnote]{\tcdef@forms@formstitle}{\tcdef@forms@examformtitle}%
-%
-  \vfill%
-%  \tcdef@forms@formsstudentlabel : {\bf \csname tc@student\Alph{tc@studentcount}\endcsname}\\%
-%  \tcdef@forms@formsexaminerlabel :  \csname tc@student\Alph{tc@studentcount}@#1\endcsname%
-  \tcforms@studentIDheader
-  
-  \tcforms@examinerIDheader{#1}
-  \vfill%
-  \tcdef@forms@examformdesc%
 
-  \vfill%
-
-  \begin{center}
-    \begin{tabular}{|c|c|c|}%
-      \hline%
-      \tc@TCCpointAlabel & \tc@TCCpointBlabel & \tc@TCCpointClabel \\\hline%
-      & & \\\hline
-    \end{tabular}%
-  \end{center}%
-
-  \vfill%
-
-  \tcforms@formsigdate{\tcdef@forms@examinersignature}%
-  \vfill%
-  \begin{description}
-    \item[\tcdef@forms@examformnoteslabel:] \tcdef@forms@examformnotes
-  \end{description}%
-
-  \vfill%
-  \pagebreak%
-}%
-%
-%
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-% TCC examiners reviewer form (corrections)%
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\NewDocumentCommand{\tcforms@reviewform}{m}{%
-  \tc@formtopbox[tcdef@forms@reviewformfootnote]{\tcdef@forms@formstitle}{\tcdef@forms@reviewformtitle}%
-
-  \vfill%
-%  \tcdef@forms@formsstudentlabel : {\bf \expandafter\csname tc@student\Alph{tc@studentcount}\endcsname}\\%
-%  \tcdef@forms@formsexaminerlabel : \expandafter\csname tc@student\Alph{tc@studentcount}@#1\endcsname%
-  \tcforms@studentIDheader
-  
-  \tcforms@examinerIDheader{#1}
-  \vfill%
-  \resizebox{0.9\textwidth}{!}{%%
-    \tcdef@forms@reviewformdesc%
-  }%
-  \footnotetext[2]{\tcdef@forms@reviewformfootnoteB}%
-  \vfill%
-
-  \tcforms@formsigdate{\tcdef@forms@examinersignature}%
-  \vfill%
-  \pagebreak%
-}%
-%
-
-
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-% TCC requirement form (TCC register)%
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\NewDocumentCommand{\tcforms@reqform}{}{%
-  \tc@formtopbox{\tcdef@forms@formstitle}{\tcdef@forms@reqformtitle}%
-
-  \vfill%
-
-  \tcdef@forms@reqformopening%
-  \vfill%
-
-  \tcdef@forms@reqformdesc%
-  \vfill%
-
-  \tcdef@forms@formstemptitlelabel : \@title %
-
-  \tcdef@forms@formsstudentemaillabel : {\bf \tc@studentAemail} %
-
-  \tcdef@forms@formsadvisorlabel : \tc@studentA@advisor%
-
-  \tcdef@forms@formsadvisoremaillabel : {\bf \tc@studentA@advisoremail}%
-  \hfill \tcdef@forms@formsphonelabel : {\bf \tc@studentA@advisorphone}%
-
-
-  \@ifundefined{tc@studentA@coadvisor}{%
-    \tcdef@forms@formscoadvisorlabel : \rule{\tc@namerule}{.1pt}%
-  
-    \tcdef@forms@formscoadvisoremaillabel : {\bf \rule{\tc@emailrule}{.1pt}}%
-    \hfill \tcdef@forms@formsphonelabel : {\bf \rule{\tc@phonerule}{.1pt}}%
-	}
+\NewDocumentCommand{\tcemptyforms}{m}
   {
-    \tcdef@forms@formscoadvisorlabel : \tc@studentA@coadvisor%
-  
-    \tcdef@forms@formscoadvisoremaillabel : {\bf \tc@studentA@coadvisoremail}%
-    \hfill \tcdef@forms@formsphonelabel : {\bf \tc@studentA@coadvisorphone}%
-  }%
-
-  %{\bf \tcdef@forms@formsbrieflabel}:\footnote[1]{\tcdef@forms@renewreqformnotes}%
-
-  \vfill%
-  \tcdef@forms@reqArgument
-  
-
-  \tcdef@core@tccArgument%
-
-  \vfill
-  \parbox[t]{.45\textwidth}{\tcforms@formsigdate{\tcdef@forms@studentsignature}}\hfill%
-  \parbox[t]{.45\textwidth}{\tcforms@formsigdate{\tcdef@forms@advisorsignature}}%
-  \pagebreak%
-}%
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-% TCC co-advisor requirement form (TCC register)%
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\NewDocumentCommand{\tcforms@coadvisorform}{}{%
-  \@ifundefined{tc@studentA@coadvisor}{%
-    \coadvisor{\rule{\tc@namerule}{.1pt}}{}%
-    \coadvisorinfo{}{\rule{\tc@titlerule}{.1pt}}{\rule{\tc@emailrule}{.1pt}}{\rule{\tc@phonerule}{.1pt}}%
-    }{}%
-  \tc@formtopbox{\tcdef@forms@formstitle}{\tcdef@forms@coadvisorformtitle}%
-
-  \vfill%
-
-  \tcdef@forms@reqformopening%
-  \vfill%
-
-  \tcdef@forms@coadvisorformdesc%
-  \vfill%
-
-  \tcdef@forms@formstemptitlelabel : \@title %
-
-  \tcdef@forms@formsadvisorlabel: \tc@studentA@advisor
-
-  \tcdef@forms@formscoadvisorlabel: \tc@studentA@coadvisor%
-
-  \tcdef@forms@formscoadvisoremaillabel : {\bf \tc@studentA@coadvisoremail}%
-  \hfill \tcdef@forms@formsphonelabel : {\bf \tc@studentA@coadvisorphone}%
-
-
-  \vfill%
-  {\bf \tcdef@forms@formsreasonlabel}:%
-
-  \tcdef@core@tcccoadvisorbrief%    !!!! What a Hell ?!?!?!
-
-  \tcforms@formsigdate{\tcdef@forms@studentsignature}%
-
-  \parbox[t]{.45\textwidth}{\tcforms@formsigdate{\tcdef@forms@advisorsignature}}\hfill%
-  \parbox[t]{.45\textwidth}{\tcforms@formsigdate{\tcdef@forms@coadvisorsignature}}%
-  \pagebreak%
-}%
-%
-%
-%
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-% TCC renew requirement form (TCC register)%
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\NewDocumentCommand{\tcforms@renewreqform}{}{%
-  \tc@formtopbox{\tcdef@forms@formstitle}{\tcdef@forms@renewreqformtitle}%
-
-  \vfill%
-  \tcforms@tccdesc%
-
-  \tcdef@forms@formsstudentemaillabel : {\bf \tc@studentAemail} %
-
-  \hfill \tcdef@forms@formsadvisoremaillabel : {\bf \tc@studentA@advisoremail}%
-
-  \hfill \tcdef@forms@formsphonelabel : {\bf \tc@studentA@advisorphone}%
-  \vfill%
-  {\bf \tcdef@forms@formsbrieflabel}:\footnote[1]{\tcdef@forms@renewreqformnotes}%
-
-  \tcdef@core@tccbrief%
-  \vfill%
-  \tcforms@formsigdate{\tcdef@forms@studentsignature}%
-  \vfill%
-
-  \tcforms@formsigdate{\tcdef@forms@advisorsignature}%
-  \vfill%
-  \pagebreak%
-}%
-%
-%
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-% TCC Board approval form%
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\NewDocumentCommand{\tcforms@examboardform}{}{%
-  \tc@formtopbox{\tcdef@forms@formstitle}{\tcdef@forms@examboardformtitle}%
-
-  \vfill%
-
-  \tcforms@tccdesc%
-
-  \vfill%
-  \begin{center}
-    \tcdef@forms@formsboardtitle
-  \end{center}%
-
-  \tcforms@examinerdesc{studentA}{examinerA}%
-
-  \tcforms@examinerdesc{studentA}{examinerB}%
-
-  \tcforms@examinerdesc{studentA}{examinerC}%
-
-  \tcforms@examinerdesc[\tcdef@forms@formsaltexaminerlabel]{studentA}{altexaminerA}%
-
-  \vfill%
+    \__ufrgscca_emptyfields:
+    \SetKeys[forms]{#1}%
+  }
 
-  \tcdef@forms@examboardformdesc%
-  \vfill%
 
-  \tcforms@formsigdate{\tcdef@forms@advisorsignature}%
-  \vfill%
 
-  \pagebreak%
-}%
-%
-%
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-% TCC Board approval form%
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\NewDocumentCommand{\tcforms@examboardformTMP}{}{%
-  \tc@formtopbox{\tcdef@forms@formstitle}{\tcdef@forms@examboardformtitleTMP}%
+\int_new:N \l__ufrgscca_a_int
+\int_new:N \l__ufrgscca_b_int
+\NewDocumentCommand{\BlankLines}{m}{
+  \int_zero:N \l__ufrgscca_a_int
+  \int_set:Nn \l__ufrgscca_b_int {#1}
+  \int_do_until:nNnn {\l__ufrgscca_a_int} {=} {\l__ufrgscca_b_int}
+    {
+      \int_incr:N \l__ufrgscca_a_int
+      \hrulefill\\\par%
 
-  \vfill%
+    }
+}
 
-  \tcforms@tccdesc%
+\NewDocumentCommand{\SetForm}{mm+m}{
+  \prop_put:Nnn \l__ufrgscca_forms_prop {#1.#2}{#3}
+}
 
-  \vfill%
+\NewDocumentCommand{\MakeForm}{m} {
   \begin{center}
-    \tcdef@forms@formsboardtitle
-  \end{center}%
-
-  \tcforms@examinerdesc{studentA}{examinerA}%
-
-  \tcforms@examinerdesc{studentA}{examinerB}%
-
-  \tcforms@examinerdesc{studentA}{examinerC}%
-
-  \tcforms@examinerdesc[\tcdef@forms@formsaltexaminerlabel]{studentA}{altexaminerA}%
-
-  \vfill%
-
-  \tcdef@forms@examboardformdescTMP%
-  \vfill%
-
-  \tcforms@formsigdate{\tcdef@forms@advisorsignature}%
-  \vfill%
-
-  \pagebreak%
-}%
-%
-%
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-% TCC Board receipts form%
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\NewDocumentCommand{\tcforms@receiptform}{m}{%
-  \tc@formtopbox[tcdef@forms@receiptformfootnote]{\tcdef@forms@formstitle}{\tcdef@forms@receiptformtitle}%
-
-  \vfill%
-
-  \tcforms@tccdesc\\%
-
-  \noindent\tcdef@forms@formsboardlabel : {\bf \csname tc@student\Alph{tc@studentcount}@#1\endcsname }%
-
-  \vfill%
-  \tcdef@forms@receiptformdesc {\bf \tc@studentA},\ \ \ \tcdef@forms@formsstudentIDlabel : {\bf \tc@studentAID}.%
-
-  \vfill%
-
-  \tcforms@formsigdate{\tcdef@forms@boardsignature}%
-  \vfill%
-  \pagebreak%
-}%
-%
-%
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-% examiners approval/not signature (for rectify approval form)%
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\NewDocumentCommand{\tcforms@approvalsigdate}{mm}{%%
-  \tcdef@forms@formsrectifyOKdesc%
-  \hfill\tcdef@forms@formsdatelabel:\rule{\tc@daterule}{.1pt}\\[3mm]%
-  #1: #2 \hfill  \tcdef@forms@formssignaturelabel:\rule{\tc@namerule}{.1pt}%
-}%
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-% TCC Board rectify approval form%
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\NewDocumentCommand{\tcforms@rectifyexaminersig}{O{\tcdef@forms@formsexaminerlabel}m}{\@ifundefined{#2}{}{\tcforms@approvalsigdate{#1}{\csname #2\endcsname}}\\[3mm]}%
-%
-\NewDocumentCommand{\tcforms@rectifyapprovalform}{}{%
-  \tc@formtopbox{\tcdef@forms@formstitle}{\tcdef@forms@rectifyapprovalformtitle}%
-
-  \vfill%
-
-  \tcforms@tccdesc%
-
-  \vfill%
-  \tcdef@forms@rectifyapprovalformdesc%
-
-  \vfill%
-
-  \tcforms@rectifyexaminersig[\tcdef@forms@formsadvisorlabel]{tc@studentA@advisor}%
-
-  \vfill%
-
-  \@ifundefined{tc@nBoard}{}{%
-    \tcforms@rectifyexaminersig{tc@studentA@examinerA}%
-  }%
-
-  \tcforms@rectifyexaminersig{tc@studentA@examinerB}%
-
-  \tcforms@rectifyexaminersig{tc@studentA@examinerC}%
-
-  \tcforms@rectifyexaminersig{tc@studentA@altexaminerA}%
-  \vfill%
-  \pagebreak%
-}%
-%
+    \noindent
+    \parbox[t]{\textwidth}
+      {
+        \centering
+          {
+            \UseTerm{cover.topbase}\\
+			{\sc \prop_item:Nn \l__ufrgscca_forms_prop {#1.heading}}
+          }
+      }\\[7mm]
+    {\bf \prop_item:Nn \l__ufrgscca_forms_prop {#1.title}}
+    \prop_if_in:NnTF \l__ufrgscca_forms_prop {#1.footnote}
+      {\footnote[1]{\prop_item:Nn \l__ufrgscca_forms_prop {#1.footnote}}}
+      {}\\
+  \end{center}
 %
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-% TCC Advisor approval form%
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\NewDocumentCommand{\tcforms@advisorapprovalform}{}{%
-  \tc@formtopbox{\tcdef@forms@formstitle}{\tcdef@forms@advisorapprovalformtitle}%
-
-  \vfill%
-
-  \tcforms@tccdesc%
-
-  \vfill%
-  \tcdef@forms@advisorapprovalformdesc%
-
-  \vfill%
-
-  \tcdef@core@tccadvisorsreview%
-
-  \vfill%
-  \tcdef@forms@advisorapprovalformdescB%
-
-  \tcforms@formsigdate{\tcdef@forms@advisorsignature}%
-  \vfill%
-
-  \tcforms@formsigdate{\tcdef@forms@studentsignature}%
-  \vfill%
-  \pagebreak%
-}%
-%
-%
-%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%
-%
-
-%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-% set of blank lines%
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\cmdfactory<core>{formsblanklines,formsblanklinesB}
-\formsblanklines{\hrulefill\\%
-
-\hrulefill\\%
-
-\hrulefill\\%
-
-\hrulefill\\%
-
-\hrulefill\\%
-
-\hrulefill\\%
-
-\hrulefill%
-}%
-%
-\formsblanklinesB{\hrulefill\\%
-
-    \hrulefill\\%
-
-    \hrulefill\\%
+  \vfill
+   \prop_item:Nn \l__ufrgscca_forms_prop {#1.opening}
+  \vfill
+  \prop_item:Nn \l__ufrgscca_forms_prop {#1.body}
+  \vfill
+  \prop_item:Nn \l__ufrgscca_forms_prop {#1.closing}
+  \pagebreak
+  }
 
-    \hrulefill\\%
 
-    \hrulefill\\%
-}%
+\NewDocumentCommand{\SignatureDate}{m}{
+  \begin{flushright} \UseTerm{localdate}%
+    ~\vspace*{6mm}\\
 %
+    $\overline{\text{\emph{#1}}}$
+  \end{flushright}
+}
 
-
-\DeclareKeys[forms]{
-  internreqform.usage = general,
-  internreqform.code = {\tcforms@internreqform},
-  internsupervisorform.usage = general,
-  internsupervisorform.code = {\tcforms@internsupervisorform},
-  interntutorform.usage = general,
-  interntutorform.code = {\tcforms@interntutorform},
-  reqform.usage = general,
-  reqform.code = {\tcforms@reqform},
-  reqform-II.usage = general,
-  reqform-II.code = {\tcforms@reqform},
-  coadvisor.usage = general,
-  coadvisor.code = {\tcforms@coadvisorform},
-  coadvisor-II.usage = general,
-  coadvisor-II.code = {\tcforms@coadvisorform},
-  boardapproval.usage = general,
-  boardapproval.code = {\tcforms@examboardform},
-  boardapproval-II.usage = general,
-  boardapproval-II.code = {\tcforms@examboardform},
-  boardapproval-IIb.usage = general,
-  boardapproval-IIb.code = {\tcforms@examboardformTMP},
-  advisorsapproval.usage = general,
-  advisorsapproval.code = {\tcforms@advisorapprovalform},
-  advisorsapproval-II.usage = general,
-  advisorsapproval-II.code = {\tcforms@advisorapprovalform},
-  receipts.usage = general,
-  receipts.code = {\tcforms@receiptforms},
-  receipts-II.usage = general,
-  receipts-II.code = {\tcforms@receiptforms},
-  examinersforms.usage = general,
-  examinersforms.code = {\tcforms@examinersForms},
-  examinersforms-II.usage = general,
-  examinersforms-II.code = {\tcforms@examinersForms},
-  rectifyapproval.usage = general,
-  rectifyapproval.code = {\tcforms@rectifyapprovalform},
-  rectifyapproval-II.usage = general,
-  rectifyapproval-II.code = {\tcforms@rectifyapprovalform},
-  reqform-I.usage = general,
-  reqform-I.code = {\tcforms@reqTRform},
-  coadvisor-I.usage = general,
-  coadvisor-I.code = {\tcforms@coadvisorTRform},
-  examinersforms-I.usage = general,
-  examinersforms-I.code = {\tcforms@examinersTRforms},
-  advisorsapproval-I.usage = general,
-  advisorsapproval-I.code = {\tcforms@advisorTRapprovalform},
-  boardapproval-I.usage = general,
-  boardapproval-I.code = {\tcforms@advisorTRboardform},
-  rectifyapproval-I.usage = general,
-  rectifyapproval-I.code = {\tcforms@rectifyTRapprovalform},
-  }
+\NewDocumentCommand{\BoardDescSignature}{mm}{
+  #1:~ \textbf{\DataFields{#2}{name}}\vspace{-2ex}
+    \begin{flushright}%~ \hfill
+    \UseLabel{email}:~ \textbf{\DataFields{#2}{email}}~ 
+    \UseLabel{phone}:~ \textbf{\DataFields{#2}{phone}}~
+    \UseLabel{agree}:~ \rule{\l__ufrgscca_agree_rule_dim}{.1pt}
+    \end{flushright}
+}
 
 
-\NewDocumentCommand{\tcforms}{m}{%
-  \SetKeys[forms]{#1}%
-}
+%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%
+%%%
+%%%  loading defaults
+%%%
+%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%
+\ExplSyntaxOff
+  \input{ufrgscca-forms.tex}
+\ExplSyntaxOn  
 
-\NewDocumentCommand{\tcemptyforms}{m}{%
-  \tccore@resetfields%
-  \title{\rule{\tc@namerule}{.1pt}}%
-  \tccore@emptyfields%
-  \SetKeys[forms]{#1}%
-}
-- 
cgit v1.2.3

