diff --git a/web/cgi-bin/horas/kalendar.pl b/web/cgi-bin/horas/kalendar.pl
index 0a87fafc78..9651deaf0c 100755
--- a/web/cgi-bin/horas/kalendar.pl
+++ b/web/cgi-bin/horas/kalendar.pl
@@ -129,6 +129,7 @@ package main;
use constant DAYNAMES => qw/Dom. F.II F.III F.IV F.V F.VI Sabb./;
# output html table with entries
+
sub kalendar_table {
my ($kyear, $kmonth, $mode) = @_;
my $background = (our $whitebground) ? ' class="contrastbg"' : '';
@@ -141,8 +142,11 @@ sub kalendar_table {
$output .= "
C.E. | D.L. | | Dies | |
\n";
$cols = 5 + $compare;
} else {
- $output .= "Dies | de Tempore | Sanctorum | d.h. |
\n";
- $cols = 4;
+ $output .= "Dies | de Tempore | Sanctorum | Vespera | d.h. |
\n";
+ $cols = 5;
+
+ # $output .= "Dies | de Tempore | Sanctorum | d.h. |
\n";
+ # $cols = 4;
}
my $to = (MONTHLENGTH)[$kmonth];
@@ -172,10 +176,10 @@ sub kalendar_table {
}
}
- $output .=
- ''
- . join('', map { '$_ | " } table_row($date1, $cday))
- . "
\n";
+ $output .= ''
+ . join('',
+ map { '$_ | " } table_row($date1, $cday),
+ ) . "
\n";
}
$output .= note('nigra19') if $mode eq 'kal';
$output =~ s/{(.+?)}/ setfont('maroon', $1) /ge;
diff --git a/web/cgi-bin/horas/kalendar/kal.pl b/web/cgi-bin/horas/kalendar/kal.pl
index 25497ba469..3556f54653 100644
--- a/web/cgi-bin/horas/kalendar/kal.pl
+++ b/web/cgi-bin/horas/kalendar/kal.pl
@@ -99,7 +99,10 @@ sub findkalentry {
$rankname =~ s/IV. classis/Memoria/ if $ver =~ /Monastic|Ordo Praedicatorum/;
(
- setfont(liturgical_color($srank[0]), $rank > 4 ? latin_uppercase($srank[0]) : $srank[0]),
+ setfont(
+ liturgical_color($srank[0]),
+ $rank > 4 && $srank[0] !~ /octava|vigilia/i ? latin_uppercase($srank[0]) : $srank[0],
+ ),
setfont('1 maroon', ' ' . $rankname),
);
}
diff --git a/web/cgi-bin/horas/kalendar/ordo.pl b/web/cgi-bin/horas/kalendar/ordo.pl
index 0d4c04746e..9d69aacd4a 100644
--- a/web/cgi-bin/horas/kalendar/ordo.pl
+++ b/web/cgi-bin/horas/kalendar/ordo.pl
@@ -6,7 +6,7 @@ sub ordo_entry {
my ($date, $ver, $compare, $winneronly) = @_;
our $version = $ver;
- our ($day, $month, $year, $dayname, %scriptura, %commemoratio);
+ our ($day, $month, $year, $dayname, %scriptura, @commemoentries);
precedence($date);
@@ -25,6 +25,15 @@ sub ordo_entry {
$c2 = setfont($smallblack, "$h1:") if $h1;
$c2 .= "" . setfont(liturgical_color($h2), " $h2") . "" if $h2;
+ if ($c2 && @commemoentries > 1) {
+ for my $ind (1 .. @commemoentries - 1) {
+ my %com = %{setupstring('Latin', "$commemoentries[$ind].txt")};
+ my $comname = $com{Rank};
+ $comname =~ s/\;\;.*//;
+ $c2 .= " & " . setfont(liturgical_color($comname), " $comname") . "" if $comname;
+ }
+ }
+
$c2 =~ s/Hebdomadam/Hebd/i;
$c2 =~ s/Quadragesima/Quadr/i;
@@ -54,17 +63,19 @@ sub ordo_entry {
$c2 .= setfont($smallblack, ' m.t.v.');
}
- if ( $version !~ /196/
- && $winner =~ /Sancti/
- && exists($winner{Lectio1})
- && $winner{Lectio1} !~ /\@Commune/i
- && $winner{Lectio1} !~ /\!(Matt|Marc|Luc|Joannes)\s+[0-9]+\:[0-9]+\-[0-9]+/i)
- {
- $c2 .= setfont($smallfont, " *L1*");
- }
+ our $hora;
+ my $temphora = $hora;
+ $hora = 'Vespera';
+ precedence($date);
+ $hora = $temphora;
+ my $cv = $dayname[2];
+ $cv =~ s/.*?(Vespera|A capitulo|$)/$1/;
- $c2 ||= '_' if $compare;
- ($c1, $c2);
+ if ($compare) {
+ $c2 ||= '_';
+ $cv ||= '_';
+ }
+ return ($c1, $c2, $cv);
}
# prepare row
@@ -73,14 +84,20 @@ sub table_row {
our ($version1, $compare, $version2, $dayofweek);
my $d = substr($date, 3, 2) + 0;
- my ($c1, $c2) = ordo_entry($date, $version1, $compare);
+ my ($c1, $c2, $cv) = ordo_entry($date, $version1, $compare);
if ($compare) {
- my ($c21, $c22) = ordo_entry($date, $version2, $compare);
+ my ($c21, $c22, $cv2) = ordo_entry($date, $version2, $compare);
$c1 .= "
$c21";
$c2 .= "
$c22";
+ $cv .= "
$cv2";
}
- (qq($d), $c1, $c2, @{[(DAYNAMES)[$dayofweek]]});
+ (
+ qq($d),
+ $c1, $c2,
+ qq($cv),
+ @{[(DAYNAMES)[$dayofweek]]},
+ );
}
# html_header_ordo