Skip to content

Commit

Permalink
Merge pull request DivinumOfficium#3461 from FAJ-Munich/master
Browse files Browse the repository at this point in the history
Various bug fixes
  • Loading branch information
APMarcello3 authored Dec 6, 2023
2 parents 1b8f3d2 + 049c834 commit 845717a
Show file tree
Hide file tree
Showing 51 changed files with 187 additions and 861 deletions.
55 changes: 34 additions & 21 deletions web/cgi-bin/horas/horascommon.pl
Original file line number Diff line number Diff line change
Expand Up @@ -267,8 +267,7 @@ sub occurrence {
if ($dayname[0] !~ /(Adv|Quad[0-6]|Quadp3)/i && $testmode !~ /^season$/i && $BMVSabbato
&& $srank !~ /(Vigil|in Octav)/i && $trank[2] < 2 && $srank[2] < 2 && !$transfervigil) {
unless($tomorrow) {
$scriptura = $tname;
if ($scriptura =~ /^\.txt/i) { $scriptura = $sname; }
$scriptura = $tname =~ /Epi0/i ? $sname : $tname;
}
$tempora{Rank} = $trank = "Sanctæ Mariæ Sabbato;;Feria;;1.2;;vide $C10";
$tname = subdirname('Commune', $version) . "$C10.txt";
Expand All @@ -278,9 +277,14 @@ sub occurrence {

if ($version =~ /Trid/i && (($trank[2] < 5.1 && $trank[2] > 4.2 && $trank[0] =~ /Dominica/i) || $trank[0] =~ /infra octavam Corp/i)) { $trank[2] = 2.9; } # before Divino: Dominica minor and infra 8vam CC is outranked by any Duplex
elsif ($version =~ /divino/i && ($trank[2] < 5.1 && $trank[0] =~ /Dominica/i)) { $trank[2] = 4.9; }

elsif ($version =~ /196/ && $tname =~ /Nat1/i && $day > 28) { # commemoration of the Christmas Octave according to the rubrics
$sname = subdirname('Tempora', $version) . "Nat$day";
%saint = %{setupstring('Latin', $sname)};
$srank = $saint{Rank};
@srank = split(";;", $srank);
}
if ($tname =~/Epi1\-0/i && $srank[2] == 5.6) { $srank[2] = 2.9; } # Ensure that the infra Octavam Epi does not outrank the Sunday infra Octavam or the Feast of the Holy Family
if ($testmode =~ /seasonal/i && $version =~ /1960|Newcal/ && $srank[2] < 5 && $dayname[0] =~ /Adv/i) { $srank[2] = 1; }
if ($testmode =~ /seasonal/i && $version =~ /196/ && $srank[2] < 5 && $dayname[0] =~ /Adv/i) { $srank[2] = 1; }

# Sort out occurrence between the sanctoral and temporal cycles.
# Dispose of some cases in which the office can't be sanctoral:
Expand Down Expand Up @@ -336,7 +340,7 @@ sub occurrence {
$commemoratio = 'Sancti/01-06.txt';
$comrank = 5.6;
}
elsif(($srank[2] < 7 && $sname !~ /01-01/) && $trank[2] > 2 && !($srank[0] =~ /Sangu/i && $trank[0] =~ /Cord/i)) { # incl. github #2950
elsif(($srank[2] < 7 && $sname !~ /01-01/) && $trank[2] >= ($srank[2] >= 5 ? 2.1 : 2) && !($srank[0] =~ /Sangu/i && $trank[0] =~ /Cord/i)) { # incl. github #2950
unshift(@commemoentries, $tname);
$commemoratio = $tname;
$comrank = $trank[2];
Expand All @@ -351,7 +355,7 @@ sub occurrence {
$cvespera = $svesp;
$officename[2] = "Commemoratio: $cr[0]";
if ($version =~ /196/i) {
$officename[2] =~ s/:/ ad Laudes tantum:/ if $srank[2] >= 5 && $cr[2] < 2;
$officename[2] =~ s/:/ ad Laudes tantum:/ if $cr[2] < 6;
} elsif ($version !~ /trident/i && $srank[2] >= 6) {
$officename[2] =~ s/:/ ad Laudes tantum:/ if $cr[2] < 4.2 && $cr[2] != 2.1 && $srank[0] !~ /infra octavam/i;
}else {
Expand All @@ -378,7 +382,7 @@ sub occurrence {
if (!$officename[2] && ($saint{'Commemoratio 2'} || $saint{'Commemoratio'})) {
($_) = split(/\n/, $saint{'Commemoratio 2'} || $saint{'Commemoratio'});
$officename[2] = "Commemoratio: $_" if (s/^!Commemoratio //);
$officename[2] =~ s/:/ ad Laudes tantum:/ if $srank[2] >= 5 && $saint{'Commemoratio 2'};
$officename[2] =~ s/:/ ad Laudes tantum:/ if ($srank[2] >= 5 && $saint{'Commemoratio 2'} || $version =~ /196/);
}

if (($hora =~ /matutinum/i || (!$officename[2] && $hora !~ /Vespera|Completorium/i)) && $rank < 7 && $trank[0]) {
Expand Down Expand Up @@ -457,14 +461,14 @@ sub occurrence {
$officename[2] = "$comm: $srank[0]";

if ($version =~ /196/i) {
$officename[2] =~ s/:/ ad Laudes tantum:/ if $trank[2] >= 5 && $srank[2] < 2;
$officename[2] =~ s/:/ ad Laudes tantum:/ if ($trank[2] >= 5 && $srank[2] < 2) || ($climit1960 == 2);
} elsif ($version !~ /trident/i && $trank[2] >= 6) {
$officename[2] =~ s/:/ ad Laudes tantum:/ if $srank[2] < 4.2 && $srank[2] != 2.1 && $trank[0] !~ /infra octavam|cinerum|majoris hebd/i && $tname !~ /Adv|Quad/i;
}else {
$officename[2] =~ s/:/ ad Laudes \& Matutinum:/ if $trank[2] >= 5 && $srank[2] < 2 && $trank[0] !~ /infra octavam|cinerum|majoris hebd/i && $tname !~ /Adv|Quad/i;
}

if ($version =~ /196/i && $dayname[2] =~ /Januarii/i) { $dayname[2] = ''; }
if ($version =~ /196/i && $officename[2] =~ /Januarii/i) { $officename[2] = ''; }
} elsif (my $transferedC = $commemoentries[0]
&& $tempora{Rule} !~ /omit.*? commemoratio/i
&& ($tempora{Rule} !~ /No commemoratio/i)) {
Expand Down Expand Up @@ -532,7 +536,7 @@ sub concurrence {
our(@trank, @srank, @ctrank, @csrank, @commemoentries, @ccommemoentries);
our(%tempora, %saint, %ctempora, %csaint);
our($antecapitulum, $antecapitulum2);
our($vespera, $cvespera);
our($vespera, $cvespera, $octvespera);
our($tvesp, $svesp, $dayofweek);
our($C10);
our(%winner);
Expand Down Expand Up @@ -578,9 +582,17 @@ sub concurrence {
# after Divino Afflatu, the Sundays from Septuag to Judica gave way at 2nd Vespers in concurrence to a Duplex II. cl.
$rank = $wrank[2] = 4.9;
}

if ($cwrank[0] =~ /Dominica/i && $cwrank[0] !~ /infra octavam/i && $version !~ /1955|196/) {
$cwrank[2] = $crank = $version =~ /trident/i ? 2.9 : 4.9;
}

if ($cwrank[0] =~ /in.*octava/i && $wrank[0] =~ /Dominica/i && $version =~ /divino/i) {
$octvespera = 1; # Commemoration of resumed Octave on Sunday from 1st Vespers (Divino only)
} elsif ($cwrank[0] =~ /Dominica/i && $trank[0] =~ /in.*octava/i) {
$octvespera = 3; # Commemoration of Octave on Saturday from 2nd Vespers
}

if ($ctrank[0] =~ /Dominica/i && !($version =~ /19(?:55|6)/ && $ctrank[0] =~ /Dominica Resurrectionis/i)) {
# if tomorrow is a Sunday, get rid of today's tempora completely; necessary Commemorations are handled in the Sunday database file
if($sanctoraloffice && $srank[0] !~ /infra octavam Nat/i) {
Expand All @@ -601,7 +613,7 @@ sub concurrence {
|| ($version =~ /1955/ && $cwrank[2] < 5) # Reduced 1955: No 1st Vespers except for Duplex I. cl & II. cl & Dominica
|| ($version =~ /196/i && $cwrank[2] < (($cwrank[0] =~ /Dominica/i || ($cwinner{Rule} =~ /Festum Domini/i && $dayofweek == 6)) ? 5 : 6)) # In 1960, II. cl. feasts have I. Vespers if and only if they're feasts of the Lord on a Sunday.
|| ($cwinner{Rank} =~ /Feria|Sabbato|Vigilia|Quat[t]*uor/i && $cwinner{Rank} !~ /in Vigilia Epi|in octava|infra octavam|Dominica|C10/i) # no Ferias, Vigils and infra Oct days
|| ($cwinner{Rank} =~ /infra octavam/i && $cwinner{Rank} !~ /Dominica/i && ($version =~ /trident/i || $sanctoraloffice == $csanctoraloffice)) # before DA infra octavam always gets commemorated as at 2nd Vespers; after DA also when the office of the octave
|| ($cwinner{Rank} =~ /infra octavam/i && $cwinner{Rank} !~ /Dominica/i && ($version =~ /trident/i || $sanctoraloffice == $csanctoraloffice)) # before DA infra octavam always gets commemorated as at 2nd Vespers; after DA also when the office is of the octave
|| ($weekname =~ /Pasc[07]/i && $cwinner{Rank} !~ /Dominica/i) # infra 8vam Pasch & Pent
|| ($winner =~ /01-01/ && $version !~ /trident/i) # no commemoration of the Octave of S. Stephen after DA
|| ($cwinner{Rank} =~ /C10/i && $winner{Rank} =~ /C1[01]/i) # sort out BVM concurrent with BMV
Expand All @@ -617,9 +629,9 @@ sub concurrence {
$cwinner = '';
$crank = 0;
$cvespera = 0;
} elsif ($csanctoraloffice && $cwrank[0] !~ /infra octavam Epi/i || $cwinner =~ /Nat2-0/i) {
} elsif (($csanctoraloffice && $cwrank[0] !~ /infra octavam Epi/i || $cwinner =~ /Nat2-0/i) && $version !~ /1955|196/) {
$vespera = 3;
$dayname[2] = "<br>Vespera de Officium occurente; nihil de sequenti";
$dayname[2] .= "<br>Vespera de Officium occurente; nihil de sequenti";
$cwrank = '';
$csname = '';
%cwinner = undef;
Expand All @@ -630,7 +642,8 @@ sub concurrence {
@ccommemoentries = ();
} else {
$vespera = 3;
$dayname[2] = "<br>Vespera de Officium occurente ";
$dayname[2] = '' unless $dayname[2] =~ /Dominica|Advent|Quadr|Pass/i;
$dayname[2] .= "<br>Vespera de Officium occurente " unless $version =~ /1955|196/;
$cwrank = '';
$ctname = '';
%cwinner = undef;
Expand All @@ -654,7 +667,7 @@ sub concurrence {
$rank = $crank;
$commune = $ccommune;
$communetype = $ccommunetype;
$dayname[2] .= "<br>Vespera de sequenti; nihil de præcedenti (tempora)";
$dayname[2] .= "<br>Vespera de sequenti; nihil de præcedenti (tempora) ";
$cwinner = '';
%cwinner = undef;
@cwrank = undef;
Expand Down Expand Up @@ -691,15 +704,15 @@ sub concurrence {
$cvespera = 0;
@ccommemoentries = ();
$ccomrank = 0;
} elsif ($rank < 2 # no 2nd Vespers of a Simplex
} elsif ($rank < 2 # no 2nd Vespers of a Simplex
|| ($version =~ /196/ && $cwinner{Rank} =~ /Dominica/i && $rank < 5) # on any Sunday, nothing of a preceding III. cl feast
|| ($crank >= 6 && !($rank == 2.1 || $rank == 2.99 || $rank >= 4.2 ) && $cwrank[0] !~ /Dominica|feria|in.*octava/i) # in 1st Vespers of Duplex I. cl. only commemoration of Feria major, Dominica (major), 8va privilegiata and Duplex II./I. cl
|| ($crank >= 6 && !($rank == 2.1 || $rank == 2.99 || $rank == 3.9 || $rank >= 4.2 ) && $cwrank[0] !~ /Dominica|feria|in.*octava/i) # in 1st Vespers of Duplex I. cl. only commemoration of Feria major, Dominica (major), 8va privilegiata and Duplex II./I. cl
|| ($cwinner =~ /12-25|01-01/) # on Christmas Eve and New Year's Eve, nothing of a preceding Sunday
|| ($crank >= 5 && !($rank == 2.1 || $rank >= 2.99) && $cwrank[0] !~ /Dominica|feria|in.*octava/i)) { # in 1st Vespers of Duplex II. cl. also commemoration of any Duplex
@dayname = @tomorrowname;
$vespera = 1;
$cvespera = 3;
if ($comrank == 2.1 || $comrank == 2.99) { # privilidged Feria, Dominica, or infra 8vam
if ($comrank == 2.1 || $comrank == 2.99 || $comrank == 3.9) { # privilidged Feria, Dominica, or infra 8vam
$dayname[2] .= "<br>Vespera de sequenti; commemoratio de off. priv. tantum";
} else {
$dayname[2] .= "<br>Vespera de sequenti; nihil de præcedenti";
Expand Down Expand Up @@ -818,7 +831,7 @@ sub concurrence {
%cstr = %{officestring('Latin', $commemo, 0)};
if (%cstr) {
my @cr = split(";;", $cstr{Rank});
unless (($cr[2] < $ranklimit && !($cr[2] == 2.1 || $cr[2] == 2.99)) || $cstr{Rule} =~ /No secunda vespera/i) { push(@comentries, $commemo); } # sort out Simplex
unless (($cr[2] < $ranklimit && !($cr[2] == 2.1 || $cr[2] == 2.99 || $cr[2] == 3.9)) || $cstr{Rule} =~ /No secunda vespera/i) { push(@comentries, $commemo); } # sort out Simplex
}
}
@commemoentries = @comentries;
Expand All @@ -834,7 +847,7 @@ sub concurrence {
%cstr = %{officestring('Latin', $commemo, 0)};
if (%cstr) {
my @cr = split(";;", $cstr{Rank});
unless (($cr[2] < $ranklimit && !($cr[2] == 2.1 || $cr[2] == 2.99)) || $cstr{Rule} =~ /No secunda vespera/i) { push(@comentries, $commemo); } # sort out (Semi-)duplex and infra 8vam communis except for Feria major / Dominica major
unless (($cr[2] < $ranklimit && !($cr[2] == 2.1 || $cr[2] == 2.99 || $cr[2] == 3.9)) || $cstr{Rule} =~ /No secunda vespera/i || $cr[0] =~ /De VII di/i) { push(@comentries, $commemo); } # sort out (Semi-)duplex and infra 8vam communis except for Feria major / Dominica major
}
}
@commemoentries = @comentries;
Expand Down Expand Up @@ -1121,7 +1134,7 @@ sub precedence {
if ($scriptura) {
%scriptura = %{officestring($lang1, $scriptura)};
if (!$dayname[2]) {
$dayname[2] = "Scriptura: $scriptura{Rank}";
$dayname[2] = "Scriptura: $scriptura{Rank} $scriptura";
$dayname[2] =~ s/;;.*//s;

}
Expand Down
78 changes: 63 additions & 15 deletions web/cgi-bin/horas/specials.pl
Original file line number Diff line number Diff line change
Expand Up @@ -1196,6 +1196,16 @@ sub oratio {
if ($w) { setbuild2("Oratio Dominica"); }
}

if($w =~ /N\. /) {
my $name;
if (exists($w{Name})) {
$name = $w{Name};
} elsif (my ($plural, $class, $pname) = papal_rule($w{Rule})) {
$name = $pname;
}
if($name) { $w = replaceNdot($w, $lang, $name); }
}

#* deletes added commemoratio unless in laudes and vespers
$comm_regex_str = "!(" . &translate('Commemoratio', $lang) . "|Commemoratio)";

Expand Down Expand Up @@ -1251,6 +1261,9 @@ sub oratio {
our %cc = ();
our $ccind = 0;
our $octavcount = 0;
my $octavestring = '!.*?(O[ckt]ta|' . &translate("Octava", $lang) . ')';
my $sundaystring = 'Dominic[aæ]|' . &translate("Dominica", $lang);

if($hora =~ /laudes|vespera/i && $rank < 7) {
our $cwinner;
our @commemoentries;
Expand All @@ -1266,11 +1279,22 @@ sub oratio {
|| ($version =~ /196/ && $winner{Rule} =~ /nocomm1960/i)) {
if (exists($w{"Commemoratio $vespera"})) {
$c = getrefs($w{"Commemoratio $vespera"}, $lang, $vespera, $w{Rule});
} elsif (exists($w{Commemoratio}) && $vespera != 3) {
} elsif (exists($w{Commemoratio}) && ($vespera != 3 || $winner =~ /Tempora/i || $w{Commemoratio} =~ /!.*O[ckt]ta/i)) {
$c = getrefs($w{Commemoratio}, $lang, $vespera, $w{Rule});
} else {
$c = undef;
}

if($c && $octvespera && $c =~ /$octavestring/i ) {
setbuild2("Substitute Commemoratio of Octave to $octvespera");
if (exists($w{"Commemoratio $octvespera"})) {
$c = getrefs($w{"Commemoratio $octvespera"}, $lang, $octvespera, $w{Rule});
} elsif (exists($w{"Commemoratio " . 4-$octvespera})) {
$c = getrefs($w{"Commemoratio " . 4-$octvespera}, $lang, $octvespera, $w{Rule});
} elsif (exists($w{Commemoratio})) {
$c = getrefs($w{Commemoratio}, $lang, $octvespera, $w{Rule});
}
}

if ($dayofweek == 6 && $hora =~ /laudes/i && exists($w{'Commemoratio Sabbat'}) && $version !~ /1960/) {
$c = getrefs($w{'Commemoratio Sabbat'}, $lang, 2, $w{Rule});
Expand All @@ -1285,13 +1309,13 @@ sub oratio {

foreach my $ic (@ic) {
if (!$ic || $ic =~ /^\s*$/
|| ($ic =~ /!.*?(O[ckt]ta|Dominica)/i && nooctnat())
|| ($ic =~ /$octavestring|!.*?$sundaystring/i && nooctnat())
|| ($version =~ /19(?:55|6)/ && $ic =~ /!.*?Vigil/i && $winner =~ /Sancti/i && $winner !~ /08\-14|06\-23|06\-28|08\-09/)) {
next;
}
if ($ic !~ /^!/) { $ic = "!$ic"; }
$ccind++;
$key = ($ic =~ /Dominic[aæ]/i) ? ($version !~ /trident/i ? 3000 : 7100) : $ccind + 9900; # Sundays are all privilegde commemorations under DA
$key = ($ic =~ /$sundaystring/i) ? ($version !~ /trident/i ? 3000 : 7100) : $ccind + 9900; # Sundays are all privilegde commemorations under DA
$cc{$key} = $ic;
setbuild2("Commemorated: $key");
}
Expand All @@ -1310,7 +1334,7 @@ sub oratio {
if($c) {
my @cr = split(";;", $c{Rank});
if ($version =~ /trident/i && $version !~ /1906/) {
$key = ($cr[0] =~ /Vigilia Epi|Dominica/i) ? 2900 : $cr[2] * 1000;
$key = ($cr[0] =~ /Vigilia Epi|$sundaystring/i) ? 2900 : $cr[2] * 1000;
} else {
$key = 9000; # concurrent office comes first under DA and also 1906
}
Expand All @@ -1326,11 +1350,22 @@ sub oratio {
|| ($version =~ /196/ && $c{Rule} =~ /nocomm1960/i)) {
if (exists($c{"Commemoratio $cvespera"})) {
$c = getrefs($c{"Commemoratio $cvespera"}, $lang, $cvespera, $c{Rule});
} elsif (exists($c{Commemoratio}) && $cvespera == 1 ) {
$c = getrefs($c{Commemoratio}, $lang, 1, $c{Rule});
} elsif (exists($c{Commemoratio}) && ($cvespera != 3 || $cwinner =~ /Tempora/i || $c{Commemoratio} =~ /!.*O[ckt]ta/i)) {
$c = getrefs($c{Commemoratio}, $lang, $cvespera, $c{Rule});
} else {
$c = undef;
}

if($c && $octvespera && $c =~ /$octavestring/i ) {
setbuild2("Substitute Commemoratio of Octave to $octvespera");
if (exists($c{"Commemoratio $octvespera"})) {
$c = getrefs($c{"Commemoratio $octvespera"}, $lang, $octvespera, $c{Rule});
} elsif (exists($c{"Commemoratio " . 4-$octvespera})) {
$c = getrefs($c{"Commemoratio " . 4-$octvespera}, $lang, $octvespera, $c{Rule});
} elsif (exists($c{Commemoratio})) {
$c = getrefs($c{Commemoratio}, $lang, $octvespera, $c{Rule});
}
}

my $redn = setfont($largefont, 'N.');
$c =~ s/ N\. / $redn /g;
Expand All @@ -1341,12 +1376,12 @@ sub oratio {

foreach my $ic (@ic) {
if (!$ic || $ic =~ /^\s*$/
|| ($ic =~ /!.*?(O[ckt]ta|Dominica)/i && nooctnat())
|| ($ic =~ /$octavestring|!.*?$sundaystring/i && nooctnat())
|| ($version =~ /19(?:55|6)/ && $ic =~ /!.*?Vigil/i && $cwinner =~ /Sancti/i && $cwinner !~ /08\-14|06\-23|06\-28|08\-09/)) { next;
}
if ($ic !~ /^!/) { $ic = "!$ic"; }
$ccind++;
$key = ($ic =~ /Dominic[aæ]/i) ? ($version !~ /trident/i ? 3000 : 7100) : $ccind + 9900; # Sundays are all privilegde commemorations under DA
$key = ($ic =~ /$sundaystring/i) ? ($version !~ /trident/i ? 3000 : 7100) : $ccind + 9900; # Sundays are all privilegde commemorations under DA
$cc{$key} = $ic;
setbuild2("Commemorated: $key");
}
Expand All @@ -1370,7 +1405,7 @@ sub oratio {
if($c) {

my @cr = split(";;", $c{Rank});
if ($cr[0] =~ /Vigilia Epi|Dominica/i) {
if ($cr[0] =~ /Vigilia Epi|$sundaystring/i) {
$key = ($version !~ /trident/i || ($version =~ /1906/ && $cr[2] > 5)) ? 7000 : 2900; # under DA, all Sundays, in 1906, priviliged Sundays, are all privilegded commemorations
} else {
$key = $cr[2] * 1000; # rank depending on the type of commemoration to be made
Expand All @@ -1392,7 +1427,18 @@ sub oratio {
} else {
$c = undef;
}


if($c && $octvespera && $c =~ /$octavestring/ ) {
setbuild2("Substitute Commemoratio of Octave to $octvespera");
if (exists($c{"Commemoratio $octvespera"})) {
$c = getrefs($c{"Commemoratio $octvespera"}, $lang, $octvespera, $c{Rule});
} elsif (exists($c{"Commemoratio " . 4-$octvespera})) {
$c = getrefs($c{"Commemoratio " . 4-$octvespera}, $lang, $octvespera, $c{Rule});
} elsif (exists($c{Commemoratio})) {
$c = getrefs($c{Commemoratio}, $lang, $octvespera, $c{Rule});
}
}

if ($dayofweek == 6 && $cv == 2 && exists($c{'Commemoratio Sabbat'}) && $version !~ /1960/) { # only at Laudes
$c = getrefs($c{'Commemoratio Sabbat'}, $lang, 2, $c{Rule});
}
Expand All @@ -1406,12 +1452,12 @@ sub oratio {

foreach my $ic (@ic) {
if (!$ic || $ic =~ /^\s*$/
|| ($ic =~ /!.*?(O[ckt]ta|Dominica)/i && nooctnat())
|| ($ic =~ /$octavestring|!.*?$sundaystring/i && nooctnat())
|| ($version =~ /19(?:55|6)/ && $ic =~ /!.*?Vigil/i && $commemo =~ /Sancti/i && $commemo !~ /08\-14|06\-23|06\-28|08\-09/)) { next;
}
if ($ic !~ /^!/) { $ic = "!$ic"; }
$ccind++;
$key = ($ic =~ /Dominic[aæ]/i) ? ($version !~ /trident/i ? 3000 : 7100) : $ccind + 9900; # Sundays are all privilegde commemorations under DA
$key = ($ic =~ /$sundaystring/i) ? ($version !~ /trident/i ? 3000 : 7100) : $ccind + 9900; # Sundays are all privilegde commemorations under DA
$cc{$key} = $ic;
setbuild2("Commemorated: $key");
}
Expand Down Expand Up @@ -1497,7 +1543,7 @@ sub getcommemoratio {
}
if (!$rank) { $rank[0] = $w{Name}; } #commemoratio from commune
my $o = $w{Oratio};
if ($o =~ /N\./) { replaceNdot($w, $lang); }
if ($o =~ /N\./) { $o = replaceNdot($o, $lang); }

if (!$o && $w{Rule} =~ /Oratio Dominica/i) {
$wday =~ s/\-[0-9]/-0/;
Expand All @@ -1520,7 +1566,9 @@ sub getcommemoratio {

if ($version !~ /Trident/i && ((my $plural, $popeclass, my $name) = papal_rule($w{Rule}))) {
$o = papal_prayer($lang, $plural, $popeclass, $name);
}
} elsif ($o =~ /N\./ && ((my $plural, $popeclass, my $name) = papal_rule($w{Rule}))) {
$o = replaceNdot($o, $lang, $name);
}
if (!$o) { return ''; }
my $a = $w{"Ant $ind"};
if (!$a || ($winner =~ /Epi1\-0a|01-12t/ && $hora =~ /vespera/i && $vespera == 3)) { $i = 4 - $ind; $a = $w{"Ant $i"}; }
Expand Down Expand Up @@ -2225,7 +2273,7 @@ sub replaceNdot {

if ($name) {
$name =~ s/[\r\n]//g;
$s =~ s/N\. (et|and|és) N\./$name/;
$s =~ s/N\. (et|and|und|és) N\./$name/;
$s =~ s/N\./$name/;
}
return $s;
Expand Down
6 changes: 6 additions & 0 deletions web/www/horas/Deutsch/Psalterium/Translate.txt
Original file line number Diff line number Diff line change
Expand Up @@ -210,3 +210,9 @@ Die Hilfe Gottes

[MLitany]
O Herr, sei gnädig … Vater unser

[Dominica]
Sonntag

[Octava]
Oktav
2 changes: 1 addition & 1 deletion web/www/horas/Deutsch/Sancti/09-15cc.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[Rank]
S. Nicomedis Martyris;;Simplex;;1.1;;vide C2
Hl. Nikomedes, Märtyrer;;Simplex;;1.1;;vide C2

[Rule]
vide C2;
Expand Down
6 changes: 6 additions & 0 deletions web/www/horas/English/Psalterium/Translate.txt
Original file line number Diff line number Diff line change
Expand Up @@ -219,3 +219,9 @@ Glory be to you, O Lord.

[MLitany]
Lord have mercy … Our Father

[Dominica]
Sunday

[Octava]
Octave
Loading

0 comments on commit 845717a

Please sign in to comment.