This fix system preference choices, and delete some useless code.
---
 C4/Circulation.pm                                  |   11 ++---------
 .../1-Obligatoire/unimarc_standard_systemprefs.sql |    2 +-
 installer/data/mysql/updatedatabase30.pl           |    8 ++++++++
 3 files changed, 11 insertions(+), 10 deletions(-)

diff --git a/C4/Circulation.pm b/C4/Circulation.pm
index e084548..438ecf4 100644
--- a/C4/Circulation.pm
+++ b/C4/Circulation.pm
@@ -2384,15 +2384,8 @@ sub CalcDateDue {
        my ($startdate,$loanlength,$branch,$borrower) = @_;
        my $datedue;
 
-       if(C4::Context->preference('useDaysMode') eq 'Days') {  # ignoring 
calendar
-               my $timedue = time + ($loanlength) * 86400;
-       #FIXME - assumes now even though we take a startdate 
-               my @datearr  = localtime($timedue);
-               $datedue = C4::Dates->new( sprintf("%04d-%02d-%02d", 1900 + 
$datearr[5], $datearr[4] + 1, $datearr[3]), 'iso');
-       } else {
-               my $calendar = C4::Calendar->new(  branchcode => $branch );
-               $datedue = $calendar->addDate($startdate, $loanlength);
-       }
+       my $calendar = C4::Calendar->new(  branchcode => $branch );
+       $datedue = $calendar->addDate($startdate, $loanlength);
 
        # if ReturnBeforeExpiry ON the datedue can't be after borrower 
expirydate
        if ( C4::Context->preference('ReturnBeforeExpiry') && 
$datedue->output('iso') gt $borrower->{dateexpiry} ) {
diff --git 
a/installer/data/mysql/fr-FR/1-Obligatoire/unimarc_standard_systemprefs.sql 
b/installer/data/mysql/fr-FR/1-Obligatoire/unimarc_standard_systemprefs.sql
index 006e6d7..42e0066 100644
--- a/installer/data/mysql/fr-FR/1-Obligatoire/unimarc_standard_systemprefs.sql
+++ b/installer/data/mysql/fr-FR/1-Obligatoire/unimarc_standard_systemprefs.sql
@@ -116,7 +116,7 @@ INSERT INTO `systempreferences` 
(variable,value,explanation,options,type) VALUES
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('timeout', '30600', 'Ce paramètre définit la durée d''inactivité au 
delà de laquelle l''utilisateur (professionnel ou opac) est automatiquement 
déconnecté', '', 'Integer');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('TransfersMaxDaysWarning', '3', 'Délai maximum au delà duquel un 
transfert sera considéré comme ayant rencontré un problème', '', 'Integer');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('uppercasesurnames', '0', 'Force les noms de famille à être en 
majuscule', NULL, 'YesNo');
-INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('useDaysMode', 'Calendar', 'Comment calculer les dates de retour : 
''Calendar'' signifie que les dates de retour sauteront les jours fermés. 
''Days'' ignore le calendrier', 'Calendar|Days', 'Choice');
+INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('useDaysMode', 'Calendar', 'Comment calculer les dates de retour : 
''Calendar'' signifie que les dates de retour sauteront les jours fermés. 
''Days'' ignore le calendrier', 'Calendar|Days|Datedue', 'Choice');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('virtualshelves', '1', 'Si ce paramètre est activé, les adhérents 
(identifiés) peuvent créer des étagères virtuelles', '', 'YesNo');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('z3950AuthorAuthFields', '701,702,700', 'Ce paramètre permet de remplir 
automatiquement le champ 200$f (s''il est vide) avec le champ 700$a. Utile pour 
l''affichage, mais pas vraiment rigoureux du point de vue de la norme 
UNIMARC.', '', '');
 INSERT INTO `systempreferences` (variable,value,explanation,options,type) 
VALUES('z3950NormalizeAuthor', '0', 'Si activé, les autorités auteur servent 
à remplir le champ 200$f s''il est vide (paramètre spécifique à 
l''UNIMARC', NULL, NULL);
diff --git a/installer/data/mysql/updatedatabase30.pl 
b/installer/data/mysql/updatedatabase30.pl
index 941153e..67e389a 100644
--- a/installer/data/mysql/updatedatabase30.pl
+++ b/installer/data/mysql/updatedatabase30.pl
@@ -672,6 +672,14 @@ if (C4::Context->preference("Version") < 
TransformToNum($DBversion)) {
     SetVersion ($DBversion);
 }
 
+$DBversion = "3.00.05.002";
+if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
+    $dbh->do("UPDATE systempreferences SET options = 'Calendar|Days|Datedue' 
WHERE variable = 'useDaysMode'");
+    
+    print "Upgrade to $DBversion done (upgrade useDaysMode syspref)\n";
+    SetVersion ($DBversion);
+}
+
 =item DropAllForeignKeys($table)
 
   Drop all foreign keys of the table $table
-- 
1.6.3.3

_______________________________________________
Koha-patches mailing list
[email protected]
http://lists.koha.org/mailman/listinfo/koha-patches

Reply via email to