diff options
author | Karl Berry <karl@freefriends.org> | 2024-03-01 21:44:58 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2024-03-01 21:44:58 +0000 |
commit | 1ead42797b2dc809299bb3b4254c7d290e8144f9 (patch) | |
tree | cd9f5c803a8e1017a4874f7f37a48d324527e6c2 | |
parent | 94943b79e7d0bd2346bf2d6dd285d381edcebe92 (diff) |
ufrgscca (1mar24)
git-svn-id: svn://tug.org/texlive/trunk@70306 c570f23f-e606-0410-a88d-b1316a301751
18 files changed, 219 insertions, 180 deletions
diff --git a/Master/texmf-dist/doc/latex/ufrgscca/README.md b/Master/texmf-dist/doc/latex/ufrgscca/README.md index 558ac6e182e..dc63bf969a2 100644 --- a/Master/texmf-dist/doc/latex/ufrgscca/README.md +++ b/Master/texmf-dist/doc/latex/ufrgscca/README.md @@ -107,11 +107,16 @@ The Current Maintainer of this work is Alceu Frigeri ## Changelog -* Version 2.5 (this) - - Added PDF bookmarcks to each and every Form/Report page. +* Version 2.6 (this) + - Added other's case (student fate) for record keeping. + - Report adjustments (other's case). + +* Version 2.5 + - Added PDF bookmarks to each and every Form/Report page. - Added \studentReviewerSetCase (see manual) + - Some reports fine tuning. -* Version 2.4/2.4a (this) +* Version 2.4/2.4a - a few typos (including [l3kernel prop check](https://github.com/latex3/latex3/issues/1460)) - extended \studentfate possible values (see documentation). - \makeforms code cleanup. switching to \prop_get:NnNTF instead of \prop_item:Nn diff --git a/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca-cover-ptBR.tex b/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca-cover-ptBR.tex index e661e6184d0..e73a06aef2e 100644 --- a/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca-cover-ptBR.tex +++ b/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca-cover-ptBR.tex @@ -12,7 +12,7 @@ %% %% The Current Maintainer of this work is Alceu Frigeri %% -%% This is version {2.5} {2024/02/25} +%% This is version {2.6} {2024/02/29} %% %% The list of files that compose this work can be found in the README.md file at %% https://ctan.org/pkg/ufrgscca diff --git a/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca-forms.tex b/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca-forms.tex index 22a74c03ccb..8e225d5edfa 100644 --- a/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca-forms.tex +++ b/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca-forms.tex @@ -12,7 +12,7 @@ %% %% The Current Maintainer of this work is Alceu Frigeri %% -%% This is version {2.5} {2024/02/25} +%% This is version {2.6} {2024/02/29} %% %% The list of files that compose this work can be found in the README.md file at %% https://ctan.org/pkg/ufrgscca @@ -105,7 +105,7 @@ Data de Início: {\bf \DataFields{student.internship}{start}}\hfill Previsão de \begin{itemize}[tcc,nosep] \item Grupo I - Aspectos Profissionais \begin{enumerate}[tcc,nosep] - \item \textbf{Qualidade do Trabalho}:\emptybox\\ {\footnotesize considerar a qualidade do trabalho tendo em vista o que seria desejável} + \item \textbf{Qualidade do Trabalho}:\emptybox\\ {\footnotesize considerar a qualidade do trabalho tendo em vista o que seria desejável.} \item \textbf{Engenhosidade}:\emptybox\\ {\footnotesize capacidade de sugerir, projetar ou executar modificações ou inovações.} \item \textbf{Conhecimentos}:\emptybox\\ {\footnotesize conhecimento demonstrado no desenvolvimento das atividades programadas.} \item \textbf{Cumprimentos das Tarefas}:\emptybox\\ {\footnotesize considerar o volume de atividades cumpridas dentro de um padrão razoável.} @@ -113,10 +113,10 @@ Data de Início: {\bf \DataFields{student.internship}{start}}\hfill Previsão de \end{enumerate} \item Grupo II - Aspectos Humanos \begin{enumerate}[tcc,nosep] - \item \textbf{Assiduidade}:\emptybox\\ {\footnotesize cumprimento do horário do estágio e ausência de falhas} + \item \textbf{Assiduidade}:\emptybox\\ {\footnotesize cumprimento do horário do estágio e ausência de falhas.} \item \textbf{Disciplina}:\emptybox\\ {\footnotesize observância das normas e regulamentos internos da empresa.} \item \textbf{Sociabilidade}:\emptybox\\ {\footnotesize facilidade de se integrar com colegas e ambiente de trabalho.} -\item \textbf{Cooperação}:\emptybox\\ {\footnotesize disposição para cooperar com colegas e para atender a atividades..} +\item \textbf{Cooperação}:\emptybox\\ {\footnotesize disposição para cooperar com colegas e para atender a atividades.} \item \textbf{Senso de Responsabilidade}:\emptybox\\ {\footnotesize zelo pelo material, equipamentos e bens da empresa.} \end{enumerate} \end{itemize} @@ -459,7 +459,7 @@ Nome do(a) Aluno(a) --- Email\\ \begin{enumerate}[tcc,nosep] \item \emptybox\ \textbf{Enquadramento do Tema}. {\footnotesize(peso:2)}\\ {\footnotesize Quão bem o mesmo se enquadra no perfil de um formando em Eng. de Controle e Automação.} \item \emptybox\ \textbf{Revisão Bibliográfica}. {\footnotesize(peso:2)}\\ {\footnotesize A revisão apresentada é adequada, suficiente, para o tema do trabalho?} - \item \emptybox\ \textbf{Abordagem/Plano de Trabalho Proposto}. {\footnotesize(peso:2)}\\ {\footnotesize Considerar se a abordagem, plano de trabalho proposto, é adequada e factivel.} + \item \emptybox\ \textbf{Abordagem/Plano de Trabalho Proposto}. {\footnotesize(peso:2)}\\ {\footnotesize Considerar se a abordagem, plano de trabalho proposto, é adequada e factível.} \item \emptybox\ \textbf{Redação}. {\footnotesize(peso:1)}\\ {\footnotesize Considerar a qualidade do trabalho escrito apresentado.} \item { O Trabalho Submetido} \begin{enumerate}[tcc,nosep] @@ -470,7 +470,7 @@ Nome do(a) Aluno(a) --- Email\\ \end{enumerate} \item[$\Box$ b)] Necessita ser revisto/re-escrito,\footnotemark[3] e: \begin{enumerate} - \item[$\Box$ b.1)] basta a revisão final do texto pelo orientador, + \item[$\Box$ b.1)] basta a revisão final do texto pelo orientador. \item[$\Box$ b.2)] revisarei o trabalho depois de corrigido. \end{enumerate} \end{enumerate} @@ -513,10 +513,10 @@ Outras considerações, parecer (se necessário): \BlankLines{5} %%% \SetForm{rectifyapproval-I}{closing}{ - \SetReviewer{2} + \studentReviewerSelect{2} \ApprovalSignature{\DataFields{student.reviewer}{name}}\vfill - \SetReviewer{3} + \studentReviewerSelect{3} \ApprovalSignature{\DataFields{student.reviewer}{name}}\vfill } @@ -800,7 +800,7 @@ A nota (variando de zero a dez) atribuída por cada membro da banca examinadora \item[$\Box$ a)] Está adequado, \begin{enumerate} \item[$\Box$ a.1)] dispensando correções do texto. - \item[$\Box$ a.2)] sendo necessário correções, conforme a seguir (e anotações anexas). + \item[$\Box$ a.2)] sendo necessário correções, conforme a seguir (e anotações anexas): \begin{tabular}{llp{2em}ll} $\Box$ & Ortográfica & & $\Box$ & Regras de Escrita \\ $\Box$ & Resumo & & $\Box$ & Abstract \\ @@ -855,15 +855,15 @@ A nota (variando de zero a dez) atribuída por cada membro da banca examinadora \SetForm{rectifyapproval-II}{closing}{ \studentDistinctBoardCase { - \SetReviewer{1} + \studentReviewerSelect{1} \ApprovalSignature{\DataFields{student.reviewer}{name}}\vfill } {} - \SetReviewer{2} + \studentReviewerSelect{2} \ApprovalSignature{\DataFields{student.reviewer}{name}}\vfill - \SetReviewer{3} + \studentReviewerSelect{3} \ApprovalSignature{\DataFields{student.reviewer}{name}}\vfill @@ -1134,13 +1134,18 @@ A nota (variando de zero a dez) atribuída por cada membro da banca examinadora \__ufrgscca_miss_case:nnnnn {7} {report.tabMult.#1} {\l__ufrgscca_baselist_ff_seq} - {Desistentes~ com~ conceito~ (2o ~ semestre)} + {Desistentes~ com~ conceito~FF~ (2o ~ semestre)} {red} \__ufrgscca_miss_case:nnnnn {7} {report.tabMult.#1} {\l__ufrgscca_baselist_dismiss_seq} {Desistentes~ sem~ conceito~ (1o ~ semestre)} {magenta} + \__ufrgscca_miss_case:nnnnn + {7} {report.tabMult.#1} + {\l__ufrgscca_baselist_other_seq} + {Outros~ (não~ matriculados)} + {teal} \end{longtable} } @@ -1172,7 +1177,7 @@ A nota (variando de zero a dez) atribuída por cada membro da banca examinadora \SetForm{report-I}{heading}{\vspace*{-5ex}\UseTerm{title.tccI}~ - ~\textbf{\UseTerm{semester}}\exp_args:Nee \pdfbookmark{\UseTerm{book.report-I}}{\UseTerm{book.report-I}}} \ExplSyntaxOff %\SetForm{report-I}{title}{} -\SetForm{report-I}{opening}{} +\SetForm{report-I}{preopening}{} %%% \SetForm{report-I}{opening}{ % @@ -1182,7 +1187,7 @@ A nota (variando de zero a dez) atribuída por cada membro da banca examinadora } %%% -\SetForm{report-I}{closing}{} +%\SetForm{report-I}{closing}{} %%%%%%%%%%%%%%% @@ -1195,9 +1200,9 @@ A nota (variando de zero a dez) atribuída por cada membro da banca examinadora %\SetForm{report-II}{heading}{\vspace*{-5ex}\UseTerm{title.tccII}~ - ~\textbf{\UseTerm{semester}}} %\SetForm{report-II}{title}{Relatório Acompanhamento - \UseTerm{semester}} %\SetForm{report-II}{title}{\vspace*{-2ex}\UseTerm{semester}} -\SetForm{report-II}{opening}{} - +%\SetForm{report-II}{opening}{} +\SetForm{report-II}{preopening}{} % %%% \SetForm{report-II}{opening}{ % { \vspace{-2ex}\tiny @@ -1207,7 +1212,7 @@ A nota (variando de zero a dez) atribuída por cada membro da banca examinadora %%% -\SetForm{report-II}{closing}{} +%\SetForm{report-II}{closing}{} %%%%%%%%%%%%%%% diff --git a/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca-terms-en.tex b/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca-terms-en.tex index fcec1b1b7df..8223ae33db3 100644 --- a/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca-terms-en.tex +++ b/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca-terms-en.tex @@ -12,7 +12,7 @@ %% %% The Current Maintainer of this work is Alceu Frigeri %% -%% This is version {2.5} {2024/02/25} +%% This is version {2.6} {2024/02/29} %% %% The list of files that compose this work can be found in the README.md file at %% https://ctan.org/pkg/ufrgscca diff --git a/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca-terms-ptBR.tex b/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca-terms-ptBR.tex index dc424151225..14d59b4505a 100644 --- a/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca-terms-ptBR.tex +++ b/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca-terms-ptBR.tex @@ -12,7 +12,7 @@ %% %% The Current Maintainer of this work is Alceu Frigeri %% -%% This is version {2.5} {2024/02/25} +%% This is version {2.6} {2024/02/29} %% %% The list of files that compose this work can be found in the README.md file at %% https://ctan.org/pkg/ufrgscca diff --git a/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca.pdf b/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca.pdf Binary files differindex 5ae4795d7f0..b5c3f0418bd 100644 --- a/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca.pdf +++ b/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca.pdf diff --git a/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca.tex b/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca.tex index 0d5cd7d7ad9..3ce27a7913b 100644 --- a/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca.tex +++ b/Master/texmf-dist/doc/latex/ufrgscca/ufrgscca.tex @@ -15,7 +15,7 @@ %% %% The Current Maintainer of this work is Alceu Frigeri %% -%% This is version {2.5} {2024/02/25} +%% This is version {2.6} {2024/02/29} %% %% The list of files that compose this work can be found in the README.md file at %% https://ctan.org/pkg/ufrgscca @@ -541,6 +541,7 @@ All data is stored in two main \tsobj[pack]{starray} defined as follow: flag-exam , flag-ff , flag-dismiss , %%% IF it was the 1st semester. + flag-other , %%% "other list", placeholder for 'none of the above' lists. flag-newpage , %% if it should go in a new page (board) flag-distinctboard , %% if advisor isn't in the board flag-approved , @@ -624,11 +625,12 @@ Possible values for \tsobj[meta]{coord-field} are: \tsobj[option]{name,title,art \subsection{Core Auxiliary Commands} -\begin{codedescribe}[code,new=2023/11/18]{\studentselect} +\begin{codedescribe}[code,new=2023/11/18]{\studentselect,\studentReviewerSelect} \begin{codesyntax}% \tsmacro{\studentselect}{student-hash} + \tsmacro{\studentReviewerSelect}{reviewer-hash} \end{codesyntax} -Select a student based on it's hash. +Selects a student or reviewer based on theirs hash. \end{codedescribe} @@ -1052,12 +1054,12 @@ Those commands are only of use when using \tsobj[pkg]{ufrgscca-coord}. \tsmacro{ \end{codedescribe} -\begin{codedescribe}[code,new=2023/11/18,update=2023/12/02,update=2024/01/15,update=2024/02/22]{\studentCase,\studentAdvCase,\studentCoadvCase,\studentDismissCase,\studentNewPageCase,\studentDistinctBoardCase,\studentReviewerCase,\studentReviewerSetCase} +\begin{codedescribe}[code,new=2023/11/18,update=2023/12/02,update=2024/01/15,update=2024/02/22,update=2024/02/27]{\studentCase,\studentAdvCase,\studentCoadvCase,\studentDismissOtherCase,\studentNewPageCase,\studentDistinctBoardCase,\studentReviewerCase,\studentReviewerSetCase} \begin{codesyntax}% \tsmacro{\studentCase}{if-A-B-C,if-D,if-Exam-C,if-Exam-D,if-FF} \tsmacro{\studentAdvCase}{if-more-than-one,if-not} \tsmacro{\studentCoadvCase}{if-defined,if-not} - \tsmacro{\studentDismissCase}{if-dismiss,if-not} + \tsmacro{\studentDismissOtherCase}{if-dismiss-other,if-not} \tsmacro{\studentNewPageCase}{if-newpage,if-not} \tsmacro{\studentDistinctBoardCase}{if-distinct,if-not} \tsmacro{\studentReviewerCase}{rev-num,if-marked,if-not} @@ -1177,11 +1179,11 @@ These are a set of auxiliary conditionals, for instance, \tsobj{\StudentCase} wi %%%% \paragraph{Student Specific Commands}\label{student-specific-commands} -\begin{codedescribe}[code,update=2023/11/18,update=2024/02/15]{\studentfate} +\begin{codedescribe}[code,update=2023/11/18,update=2024/02/15,update=2024/02/25]{\studentfate} \begin{codesyntax}% \tsmacro{\studentfate}[fate]{} \end{codesyntax} -This assigns the \tsobj[meta]{fate} of a student, for those cases that one cannot rely on the 'calculated one' (from examiners individual grades). \tsobj[meta]{fate} can be either \emph{exam} (if the student is in exam, but didn't got a grade yet) \emph{C} or \emph{D} (in case a student in exam got graded), \emph{FF} for those that haven't finished the work or \emph{dismiss} for those that, for whatever reason, got dismissed. The default is 'do nothing' (no \tsobj[meta]{fate} assigned) +This assigns the \tsobj[meta]{fate} of a student, for those cases that one cannot rely on the 'calculated one' (from examiners individual grades). \tsobj[meta]{fate} can be either \emph{exam} (if the student is in exam, but didn't got a grade yet) \emph{C} or \emph{D} (in case a student in exam got graded), \emph{FF} for those that haven't finished the work, \emph{dismiss} for those that, for whatever reason, got dismissed and (finally, 2024/02/25) \emph{other} for all other cases (mainly record keeping). The default is 'do nothing' (no \tsobj[meta]{fate} assigned) \end{codedescribe} \begin{tsremark} (2024/02/15) In case some other, odd, value is assigned, this command will record as if the student is in 'exam', with the given grade \tsobj[oarg]{fate} marked in bold red. diff --git a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-abnt.sty b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-abnt.sty index 9618258cc0f..6e008fe159e 100644 --- a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-abnt.sty +++ b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-abnt.sty @@ -12,7 +12,7 @@ %% %% The Current Maintainer of this work is Alceu Frigeri %% -%% This is version {2.5} {2024/02/25} +%% This is version {2.6} {2024/02/29} %% %% The list of files that compose this work can be found in the README.md file at %% https://ctan.org/pkg/ufrgscca @@ -27,8 +27,8 @@ \ProvidesExplPackage {ufrgscca-abnt} - {2024/02/25} - {2.5} + {2024/02/29} + {2.6} {UFRGS/CCA ABNT layout} @@ -42,8 +42,8 @@ { name .code:n = {ufrgscca-abnt} , prefix .code:n = {ufrgscca} , - date .code:n = {2024/02/25}, - version .code:n = {2.5} , + date .code:n = {2024/02/29}, + version .code:n = {2.6} , description .code:n = {UFRGS/CCA~ abnt~layout} } \cs_if_exist:NF \PkgInfo diff --git a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-base-en.def b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-base-en.def index 8bb7ff8ce73..3af375f915f 100644 --- a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-base-en.def +++ b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-base-en.def @@ -12,7 +12,7 @@ %% %% The Current Maintainer of this work is Alceu Frigeri %% -%% This is version {2.5} {2024/02/25} +%% This is version {2.6} {2024/02/29} %% %% The list of files that compose this work can be found in the README.md file at %% https://ctan.org/pkg/ufrgscca diff --git a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-base-ptBR.def b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-base-ptBR.def index 83bb0e06dcd..7aba05c370e 100644 --- a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-base-ptBR.def +++ b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-base-ptBR.def @@ -12,7 +12,7 @@ %% %% The Current Maintainer of this work is Alceu Frigeri %% -%% This is version {2.5} {2024/02/25} +%% This is version {2.6} {2024/02/29} %% %% The list of files that compose this work can be found in the README.md file at %% https://ctan.org/pkg/ufrgscca diff --git a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-coord.sty b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-coord.sty index db572b8c151..e03a338b2f0 100644 --- a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-coord.sty +++ b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-coord.sty @@ -12,7 +12,7 @@ %% %% The Current Maintainer of this work is Alceu Frigeri %% -%% This is version {2.5} {2024/02/25} +%% This is version {2.6} {2024/02/29} %% %% The list of files that compose this work can be found in the README.md file at %% https://ctan.org/pkg/ufrgscca @@ -27,8 +27,8 @@ \ProvidesExplPackage {ufrgscca-coord} - {2024/02/25} - {2.5} + {2024/02/29} + {2.6} {UFRGS/CCA coord commands} @@ -42,8 +42,8 @@ { name .code:n = {ufrgscca-coord} , prefix .code:n = {ufrgscca} , - date .code:n = {2024/02/25}, - version .code:n = {2.5} , + date .code:n = {2024/02/29}, + version .code:n = {2.6} , description .code:n = {UFRGS/CCA~ coordination~ report~ commands} } \cs_if_exist:NF \PkgInfo @@ -274,6 +274,14 @@ flag-graded = \c_true_bool , } } + {other} + { + \starray_gset_from_keyval:nn {student} + { + flag-other = \c_true_bool , + flag-graded = \c_true_bool , + } + } } { %% in case of none of above... \starray_gset_from_keyval:nn {student} @@ -292,6 +300,7 @@ \tl_new:N \l__ufrgscca_tmpd_tl \tl_new:N \l__ufrgscca_tmpe_tl \prg_generate_conditional_variant:Nnn \str_case:nn {en}{T,F,TF} + \cs_new_protected:Npn \__ufrgscca_studentgrade: { \starray_term_syntax:n {student} @@ -314,44 +323,52 @@ { \tl_set:Ne \l__ufrgscca_tmpd_tl {\fpeval{round(((\l__ufrgscca_tmpb_tl + \l__ufrgscca_tmpc_tl)/2),2,1)}} + \__ufrgscca_set_grade:n \l__ufrgscca_tmpd_tl } {2} { \tl_set:Ne \l__ufrgscca_tmpd_tl {\fpeval{round(((\l__ufrgscca_tmpa_tl + \l__ufrgscca_tmpb_tl + \l__ufrgscca_tmpc_tl)/3),2,1)}} + \__ufrgscca_set_grade:n \l__ufrgscca_tmpd_tl } } - { \tl_set:Nn \l__ufrgscca_tmpd_tl {7.99} - \starray_gset_prop:nne {student}{reason}{\l__ufrgscca_tmpa_tl-\l__ufrgscca_tmpb_tl-\l__ufrgscca_tmpc_tl-\l__ufrgscca_tmpe_tl} - } - - \starray_gset_prop:nne {student}{gradeavrg}{\l__ufrgscca_tmpd_tl} - \fp_compare:nNnTF {\l__ufrgscca_tmpd_tl} < {\UseConst{NgradeC}} - { % D - \starray_gset_prop:nnn {student}{grade}{D} - } - { - \fp_compare:nNnTF {\l__ufrgscca_tmpd_tl} < {\UseConst{NgradeB}} - { % C - \starray_gset_prop:nnn {student}{grade}{C} - \starray_gset_prop:nnn {student}{flag-approved}{\c_true_bool} - } - { - \fp_compare:nNnTF {\l__ufrgscca_tmpd_tl} < {\UseConst{NgradeA}} - { % B - \starray_gset_prop:nnn {student}{grade}{B} - \starray_gset_prop:nnn {student}{flag-approved}{\c_true_bool} - } - { % A - \starray_gset_prop:nnn {student}{grade}{A} - \starray_gset_prop:nnn {student}{flag-approved}{\c_true_bool} - } - } + { + \starray_gset_prop:nne {student}{gradeavrg}{0} + \starray_gset_prop:nnn {student}{grade}{\color{red}D*} } } \starray_gset_prop:nnn {student}{flag-graded}{\c_true_bool} } + +\cs_new_protected:Npn \__ufrgscca_set_grade:n #1 + { + \starray_gset_prop:nne {student}{gradeavrg}{#1} + \fp_compare:nNnTF {#1} < {\UseConst{NgradeC}} + { % D + \starray_gset_prop:nnn {student}{grade}{D} + } + { + \fp_compare:nNnTF {#1} < {\UseConst{NgradeB}} + { % C + \starray_gset_prop:nnn {student}{grade}{C} + \starray_gset_prop:nnn {student}{flag-approved}{\c_true_bool} + } + { + \fp_compare:nNnTF {#1} < {\UseConst{NgradeA}} + { % B + \starray_gset_prop:nnn {student}{grade}{B} + \starray_gset_prop:nnn {student}{flag-approved}{\c_true_bool} + } + { % A + \starray_gset_prop:nnn {student}{grade}{A} + \starray_gset_prop:nnn {student}{flag-approved}{\c_true_bool} + } + } + } + } + + \cs_new_protected:Npn \__ufrgscca_set_timeslot:nnnnn #1#2#3#4#5 { \starray_gset_from_keyval:nn {student} @@ -448,63 +465,6 @@ -\NewDocumentCommand{\studentCase}{mmmmm}{ - \starray_term_syntax:n{student} - \bool_case:nF - { - {\starray_parsed_get_prop:n{flag-ff}} - {#5} - {\starray_parsed_get_prop:n{flag-exam}} - { - \bool_if:nTF{\starray_parsed_get_prop:n{flag-approved}} - {#3} - {#4} - } - } - { - \bool_if:nTF{\starray_parsed_get_prop:n{flag-approved}} - {#1} - {#2} - } -} - -\NewDocumentCommand{\studentReviewerCase}{mmm}{ - \starray_term_syntax:n{student.reviewer[#1]} - \bool_if:nTF {\starray_parsed_get_prop:n{flag-examreview}} - {#2} - {#3} -} - - -\NewDocumentCommand{\studentDismissCase}{mm}{ - \starray_term_syntax:n{student} - \bool_if:nTF {\starray_parsed_get_prop:n{flag-dismiss}} - {#1} - {#2} -} - -\NewDocumentCommand{\studentremark}{m}{ - \starray_gset_prop:nnn {student}{remarks}{#1} -} - - - -\NewDocumentCommand{\studentNewPageCase}{mm} - { - \starray_term_syntax:n{student} - \bool_if:nTF {\starray_parsed_get_prop:n{flag-newpage}} - {#1} - {#2} - } - -\NewDocumentCommand{\studentnewpage}{O{}}{ - \tl_if_blank:nTF {#1} - { \starray_gset_prop:nnn {student}{flag-newpage}{\c_true_bool} } - { \starray_gset_prop:nnn {student[#1]}{flag-newpage}{\c_true_bool} } -}% - - - \NewDocumentCommand{\boardtitle}{m}{%% \SetTerms{% board.title = {#1} , @@ -624,6 +584,7 @@ \seq_new:c {l__ufrgscca_#1_list_ff_seq} \seq_new:c {l__ufrgscca_#1_list_dismiss_seq} \seq_new:c {l__ufrgscca_#1_list_graded_seq} + \seq_new:c {l__ufrgscca_#1_list_other_seq} \bool_new:c {l__ufrgscca_#1_classified_bool} } @@ -650,6 +611,7 @@ \seq_gclear_new:c {l__ufrgscca_#1_list_seq} \seq_gclear_new:c {l__ufrgscca_#1_list_ff_seq} \seq_gclear_new:c {l__ufrgscca_#1_list_dismiss_seq} + \seq_gclear_new:c {l__ufrgscca_#1_list_other_seq} \seq_gclear_new:c {l__ufrgscca_#1_list_graded_seq} \bool_if_exist:cF {l__ufrgscca_#1_classified_bool} { \bool_new:c {l__ufrgscca_#1_classified_bool} } @@ -671,7 +633,10 @@ \starray_set_iter_from_hash:nn {student}{#1} \starray_term_syntax:n {student} \bool_if:nF {\starray_parsed_get_prop:n {flag-graded}} - { \__ufrgscca_studentgrade: } + { + \emptytermifnone[3]{student.reviewer}[\starray_gset_prop:nnn {student}{flag-null}{\c_true_bool}] + \__ufrgscca_studentgrade: + } } @@ -683,6 +648,7 @@ { {\starray_parsed_get_prop:n {flag-ff}}{\seq_gput_right:cn {l__ufrgscca_#1_list_ff_seq}{#2}} {\starray_parsed_get_prop:n {flag-dismiss}}{\seq_gput_right:cn {l__ufrgscca_#1_list_dismiss_seq}{#2}} + {\starray_parsed_get_prop:n {flag-other}}{\seq_gput_right:cn {l__ufrgscca_#1_list_other_seq}{#2}} } {\seq_gput_right:cn {l__ufrgscca_#1_list_graded_seq}{#2}} } @@ -697,6 +663,7 @@ \seq_gset_eq:Nc \l__ufrgscca_baselist_seq {l__ufrgscca_#2_list_seq} \seq_gset_eq:Nc \l__ufrgscca_baselist_ff_seq {l__ufrgscca_#2_list_ff_seq} \seq_gset_eq:Nc \l__ufrgscca_baselist_dismiss_seq {l__ufrgscca_#2_list_dismiss_seq} + \seq_gset_eq:Nc \l__ufrgscca_baselist_other_seq {l__ufrgscca_#2_list_other_seq} \seq_gset_eq:Nc \l__ufrgscca_baselist_graded_seq {l__ufrgscca_#2_list_graded_seq} \bool_if:NT \l__ufrgscca_attendance_bool @@ -728,13 +695,13 @@ } \bool_if:NT \l__ufrgscca_referralI_bool { - \studentDismissCase + \studentDismissOtherCase {} { \MakeForm{referral-I} } } \bool_if:NT \l__ufrgscca_revformsI_bool { - \SetReviewer{2} + \studentReviewerSelect{2} \studentReviewerSetCase{2} { \eDataSet{student.reviewer} @@ -744,7 +711,7 @@ \tl_set:Nn \ReviewerBookMarkTL {~-~2} } \MakeForm{examinersform-I} - \SetReviewer{3} + \studentReviewerSelect{3} \studentReviewerSetCase{3} { \eDataSet{student.reviewer} @@ -758,13 +725,13 @@ } \bool_if:NT \l__ufrgscca_referralII_bool { - \studentDismissCase + \studentDismissOtherCase {} { \MakeForm{referral-II} } } \bool_if:NT \l__ufrgscca_revformsII_bool { - \SetReviewer{1} + \studentReviewerSelect{1} \studentReviewerSetCase{1} { \eDataSet{student.reviewer} @@ -775,7 +742,7 @@ } \MakeForm{examinersform-II} \MakeForm{correctionsform-II} - \SetReviewer{2} + \studentReviewerSelect{2} \studentReviewerSetCase{2} { \eDataSet{student.reviewer} @@ -786,7 +753,7 @@ } \MakeForm{examinersform-II} \MakeForm{correctionsform-II} - \SetReviewer{3} + \studentReviewerSelect{3} \studentReviewerSetCase{3} { \eDataSet{student.reviewer} diff --git a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-core.sty b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-core.sty index d07c1e4670a..7a7f3602792 100644 --- a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-core.sty +++ b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-core.sty @@ -12,7 +12,7 @@ %% %% The Current Maintainer of this work is Alceu Frigeri %% -%% This is version {2.5} {2024/02/25} +%% This is version {2.6} {2024/02/29} %% %% The list of files that compose this work can be found in the README.md file at %% https://ctan.org/pkg/ufrgscca @@ -27,8 +27,8 @@ \ProvidesExplPackage {ufrgscca-core} - {2024/02/25} - {2.5} + {2024/02/29} + {2.6} {UFRGS/CCA core commands} @@ -42,8 +42,8 @@ { name .code:n = {ufrgscca-core} , prefix .code:n = {ufrgscca} , - date .code:n = {2024/02/25}, - version .code:n = {2.5} , + date .code:n = {2024/02/29}, + version .code:n = {2.6} , description .code:n = {UFRGS/CCA~core~commands/data} } \cs_if_exist:NF \PkgInfo @@ -129,6 +129,7 @@ flag-exam = \c_false_bool , flag-ff = \c_false_bool , flag-dismiss = \c_false_bool , %%% IF it was the 1st semester. + flag-other = \c_false_bool , %%% "other list", placeholder for 'none of the above' lists. flag-newpage = \c_false_bool , %% if it should go in a new page (board) flag-distinctboard = \c_false_bool , %% if advisor isn't in the board flag-approved = \c_false_bool , @@ -394,7 +395,8 @@ \NewDocumentCommand{\DataFields}{mm}{ \starray_get_prop:nn{#1}{#2} } -\NewDocumentCommand{\SetReviewer}{m}{ + +\NewDocumentCommand{\studentReviewerSelect}{m}{ \starray_set_iter:nn {student.reviewer}{#1} } % @@ -413,6 +415,10 @@ {#2} } +\NewDocumentCommand{\studentremark}{m}{ + \starray_gset_prop:nnn {student}{remarks}{#1} +} + \NewDocumentCommand{\distinctboard}{}{ \starray_gset_prop:nnn {student}{flag-distinctboard}{\c_true_bool} @@ -433,6 +439,58 @@ {#3} } + + +\NewDocumentCommand{\studentCase}{mmmmm}{ + \starray_term_syntax:n{student} + \bool_case:nF + { + {\starray_parsed_get_prop:n{flag-ff}} + {#5} + {\starray_parsed_get_prop:n{flag-exam}} + { + \bool_if:nTF{\starray_parsed_get_prop:n{flag-approved}} + {#3} + {#4} + } + } + { + \bool_if:nTF{\starray_parsed_get_prop:n{flag-approved}} + {#1} + {#2} + } +} + + +\NewDocumentCommand{\studentDismissOtherCase}{mm}{ + \starray_term_syntax:n{student} + \bool_if:nTF {\starray_parsed_get_prop:n{flag-dismiss} || \starray_parsed_get_prop:n{flag-other}} + {#1} + {#2} +} + +\NewDocumentCommand{\studentReviewerCase}{mmm}{ + \starray_term_syntax:n{student.reviewer[#1]} + \bool_if:nTF {\starray_parsed_get_prop:n{flag-examreview}} + {#2} + {#3} +} + + +\NewDocumentCommand{\studentnewpage}{O{}}{ + \tl_if_blank:nTF {#1} + { \starray_gset_prop:nnn {student}{flag-newpage}{\c_true_bool} } + { \starray_gset_prop:nnn {student[#1]}{flag-newpage}{\c_true_bool} } +}% + +\NewDocumentCommand{\studentNewPageCase}{mm} + { + \starray_term_syntax:n{student} + \bool_if:nTF {\starray_parsed_get_prop:n{flag-newpage}} + {#1} + {#2} + } + \NewDocumentCommand{\studentiterate}{m}{ \starray_iterate_over:nn{student}{#1} } diff --git a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-cover.sty b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-cover.sty index 977fa2917f9..0231265c6e7 100644 --- a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-cover.sty +++ b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-cover.sty @@ -12,7 +12,7 @@ %% %% The Current Maintainer of this work is Alceu Frigeri %% -%% This is version {2.5} {2024/02/25} +%% This is version {2.6} {2024/02/29} %% %% The list of files that compose this work can be found in the README.md file at %% https://ctan.org/pkg/ufrgscca @@ -27,8 +27,8 @@ \ProvidesExplPackage {ufrgscca-cover} - {2024/02/25} - {2.5} + {2024/02/29} + {2.6} {UFRGS/CCA cover commands} @@ -42,8 +42,8 @@ { name .code:n = {ufrgscca-cover} , prefix .code:n = {ufrgscca} , - date .code:n = {2024/02/25}, - version .code:n = {2.5} , + date .code:n = {2024/02/29}, + version .code:n = {2.6} , description .code:n = {UFRGS/CCA~ cover~pages} } \cs_if_exist:NF \PkgInfo diff --git a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-curr.sty b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-curr.sty index 752ecfb7400..afcdb1aabe2 100644 --- a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-curr.sty +++ b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-curr.sty @@ -12,7 +12,7 @@ %% %% The Current Maintainer of this work is Alceu Frigeri %% -%% This is version {2.5} {2024/02/25} +%% This is version {2.6} {2024/02/29} %% %% The list of files that compose this work can be found in the README.md file at %% https://ctan.org/pkg/ufrgscca @@ -27,8 +27,8 @@ \ProvidesExplPackage {ufrgscca-curr} - {2024/02/25} - {2.5} + {2024/02/29} + {2.6} {UFRGS/CCA curricula commands} %%%%%%% @@ -41,8 +41,8 @@ { name .code:n = {ufrgscca-curr} , prefix .code:n = {ufrgscca} , - date .code:n = {2024/02/25}, - version .code:n = {2.5} , + date .code:n = {2024/02/29}, + version .code:n = {2.6} , description .code:n = {UFRGS/CCA~ curricula~ commands} } \cs_if_exist:NF \PkgInfo diff --git a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-forms.sty b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-forms.sty index a20c73dd50c..7d7916ba0f0 100644 --- a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-forms.sty +++ b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-forms.sty @@ -12,7 +12,7 @@ %% %% The Current Maintainer of this work is Alceu Frigeri %% -%% This is version {2.5} {2024/02/25} +%% This is version {2.6} {2024/02/29} %% %% The list of files that compose this work can be found in the README.md file at %% https://ctan.org/pkg/ufrgscca @@ -27,8 +27,8 @@ \ProvidesExplPackage {ufrgscca-forms} - {2024/02/25} - {2.5} + {2024/02/29} + {2.6} {UFRGS/CCA forms commands} @@ -42,8 +42,8 @@ { name .code:n = {ufrgscca-forms} , prefix .code:n = {ufrgscca} , - date .code:n = {2024/02/25}, - version .code:n = {2.5} , + date .code:n = {2024/02/29}, + version .code:n = {2.6} , description .code:n = {UFRGS/CCA~ forms~commands} } \cs_if_exist:NF \PkgInfo @@ -114,12 +114,12 @@ receipts-II.code = { \bool_if:nTF \l__ufrgscca_emptyforms_bool { - \SetReviewer{1} + \studentReviewerSelect{1} \tl_set:Nn \ReviewerBookMarkTL {} \MakeForm{receipts-II} } { - \SetReviewer{1} + \studentReviewerSelect{1} \studentReviewerSetCase{1} { \eDataSet{student.reviewer} @@ -135,12 +135,12 @@ examinersforms-I.code = { \bool_if:nTF \l__ufrgscca_emptyforms_bool { - \SetReviewer{1} + \studentReviewerSelect{1} \tl_set:Nn \ReviewerBookMarkTL {} \MakeForm{examinersform-I} } { - \SetReviewer{2} + \studentReviewerSelect{2} \studentReviewerSetCase{2} { \eDataSet{student.reviewer} @@ -150,7 +150,7 @@ \tl_set:Nn \ReviewerBookMarkTL {~-~2} } \MakeForm{examinersform-I} - \SetReviewer{3} + \studentReviewerSelect{3} \studentReviewerSetCase{3} { \eDataSet{student.reviewer} @@ -166,14 +166,14 @@ examinersforms-II.code = { \bool_if:nTF \l__ufrgscca_emptyforms_bool { - \SetReviewer{1} + \studentReviewerSelect{1} \tl_set:Nn \ReviewerBookMarkTL {} \MakeForm{receipts-II} \MakeForm{examinersform-II} \MakeForm{correctionsform-II} } { - \SetReviewer{1} + \studentReviewerSelect{1} \studentReviewerSetCase{1} { \eDataSet{student.reviewer} @@ -185,7 +185,7 @@ \MakeForm{receipts-II} \MakeForm{examinersform-II} \MakeForm{correctionsform-II} - \SetReviewer{2} + \studentReviewerSelect{2} \studentReviewerSetCase{2} { \eDataSet{student.reviewer} @@ -197,7 +197,7 @@ \MakeForm{receipts-II} \MakeForm{examinersform-II} \MakeForm{correctionsform-II} - \SetReviewer{3} + \studentReviewerSelect{3} \studentReviewerSetCase{3} { \eDataSet{student.reviewer} @@ -292,7 +292,9 @@ % \prop_get:NnNT \l__ufrgscca_forms_prop {#1.opening} \l_tmpa_tl { - \vfill + \prop_get:NnNTF \l__ufrgscca_forms_prop {#1.preopening} \l_tmpb_tl + {\l_tmpb_tl} + {\vfill} \l_tmpa_tl } \prop_get:NnNT \l__ufrgscca_forms_prop {#1.body} \l_tmpa_tl diff --git a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-lists.sty b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-lists.sty index d09a23de34a..600d25e9203 100644 --- a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-lists.sty +++ b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-lists.sty @@ -12,7 +12,7 @@ %% %% The Current Maintainer of this work is Alceu Frigeri %% -%% This is version {2.5} {2024/02/25} +%% This is version {2.6} {2024/02/29} %% %% The list of files that compose this work can be found in the README.md file at %% https://ctan.org/pkg/ufrgscca @@ -27,8 +27,8 @@ \ProvidesExplPackage {ufrgscca-lists} - {2024/02/25} - {2.5} + {2024/02/29} + {2.6} {UFRGS/CCA auxiliary lists commands} @@ -42,8 +42,8 @@ { name .code:n = {ufrgscca-lists} , prefix .code:n = {ufrgscca} , - date .code:n = {2024/02/25} , - version .code:n = {2.5} , + date .code:n = {2024/02/29} , + version .code:n = {2.6} , description .code:n = {UFRGS/CCA~Auxiliary~ lists~ commands} } \cs_if_exist:NF \PkgInfo diff --git a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-ppc.sty b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-ppc.sty index e5ced4a3314..eb8b23dcb0b 100644 --- a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-ppc.sty +++ b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca-ppc.sty @@ -12,7 +12,7 @@ %% %% The Current Maintainer of this work is Alceu Frigeri %% -%% This is version {2.5} {2024/02/25} +%% This is version {2.6} {2024/02/29} %% %% The list of files that compose this work can be found in the README.md file at %% https://ctan.org/pkg/ufrgscca @@ -27,8 +27,8 @@ \ProvidesExplPackage {ufrgscca-ppc} - {2024/02/25} - {2.5} + {2024/02/29} + {2.6} {UFRGS/CCA PPC commands} %%%%%%% @@ -41,8 +41,8 @@ { name .code:n = {ufrgscca-ppc} , prefix .code:n = {ufrgscca} , - date .code:n = {2024/02/25}, - version .code:n = {2.5} , + date .code:n = {2024/02/29}, + version .code:n = {2.6} , description .code:n = {UFRGS/CCA~ auxiliary~ PPC-related~ (indicators)~ commands} } \cs_if_exist:NF \PkgInfo diff --git a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca.cls b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca.cls index 3b57ee521c5..5a5af3cbbea 100644 --- a/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca.cls +++ b/Master/texmf-dist/tex/latex/ufrgscca/ufrgscca.cls @@ -12,7 +12,7 @@ %% %% The Current Maintainer of this work is Alceu Frigeri %% -%% This is version {2.5} {2024/02/25} +%% This is version {2.6} {2024/02/29} %% %% The list of files that compose this work can be found in the README.md file at %% https://ctan.org/pkg/ufrgscca @@ -27,8 +27,8 @@ \ProvidesExplClass {ufrgscca} - {2024/02/25} - {2.5} + {2024/02/29} + {2.6} {UFRGS/CCA class} @@ -42,8 +42,8 @@ { name .code:n = {ufrgscca} , prefix .code:n = {ufrgscca} , - date .code:n = {2024/02/25}, - version .code:n = {2.5} , + date .code:n = {2024/02/29}, + version .code:n = {2.6} , description .code:n = {UFRGS/CCA~a~report~based~class~bundle} } \cs_if_exist:NF \PkgInfo |