From Katrin.Fischer at bsz-bw.de Sat Jul 24 10:37:32 2010 From: Katrin.Fischer at bsz-bw.de (Katrin Fischer) Date: Sat, 24 Jul 2010 10:37:32 +0200 Subject: [PATCH] Bug 4904: Problem with printing fines in overdue Message-ID: notices Content-Type: text/plain; charset=3D"utf-8" my $formatted_fine =3D currency_format("$1", "$fine", FMT_SYMBOL); is already utf-8. --- misc/cronjobs/overdue_notices.pl | 1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/misc/cronjobs/overdue_notices.pl b/misc/cronjobs/overdue_notices.pl index 4de6cdd..92e8327 100755 --- a/misc/cronjobs/overdue_notices.pl +++ b/misc/cronjobs/overdue_notices.pl @@ -665,7 +665,6 @@ sub parse_letter { # FIXME: this code should probably be moved to C4::Letters:pa no strict; # currency_format behaves badly if we quote the bareword for some reason... my $formatted_fine =3D currency_format("$1", "$fine", FMT_SYMBOL); use strict; - $formatted_fine =3D Encode::encode("utf8", $formatted_fine); $params->{'letter'}->{'content'} =3D~ s/.*<\/fine>/$formatted_fine/; } $params->{'letter'} =3D C4::Letters::parseletter( $params->{'letter'}, 'biblio', $item ); --=20 1.6.3.3 ------_=_NextPart_001_01CB1384.33E0AA3F Content-Type: application/octet-stream; name="0001-4904-Problem-with-printing-fines-in-overdue-notices.patch" Content-Transfer-Encoding: base64 Content-Description: 0001-4904-Problem-with-printing-fines-in-overdue-notices.patch Content-Disposition: attachment; filename="0001-4904-Problem-with-printing-fines-in-overdue-notices.patch" RnJvbSA2NjEwY2JjZmUwNzA0NmJjZDZkODczYThmMTliZjgxMzBkM2RjMTgyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLYXRyaW4gRmlzY2hlciA8S2F0cmluLkZpc2NoZXIuODNAd2Vi LmRlPgpEYXRlOiBTYXQsIDI0IEp1bCAyMDEwIDEwOjM3OjMyICswMjAwClN1YmplY3Q6IFtQQVRD SF0gNDkwNDogUHJvYmxlbSB3aXRoIHByaW50aW5nIGZpbmVzIGluIG92ZXJkdWUgbm90aWNlcwpD b250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9InV0Zi04IgoKbXkgJGZvcm1hdHRlZF9m aW5lID0gY3VycmVuY3lfZm9ybWF0KCIkMSIsICIkZmluZSIsIEZNVF9TWU1CT0wpOwppcyBhbHJl YWR5IHV0Zi04LgotLS0KIG1pc2MvY3JvbmpvYnMvb3ZlcmR1ZV9ub3RpY2VzLnBsIHwgICAgMSAt CiAxIGZpbGVzIGNoYW5nZWQsIDAgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9taXNjL2Nyb25qb2JzL292ZXJkdWVfbm90aWNlcy5wbCBiL21pc2MvY3JvbmpvYnMv b3ZlcmR1ZV9ub3RpY2VzLnBsCmluZGV4IDRkZTZjZGQuLjkyZTgzMjcgMTAwNzU1Ci0tLSBhL21p c2MvY3JvbmpvYnMvb3ZlcmR1ZV9ub3RpY2VzLnBsCisrKyBiL21pc2MvY3JvbmpvYnMvb3ZlcmR1 ZV9ub3RpY2VzLnBsCkBAIC02NjUsNyArNjY1LDYgQEAgc3ViIHBhcnNlX2xldHRlciB7ICMgRklY TUU6IHRoaXMgY29kZSBzaG91bGQgcHJvYmFibHkgYmUgbW92ZWQgdG8gQzQ6OkxldHRlcnM6cGEK ICAgICAgICAgICAgICAgICBubyBzdHJpY3Q7ICMgY3VycmVuY3lfZm9ybWF0IGJlaGF2ZXMgYmFk bHkgaWYgd2UgcXVvdGUgdGhlIGJhcmV3b3JkIGZvciBzb21lIHJlYXNvbi4uLgogICAgICAgICAg ICAgICAgIG15ICRmb3JtYXR0ZWRfZmluZSA9IGN1cnJlbmN5X2Zvcm1hdCgiJDEiLCAiJGZpbmUi LCBGTVRfU1lNQk9MKTsKICAgICAgICAgICAgICAgICB1c2Ugc3RyaWN0OwotICAgICAgICAgICAg ICAgICRmb3JtYXR0ZWRfZmluZSA9IEVuY29kZTo6ZW5jb2RlKCJ1dGY4IiwgJGZvcm1hdHRlZF9m aW5lKTsKICAgICAgICAgICAgICAgICAkcGFyYW1zLT57J2xldHRlcid9LT57J2NvbnRlbnQnfSA9 fiBzLzxmaW5lPi4qPFwvZmluZT4vJGZvcm1hdHRlZF9maW5lLzsKICAgICAgICAgICAgIH0KICAg ICAgICAgICAgICRwYXJhbXMtPnsnbGV0dGVyJ30gPSBDNDo6TGV0dGVyczo6cGFyc2VsZXR0ZXIo ICRwYXJhbXMtPnsnbGV0dGVyJ30sICdiaWJsaW8nLCAgICAgICRpdGVtICk7Ci0tIAoxLjYuMy4z Cgo= ------_=_NextPart_001_01CB1384.33E0AA3F-- From oleonard at myacpl.org Thu Jul 1 02:03:59 2010 From: oleonard at myacpl.org (Owen Leonard) Date: Wed, 30 Jun 2010 20:03:59 -0400 Subject: [Koha-patches] [PATCH] [followup](MT3160) fix address request In-Reply-To: <1277910231.2361.2.camel@koha-dev> References: <1277899168-2245-1-git-send-email-nahuel.angelinetti@biblibre.com> <1277910231.2361.2.camel@koha-dev> Message-ID: On Wed, Jun 30, 2010 at 11:03 AM, Michael Hafen wrote: > I have found in Mysql that CONCAT_WS handles NULL values well. ?Have you > looked into that? ?The syntax is a little different from CONCAT. Aren't we trying to avoid functions which are MySQL-specific? -- Owen -- Web Developer Athens County Public Libraries http://www.myacpl.org From chrisc at catalyst.net.nz Thu Jul 1 02:07:10 2010 From: chrisc at catalyst.net.nz (Chris Cormack) Date: Thu, 1 Jul 2010 12:07:10 +1200 Subject: [Koha-patches] [PATCH] [followup](MT3160) fix address request In-Reply-To: References: <1277899168-2245-1-git-send-email-nahuel.angelinetti@biblibre.com> <1277910231.2361.2.camel@koha-dev> Message-ID: <20100701000710.GI9685@rorohiko> * Owen Leonard (oleonard at myacpl.org) wrote: > On Wed, Jun 30, 2010 at 11:03 AM, Michael Hafen > wrote: > > I have found in Mysql that CONCAT_WS handles NULL values well. ?Have you > > looked into that? ?The syntax is a little different from CONCAT. > > Aren't we trying to avoid functions which are MySQL-specific? What he said, one of the major goals for 3.4 is to work equally as well on postgres as mysql, so it would be shame to put this in, just to have it taken out again. Chris > > -- Owen > > -- > Web Developer > Athens County Public Libraries > http://www.myacpl.org > _______________________________________________ > Koha-patches mailing list > Koha-patches at lists.koha-community.org > http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-patches -- Chris Cormack Catalyst IT Ltd. +64 4 803 2238 PO Box 11-053, Manners St, Wellington 6142, New Zealand From robin at catalyst.net.nz Thu Jul 1 06:47:32 2010 From: robin at catalyst.net.nz (Robin Sheat) Date: Thu, 1 Jul 2010 16:47:32 +1200 Subject: [Koha-patches] [PATCH] The accounts page is now paged Message-ID: <1277959652-17870-1-git-send-email-robin@catalyst.net.nz> This prevents you getting a huge screen full of records. --- .../prog/en/modules/members/boraccount.tmpl | 7 +++ members/boraccount.pl | 45 +++++++++++++++++-- 2 files changed, 47 insertions(+), 5 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/boraccount.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/members/boraccount.tmpl index fce5a4d..7b64602 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/boraccount.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/boraccount.tmpl @@ -64,6 +64,13 @@ + +&first="><< Newer + + Showing to of   + +&first=">Older >> + diff --git a/members/boraccount.pl b/members/boraccount.pl index 5509f3d..6bb69a6 100755 --- a/members/boraccount.pl +++ b/members/boraccount.pl @@ -48,6 +48,11 @@ my ($template, $loggedinuser, $cookie) my $borrowernumber=$input->param('borrowernumber'); my $action = $input->param('action') || ''; +# The index of the first record to display +my $first_record = $input->param('first') || 0; +# The number of records to show +my $count_record = $input->param('count') || 20; + #get borrower details my $data=GetMember('borrowernumber' => $borrowernumber); @@ -63,14 +68,36 @@ if ( $data->{'category_type'} eq 'C') { } #get account details -my ($total,$accts,undef)=GetMemberAccountRecords($borrowernumber); +my ($total,$accts,$num_records)=GetMemberAccountRecords($borrowernumber); my $totalcredit; if($total <= 0){ $totalcredit = 1; } +# Validate the actual boundaries we need, if they're outside a useful range, +# just reset them to something we understand. +$first_record = 0 if ($first_record < 0 || $first_record >= @$accts); +$count_record = 20 if ($count_record < 0); +my $last_record = $first_record+$count_record-1; +$last_record = @$accts - 1 if ($last_record >= @$accts); + +# Take an array slice +my @accts = @$accts[$first_record .. $last_record]; + +my ($show_back_link, $back_first_record) = (0, undef); +if ($first_record > 0) { + $show_back_link = 1; + $back_first_record = $first_record-$count_record; + $back_first_record = 0 if ($back_first_record < 0); +} +my ($show_forward_link, $forward_first_record) = (0, undef); +if (@$accts > $first_record+$count_record) { + $show_forward_link = 1; + $forward_first_record = $first_record+$count_record; +} + my $reverse_col = 0; # Flag whether we need to show the reverse column -foreach my $accountline ( @{$accts}) { +foreach my $accountline (@accts) { $accountline->{amount} += 0.00; if ($accountline->{amount} <= 0 ) { $accountline->{amountcredit} = 1; @@ -105,7 +132,7 @@ $template->param( cardnumber => $data->{'cardnumber'}, categorycode => $data->{'categorycode'}, category_type => $data->{'category_type'}, - categoryname => $data->{'description'}, + categoryname => $data->{'description'}, address => $data->{'address'}, address2 => $data->{'address2'}, city => $data->{'city'}, @@ -114,11 +141,19 @@ $template->param( phone => $data->{'phone'}, email => $data->{'email'}, branchcode => $data->{'branchcode'}, - branchname => GetBranchName($data->{'branchcode'}), + branchname => GetBranchName($data->{'branchcode'}), total => sprintf("%.2f",$total), totalcredit => $totalcredit, is_child => ($data->{'category_type'} eq 'C'), reverse_col => $reverse_col, - accounts => $accts ); + accounts => [ @accts ], + account_count => $num_records, + show_back_link => $show_back_link, + show_forward_link => $show_forward_link, + back_first_record => $back_first_record, + forward_first_record=> $forward_first_record, + current_start => ($first_record+1), + current_last => ($last_record+1), +); output_html_with_http_headers $input, $cookie, $template->output; -- 1.7.0.4 From robin at catalyst.net.nz Thu Jul 1 06:49:16 2010 From: robin at catalyst.net.nz (Robin Sheat) Date: Thu, 1 Jul 2010 16:49:16 +1200 Subject: [Koha-patches] [PATCH] bug4891 - sort facets in search sidebar Message-ID: <1277959756-17950-1-git-send-email-robin@catalyst.net.nz> --- catalogue/search.pl | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/catalogue/search.pl b/catalogue/search.pl index 920afb7..42f269a 100755 --- a/catalogue/search.pl +++ b/catalogue/search.pl @@ -499,6 +499,12 @@ if (C4::Context->preference('NoZebra')) { ($error, $results_hashref, $facets) = getRecords($query,$simple_query,\@sort_by,\@servers,$results_per_page,$offset,$expanded_facet,$branches,$query_type,$scan); }; } +# This sorts the facets into alphabetical order +if ($facets) { + foreach my $f (@$facets) { + $f->{facets} = [ sort { uc($a->{facet_title_value}) cmp uc($b->{facet_title_value}) } @{ $f->{facets} } ]; + } +} if ($@ || $error) { $template->param(query_error => $error.$@); output_html_with_http_headers $cgi, $cookie, $template->output; -- 1.7.0.4 From robin at catalyst.net.nz Thu Jul 1 06:49:38 2010 From: robin at catalyst.net.nz (Robin Sheat) Date: Thu, 1 Jul 2010 16:49:38 +1200 Subject: [Koha-patches] [PATCH] Support newlines in the notes field when displaying Message-ID: <1277959778-17986-1-git-send-email-robin@catalyst.net.nz> --- catalogue/detail.pl | 3 +++ opac/opac-detail.pl | 4 ++++ 2 files changed, 7 insertions(+), 0 deletions(-) diff --git a/catalogue/detail.pl b/catalogue/detail.pl index 85819c0..c3c3c74 100755 --- a/catalogue/detail.pl +++ b/catalogue/detail.pl @@ -93,6 +93,9 @@ my $marcseriesarray = GetMarcSeries($record,$marcflavour); my $marcurlsarray = GetMarcUrls ($record,$marcflavour); my $subtitle = GetRecordValue('subtitle', $record, $fw); +# Turn newlines into HTML-y newlines +$_->{marcnote} =~ s{\n}{
}g foreach (@$marcnotesarray); + # Get Branches, Itemtypes and Locations my $branches = GetBranches(); my $itemtypes = GetItemTypes(); diff --git a/opac/opac-detail.pl b/opac/opac-detail.pl index 629ebd2..7a0f2e2 100755 --- a/opac/opac-detail.pl +++ b/opac/opac-detail.pl @@ -205,6 +205,10 @@ my $marcseriesarray = GetMarcSeries ($record,$marcflavour); my $marcurlsarray = GetMarcUrls ($record,$marcflavour); my $subtitle = GetRecordValue('subtitle', $record, GetFrameworkCode($biblionumber)); +# Support newlines in the notes content +$_->{marcnote} =~ s{\n}{
}g foreach (@$marcnotesarray); + + $template->param( MARCNOTES => $marcnotesarray, MARCSUBJCTS => $marcsubjctsarray, -- 1.7.0.4 From robin at catalyst.net.nz Thu Jul 1 07:41:33 2010 From: robin at catalyst.net.nz (Robin Sheat) Date: Thu, 1 Jul 2010 17:41:33 +1200 Subject: [Koha-patches] [PATCH] bug4926 - Improves the ID fields when sending lists and carts Message-ID: <1277962893-19905-1-git-send-email-robin@catalyst.net.nz> --- .../prog/en/modules/opac-sendbasketform.tmpl | 2 +- .../prog/en/modules/opac-sendshelfform.tmpl | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-sendbasketform.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/opac-sendbasketform.tmpl index 9caef3c..4104682 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-sendbasketform.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-sendbasketform.tmpl @@ -15,7 +15,7 @@ -
" method="post"> +" method="post" id="sendbasketform">
Sending your cart diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-sendshelfform.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/opac-sendshelfform.tmpl index 9d0e717..b74bf82 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-sendshelfform.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-sendshelfform.tmpl @@ -7,7 +7,7 @@ //]]> - +
@@ -21,7 +21,7 @@ -" method="post"> +" method="post" id="sendshelfform">
Sending your list -- 1.7.0.4 From nahuel.angelinetti at biblibre.com Thu Jul 1 09:57:22 2010 From: nahuel.angelinetti at biblibre.com (Nahuel ANGELINETTI) Date: Thu, 01 Jul 2010 09:57:22 +0200 Subject: [Koha-patches] [PATCH] [followup](MT3160) fix address request In-Reply-To: References: <1277899168-2245-1-git-send-email-nahuel.angelinetti@biblibre.com> <1277910231.2361.2.camel@koha-dev> Message-ID: <4C2C4A62.6040706@biblibre.com> Le 01/07/2010 02:03, Owen Leonard a ?crit : > On Wed, Jun 30, 2010 at 11:03 AM, Michael Hafen > wrote: > >> I have found in Mysql that CONCAT_WS handles NULL values well. Have you >> looked into that? The syntax is a little different from CONCAT. >> > Aren't we trying to avoid functions which are MySQL-specific? > > Why ? Koha doesn't work with another DBMS... No one is maintaining the postgre structure, and I think all code is MySQL specific. My point of view, is the development of koha must do some good code for one DBMS, instead of bad code for all DBMS. For the moment, koha doesn't use an ORM that permit to use some DBMS, and don't take care about "SQL". bests, -- Nahuel ANGELINETTI From chrisc at catalyst.net.nz Thu Jul 1 10:00:11 2010 From: chrisc at catalyst.net.nz (Chris Cormack) Date: Thu, 1 Jul 2010 20:00:11 +1200 Subject: [Koha-patches] [PATCH] [followup](MT3160) fix address request In-Reply-To: <4C2C4A62.6040706@biblibre.com> References: <1277899168-2245-1-git-send-email-nahuel.angelinetti@biblibre.com> <1277910231.2361.2.camel@koha-dev> <4C2C4A62.6040706@biblibre.com> Message-ID: <20100701080011.GO9685@rorohiko> * Nahuel ANGELINETTI (nahuel.angelinetti at biblibre.com) wrote: > Le 01/07/2010 02:03, Owen Leonard a ?crit : > >On Wed, Jun 30, 2010 at 11:03 AM, Michael Hafen > > wrote: > >>I have found in Mysql that CONCAT_WS handles NULL values well. Have you > >>looked into that? The syntax is a little different from CONCAT. > >Aren't we trying to avoid functions which are MySQL-specific? > > > > Why ? Koha doesn't work with another DBMS... > No one is maintaining the postgre structure, and I think all code is > MySQL specific. > My point of view, is the development of koha must do some good code > for one DBMS, instead of bad code for all DBMS. > For the moment, koha doesn't use an ORM that permit to use some > DBMS, and don't take care about "SQL". A major goal, for 3.4 as I have stated is for it to remove the mysql specific sql. So while its galens call on this patch for 3.2. I wont be accepting mysql specific sql for 3.4 CHris > > bests, > > -- > Nahuel ANGELINETTI > > _______________________________________________ > Koha-patches mailing list > Koha-patches at lists.koha-community.org > http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-patches -- Chris Cormack Catalyst IT Ltd. +64 4 803 2238 PO Box 11-053, Manners St, Wellington 6142, New Zealand From nahuel.angelinetti at biblibre.com Thu Jul 1 10:03:53 2010 From: nahuel.angelinetti at biblibre.com (Nahuel ANGELINETTI) Date: Thu, 01 Jul 2010 10:03:53 +0200 Subject: [Koha-patches] [PATCH] [followup](MT3160) fix address request In-Reply-To: <20100701080011.GO9685@rorohiko> References: <1277899168-2245-1-git-send-email-nahuel.angelinetti@biblibre.com> <1277910231.2361.2.camel@koha-dev> <4C2C4A62.6040706@biblibre.com> <20100701080011.GO9685@rorohiko> Message-ID: <4C2C4BE9.4090408@biblibre.com> Le 01/07/2010 10:00, Chris Cormack a ?crit : > * Nahuel ANGELINETTI (nahuel.angelinetti at biblibre.com) wrote: > >> Le 01/07/2010 02:03, Owen Leonard a ?crit : >> >>> On Wed, Jun 30, 2010 at 11:03 AM, Michael Hafen >>> wrote: >>> >>>> I have found in Mysql that CONCAT_WS handles NULL values well. Have you >>>> looked into that? The syntax is a little different from CONCAT. >>>> >>> Aren't we trying to avoid functions which are MySQL-specific? >>> >>> >> Why ? Koha doesn't work with another DBMS... >> No one is maintaining the postgre structure, and I think all code is >> MySQL specific. >> My point of view, is the development of koha must do some good code >> for one DBMS, instead of bad code for all DBMS. >> For the moment, koha doesn't use an ORM that permit to use some >> DBMS, and don't take care about "SQL". >> > A major goal, for 3.4 as I have stated is for it to remove the mysql > specific sql. So while its galens call on this patch for 3.2. I wont be > accepting mysql specific sql for 3.4 > Why don't use an ORM to avoid ANY sql code ? And don't take care of writing SQL, just using functions like in Django :) -- Nahuel ANGELINETTI From chrisc at catalyst.net.nz Thu Jul 1 10:28:37 2010 From: chrisc at catalyst.net.nz (Chris Cormack) Date: Thu, 1 Jul 2010 20:28:37 +1200 Subject: [Koha-patches] [PATCH] [followup](MT3160) fix address request In-Reply-To: <4C2C4BE9.4090408@biblibre.com> References: <1277899168-2245-1-git-send-email-nahuel.angelinetti@biblibre.com> <1277910231.2361.2.camel@koha-dev> <4C2C4A62.6040706@biblibre.com> <20100701080011.GO9685@rorohiko> <4C2C4BE9.4090408@biblibre.com> Message-ID: <20100701082837.GP9685@rorohiko> * Nahuel ANGELINETTI (nahuel.angelinetti at biblibre.com) wrote: > Le 01/07/2010 10:00, Chris Cormack a ?crit : > >* Nahuel ANGELINETTI (nahuel.angelinetti at biblibre.com) wrote: > >>Le 01/07/2010 02:03, Owen Leonard a ?crit : > >>>On Wed, Jun 30, 2010 at 11:03 AM, Michael Hafen > >>> wrote: > >>>>I have found in Mysql that CONCAT_WS handles NULL values well. Have you > >>>>looked into that? The syntax is a little different from CONCAT. > >>>Aren't we trying to avoid functions which are MySQL-specific? > >>> > >>Why ? Koha doesn't work with another DBMS... > >>No one is maintaining the postgre structure, and I think all code is > >>MySQL specific. > >>My point of view, is the development of koha must do some good code > >>for one DBMS, instead of bad code for all DBMS. > >>For the moment, koha doesn't use an ORM that permit to use some > >>DBMS, and don't take care about "SQL". > >A major goal, for 3.4 as I have stated is for it to remove the mysql > >specific sql. So while its galens call on this patch for 3.2. I wont be > >accepting mysql specific sql for 3.4 > Why don't use an ORM to avoid ANY sql code ? And don't take care of > writing SQL, just using functions like in Django :) That may be a future plan, but for 3.4 being a short release cycle that is well out of reach. I have already got a DBIx::Class Schema, and have deployed that to postgres to get Koha running on it. Finishing combined with all the other work set aside for 3.4 is more than a enough. Chris > > -- > Nahuel ANGELINETTI > > _______________________________________________ > Koha-patches mailing list > Koha-patches at lists.koha-community.org > http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-patches -- Chris Cormack Catalyst IT Ltd. +64 4 803 2238 PO Box 11-053, Manners St, Wellington 6142, New Zealand From mdhafen at tech.washk12.org Thu Jul 1 17:30:55 2010 From: mdhafen at tech.washk12.org (Michael Hafen) Date: Thu, 01 Jul 2010 09:30:55 -0600 Subject: [Koha-patches] [PATCH] [followup](MT3160) fix address request In-Reply-To: References: <1277899168-2245-1-git-send-email-nahuel.angelinetti@biblibre.com> <1277910231.2361.2.camel@koha-dev> Message-ID: <1277998255.7068.16.camel@koha-dev> I wasn't sure if CONCAT_WS was part of the SQL spec. I only mention it as a courtesy because I've only recently learned about it myself. I've found it to be a pretty slick function. With a quick google search it seems PostgreSQL does have the same function. I suspect that if it isn't in the SQL spec. it is unofficially supported on some DBMS's. I just talked with a couple of our other guys here, and Oracle nor MS SQL have this function. Yeah, I don't think this should be used in Koha at this point since we are trying to avoid function specific to a certain RDBMS. On Wed, 2010-06-30 at 20:03 -0400, Owen Leonard wrote: > On Wed, Jun 30, 2010 at 11:03 AM, Michael Hafen > wrote: > > I have found in Mysql that CONCAT_WS handles NULL values well. Have you > > looked into that? The syntax is a little different from CONCAT. > > Aren't we trying to avoid functions which are MySQL-specific? > > -- Owen > -- Michael Hafen Systems Analyst and Programmer Washington County School District Utah, USA for Koha checkout http://development.washk12.org/gitweb/ or git://development.washk12.org/koha From oleonard at myacpl.org Thu Jul 1 19:39:57 2010 From: oleonard at myacpl.org (Owen Leonard) Date: Thu, 1 Jul 2010 13:39:57 -0400 Subject: [Koha-patches] [PATCH] Fix for Bug 4922 - Item display tries to show serial info for titles with series tags Message-ID: <1278005997-13283-1-git-send-email-oleonard@myacpl.org> Removing check for "is this a serial record" when displaying enumchron information. This check evaluates as true for all biblio records which have a series title, so it's an inaccurate determiner of whether enumchron information should be displayed. The script already checks for the presence of enumchron data, so that will display anyway if it exists. --- catalogue/detail.pl | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/catalogue/detail.pl b/catalogue/detail.pl index 85819c0..4f6c23f 100755 --- a/catalogue/detail.pl +++ b/catalogue/detail.pl @@ -106,7 +106,7 @@ my $dat = &GetBiblioData($biblionumber); my $subscriptionsnumber = CountSubscriptionFromBiblionumber($biblionumber); my @subscriptions = GetSubscriptions( $dat->{title}, $dat->{issn}, $biblionumber ); my @subs; -$dat->{'serial'}=1 if $subscriptionsnumber; + foreach my $subscription (@subscriptions) { my %cell; my $serials_to_display; @@ -212,7 +212,7 @@ $template->param( itemdata_enumchron => $itemfields{enumchron}, itemdata_uri => $itemfields{uri}, itemdata_copynumber => $itemfields{copynumber}, - volinfo => $itemfields{enumchron} || $dat->{'serial'} , + volinfo => $itemfields{enumchron}, z3950_search_params => C4::Search::z3950_search_args($dat), C4::Search::enabled_staff_search_views, ); -- 1.7.0.4 From gmcharlt at gmail.com Fri Jul 2 01:25:58 2010 From: gmcharlt at gmail.com (Galen Charlton) Date: Thu, 1 Jul 2010 19:25:58 -0400 Subject: [Koha-patches] [PATCH] [followup](MT3160) fix address request In-Reply-To: <1277998255.7068.16.camel@koha-dev> References: <1277899168-2245-1-git-send-email-nahuel.angelinetti@biblibre.com> <1277910231.2361.2.camel@koha-dev> <1277998255.7068.16.camel@koha-dev> Message-ID: Hi, On Thu, Jul 1, 2010 at 11:30 AM, Michael Hafen wrote: > With a quick google search it seems PostgreSQL does have the same > function. ?I suspect that if it isn't in the SQL spec. it is > unofficially supported on some DBMS's. ?I just talked with a couple of > our other guys here, and Oracle nor MS SQL have this function. Actually, Postgres doesn't have CONCAT_WS(). However, what MySQL and Postgres *do* both have is COALESCE(), which could be used to rework the patch so that it would be more DBMS-agnostic. Regards, Galen -- Galen Charlton gmcharlt at gmail.com From gmcharlt at gmail.com Fri Jul 2 01:33:37 2010 From: gmcharlt at gmail.com (Galen Charlton) Date: Thu, 1 Jul 2010 19:33:37 -0400 Subject: [Koha-patches] [PATCH] Support newlines in the notes field when displaying In-Reply-To: <1277959778-17986-1-git-send-email-robin@catalyst.net.nz> References: <1277959778-17986-1-git-send-email-robin@catalyst.net.nz> Message-ID: Hi, On Thu, Jul 1, 2010 at 12:49 AM, Robin Sheat wrote: > +# Turn newlines into HTML-y newlines > +$_->{marcnote} =~ s{\n}{
}g foreach (@$marcnotesarray); > + This sort of HTML display logic should be pushed off to the templates if at all possible; if newlines are significant in the notes field (and this is slightly nonstandard in MARC, in fact, although I grant that it certainly happens in the wild), I suggest splitting up @$marcnotesarray on embedded newlines and passing that to the template. Regards, Galen -- Galen Charlton gmcharlt at gmail.com From robin at catalyst.net.nz Fri Jul 2 02:55:46 2010 From: robin at catalyst.net.nz (Robin Sheat) Date: Fri, 2 Jul 2010 12:55:46 +1200 Subject: [Koha-patches] [PATCH] bug4929 - amended the instructions Message-ID: <1278032146-14588-1-git-send-email-robin@catalyst.net.nz> --- debian/scripts/koha-create | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/debian/scripts/koha-create b/debian/scripts/koha-create index 60262d4..43e7c4e 100755 --- a/debian/scripts/koha-create +++ b/debian/scripts/koha-create @@ -165,7 +165,7 @@ eof touch "$name-db-request.txt" chmod 0600 "$name-db-request.txt" cat > "$name-db-request.txt" << eof -Please create a database and user on $mysqlhost as follows: +Please create a MySQL database and user on $mysqlhost as follows: database name: $mysqldb database user: $mysqluser -- 1.7.0.4 From robin at catalyst.net.nz Fri Jul 2 03:54:30 2010 From: robin at catalyst.net.nz (Robin Sheat) Date: Fri, 02 Jul 2010 13:54:30 +1200 Subject: [Koha-patches] [PATCH] Support newlines in the notes field when displaying In-Reply-To: References: <1277959778-17986-1-git-send-email-robin@catalyst.net.nz> Message-ID: <1278035670.2269.35.camel@zarathud> Op donderdag 01-07-2010 om 19:33 uur [tijdzone -0400], schreef Galen Charlton: > This sort of HTML display logic should be pushed off to the templates > if at all possible; if newlines are significant in the notes field > (and this is slightly nonstandard in MARC, in fact, although I grant > that it certainly happens in the wild), I suggest splitting up > @$marcnotesarray on embedded newlines and passing that to the > template. That would be fairly fiddly to do with the current templating system. Given that, I'll put this on hold until the move to template toolkit is made, where we can just run it through a filter. -- Robin Sheat Catalyst IT Ltd. ? +64 4 803 2204 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: Dit berichtdeel is digitaal ondertekend URL: From nahuel.angelinetti at biblibre.com Fri Jul 2 14:24:39 2010 From: nahuel.angelinetti at biblibre.com (Nahuel ANGELINETTI) Date: Fri, 2 Jul 2010 14:24:39 +0200 Subject: [Koha-patches] [PATCH] [3.0.x](bug #4930) fix inventory Message-ID: <1278073479-19268-1-git-send-email-nahuel.angelinetti@biblibre.com> this delete duplicate code that generate an error in a sql query and can't work when "pass on loan items" is checked. --- C4/Items.pm | 5 ----- 1 files changed, 0 insertions(+), 5 deletions(-) diff --git a/C4/Items.pm b/C4/Items.pm index 3777834..d5a4167 100644 --- a/C4/Items.pm +++ b/C4/Items.pm @@ -1080,11 +1080,6 @@ END_SQL push @where_strings, 'issues.date_due IS NULL'; } - if ( $ignoreissued) { - $query .= "LEFT JOIN issues ON items.itemnumber = issues.itemnumber "; - push @where_strings, 'issues.date_due IS NULL'; - } - if ( @where_strings ) { $query .= 'WHERE '; $query .= join ' AND ', @where_strings; -- 1.7.0.4 From gmcharlt at gmail.com Fri Jul 2 14:48:13 2010 From: gmcharlt at gmail.com (Galen Charlton) Date: Fri, 2 Jul 2010 08:48:13 -0400 Subject: [Koha-patches] [PATCH 2/4] remove extraneous warns In-Reply-To: <1278074895-7443-1-git-send-email-gmcharlt@gmail.com> References: <1278074895-7443-1-git-send-email-gmcharlt@gmail.com> Message-ID: <1278074895-7443-2-git-send-email-gmcharlt@gmail.com> Signed-off-by: Galen Charlton --- acqui/basketgroup.pl | 3 --- 1 files changed, 0 insertions(+), 3 deletions(-) diff --git a/acqui/basketgroup.pl b/acqui/basketgroup.pl index 94c5814..a3b7dc9 100755 --- a/acqui/basketgroup.pl +++ b/acqui/basketgroup.pl @@ -184,7 +184,6 @@ sub printbasketgrouppdf{ my $pdfformat = C4::Context->preference("OrderPdfFormat"); eval "use $pdfformat" ; - warn @_; eval "use C4::Branch"; my $basketgroup = GetBasketgroup($basketgroupid); @@ -386,9 +385,7 @@ if ( $op eq "add" ) { printbasketgrouppdf($basketgroupid); }elsif( $op eq "delete"){ my $basketgroupid = $input->param('basketgroupid'); - warn $basketgroupid; DelBasketgroup($basketgroupid); - warn "---------------"; print $input->redirect('/cgi-bin/koha/acqui/basketgroup.pl?booksellerid=' . $booksellerid); }elsif ( $op eq 'reopen'){ -- 1.7.0 From gmcharlt at gmail.com Fri Jul 2 14:48:12 2010 From: gmcharlt at gmail.com (Galen Charlton) Date: Fri, 2 Jul 2010 08:48:12 -0400 Subject: [Koha-patches] [PATCH 1/4] Bug 4188 Allow acq basket group printing into PDF Message-ID: <1278074895-7443-1-git-send-email-gmcharlt@gmail.com> From: Fr?d?ric Demians Since new acquisition module workflow and specifications is not documented, this fix is more an hypothesis than a patch. Signed-off-by: Galen Charlton --- acqui/pdfformat/layout2pages.pm | 8 +++++--- acqui/pdfformat/layout3pages.pm | 8 +++++--- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/acqui/pdfformat/layout2pages.pm b/acqui/pdfformat/layout2pages.pm index 5614800..c7c1985 100755 --- a/acqui/pdfformat/layout2pages.pm +++ b/acqui/pdfformat/layout2pages.pm @@ -236,9 +236,11 @@ sub printfooters { sub printpdf { my ($basketgroup, $bookseller, $baskets, $orders, $GST) = @_; # open the default PDF that will be used for base (1st page already filled) - my $template = C4::Context->preference("OrderPdfTemplate"); - $template = decode_base64($template); - my $pdf = PDF::API2->openScalar($template); + use FindBin qw( $Bin ); + open(my $fh, "$Bin/pdfformat/layout2pages.pdf") or die "$@"; + my @pdf = <$fh>; + close($fh); + my $pdf = PDF::API2->openScalar(join('', @pdf)); $pdf->pageLabel( 0, { -style => 'roman', } ); # start with roman numbering diff --git a/acqui/pdfformat/layout3pages.pm b/acqui/pdfformat/layout3pages.pm index 6809db1..2d82b8a 100755 --- a/acqui/pdfformat/layout3pages.pm +++ b/acqui/pdfformat/layout3pages.pm @@ -373,9 +373,11 @@ sub printfooters { sub printpdf { my ($basketgroup, $bookseller, $baskets, $orders, $GST) = @_; # open the default PDF that will be used for base (1st page already filled) - my $template = C4::Context->preference("OrderPdfTemplate"); - $template = decode_base64($template); - my $pdf = PDF::API2->openScalar($template); + use FindBin qw( $Bin ); + open(my $fh, "$Bin/pdfformat/layout3pages.pdf") or die "$@"; + my @pdf = <$fh>; + close($fh); + my $pdf = PDF::API2->openScalar(join('', @pdf)); $pdf->pageLabel( 0, { -style => 'roman', } ); # start with roman numbering -- 1.7.0 From gmcharlt at gmail.com Fri Jul 2 14:48:14 2010 From: gmcharlt at gmail.com (Galen Charlton) Date: Fri, 2 Jul 2010 08:48:14 -0400 Subject: [Koha-patches] [PATCH 3/4] bug 4188: move PDF templates for printed purchase orders In-Reply-To: <1278074895-7443-2-git-send-email-gmcharlt@gmail.com> References: <1278074895-7443-1-git-send-email-gmcharlt@gmail.com> <1278074895-7443-2-git-send-email-gmcharlt@gmail.com> Message-ID: <1278074895-7443-3-git-send-email-gmcharlt@gmail.com> The PDF templates for purchase orders now live in the directory koha-tmpl/intranet-tmpl/prog/pdf to separate them from code. As no automatic translation system for PDF files is currently implemented, I'm keeping them out of the language subdirectories for now. At present, there are two choices of templates for printing purchase orders (AKA basket groups), controlled by setting the OrderPdfFormat syspref: pdfformat::layout2pages (two-page layout) pdfformat::layout3pages (three-page layout) To customize a template or to add a new one requires two steps: * modifying the PDF; note that OpenOffice source files are included as a way of generating the PDF * modifying the code in acqui/pdfformat/layout*.pm to position the order text onto the template Signed-off-by: Galen Charlton --- C4/Languages.pm | 2 +- acqui/pdfformat/layout2pages.odt | Bin 12688 -> 0 bytes acqui/pdfformat/layout2pages.pdf | Bin 25541 -> 0 bytes acqui/pdfformat/layout2pages.pm | 7 ++----- acqui/pdfformat/layout3pages.odt | Bin 12973 -> 0 bytes acqui/pdfformat/layout3pages.pdf | Bin 26944 -> 0 bytes acqui/pdfformat/layout3pages.pm | 7 ++----- koha-tmpl/intranet-tmpl/prog/pdf/layout2pages.odt | Bin 0 -> 12688 bytes koha-tmpl/intranet-tmpl/prog/pdf/layout2pages.pdf | Bin 0 -> 25541 bytes koha-tmpl/intranet-tmpl/prog/pdf/layout3pages.odt | Bin 0 -> 12973 bytes koha-tmpl/intranet-tmpl/prog/pdf/layout3pages.pdf | Bin 0 -> 26944 bytes 11 files changed, 5 insertions(+), 11 deletions(-) delete mode 100644 acqui/pdfformat/layout2pages.odt delete mode 100644 acqui/pdfformat/layout2pages.pdf delete mode 100644 acqui/pdfformat/layout3pages.odt delete mode 100644 acqui/pdfformat/layout3pages.pdf create mode 100644 koha-tmpl/intranet-tmpl/prog/pdf/layout2pages.odt create mode 100644 koha-tmpl/intranet-tmpl/prog/pdf/layout2pages.pdf create mode 100644 koha-tmpl/intranet-tmpl/prog/pdf/layout3pages.odt create mode 100644 koha-tmpl/intranet-tmpl/prog/pdf/layout3pages.pdf diff --git a/C4/Languages.pm b/C4/Languages.pm index f8f60f4..fd16596 100644 --- a/C4/Languages.pm +++ b/C4/Languages.pm @@ -267,7 +267,7 @@ sub _get_language_dirs { next if $lang_string =~/css$/; next if $lang_string =~/CVS$/; next if $lang_string =~/\.txt$/i; #Don't read the readme.txt ! - next if $lang_string =~/img|images|famfam|sound/; + next if $lang_string =~/img|images|famfam|sound|pdf/; push @lang_strings, $lang_string; } return (@lang_strings); diff --git a/acqui/pdfformat/layout2pages.odt b/acqui/pdfformat/layout2pages.odt deleted file mode 100644 index e07288329a985e27c838f90b055eb51659aef505..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12688 zcma)j1zeQN_dXzvbV`RHAl(hp2uL>qOE0k?9ny_-NOz}nhqQEuba%JpAM|?l`oH)0 z`JQF>GdpvhbI#1X?>n<+9%Ln-Kw^MB3bwd8w^k?9(-#lr$2aW5+Z8=RzdG at 6IQ)O{ zW@%+%WMyFeTlfDB`EPMPI{P(f|0~MI!ouwTMiKo>lt6QUk%2Y6AkfAfU}^n-%oD-` zSkD4v^VeMLsn3MWu%WmdsKCMx`9Va`IMP=o*oK*_6MqKb>5QgZfYZvcp$95T^qj93 zTp`|;A?1BA=sxd>F;66QoDyzhUX5F_>7uCI6h*X!Q&( zC;f>Ya(Uj7fo*8bNo9w;I%?D1c)EBS?XT`T)8PUiihFPo-V_ydH544n%fDD(JbNw@ z$f8O^1xNwy#>sDeIl=niQ@>fSDaGr?f$wBkL5i!y)im~%9sLrC(R+0Zf%Bhcy)fBu|G2tx?Kk+Ury`Hbhr-~ zx~XZ_=`&s&;S3pGOv>*ZGNve*6 zh7wA~My_J9Wn^~|)k9bWKs?fA^Xg6Uu{d(Xy!&^$; z*FKRs9F8+=wP6`j9+Q}G1k5s(*XtYcPzPsGlqUt42>a`N)snm?Yndp~s+67v;96ng zMppMdJ~J$k6ONeflyQRZDa55n5OJC+*HYG(o94ej?=!}e7rvs#uByd6_FS&yKD{kD zF8DmA26O6+-L`}bW7){dIhi(t_teg+arf*K($baF2^%*_c7+6{ux&acQ5I#7SWh!@18)((c6j+Egl|En8x+c5j`I5tEp?) z)!x@;gB(<0OQi0Eu$L6%XXvDxT_QoXW3%7H=Dj#jAC4gP$cD%&w*rH#lQZE~6`7hJ_0-81M6ej+ zNd}Ig>fZJ&kabQQp%`*2ypR_8P;>+X_p-IaKB;^kB2-rp_$*#DmDbDh)j$x!aomoU zM4KPttfmZhu`FBwsradZdS7gYp{J3;7k@@<2l#u#=p%$wTfIqvHG%m`+f#=?vYct% zyl$?j=fcrLfnYr60K^t_mwEM!uvB*Z;P~j5wk}ufVDZd2{KmdW0LFd>gwnRSWIxJL z#$|Q1)KC{)tChM!sbpEK(c(0``Os&&!Vh=YFC at Vt8seSm_g1+h<9rVL{cO*>lYkzakgeNRLO|)t at f2TpHQX?FOSe z+cakiES4WkM20Vg4S)^#2nXgN6rF*BK%$O+7Q1Yh_}-T|;B%2J!&4s_Y_sPGz|SMjGJ zmW6fDxC3IAM#-QFia?;>XIlUzFT9Gh at 4wYU!O?-YscAI9=ULn2=H>JcrdNT^$*q9} z%0qgl+ai_qPmqHP((l7^}q#dNyvSHhMGJbv? zMwku at S64&+=7d*1W@{o_j$GFbw-*TNuGTYmpn9LlXQ?z8A`p^}$#gfkEgOw{{4e~6 zPG)z7 at T)(}rm89OtxdF`#u%`DgB?s7HzT~FPogp=$q5lM(1 zQ+e-c$7y{@1l`&*V}ygS5&2w(2-&t7(B5Lm^7zFwC#bx}Ql%gMv7-H0_UiGV?BtW!f%+zLagnl2&mXZ ztB+RQnB2WMKWcv5Y+y*dB3Xe31B0Ufx!L%)Jq-NA+GuU#Xl7vjxJ~I-mk6CbIa(Swal*}H*qY|66?*CX)+r>cNe^X`!|hhE>W zF(Kr0p_rmthk5kL{-v!j(GkL7;`&hI4PMJ($2T+PCF6CfK1;66Df^$Y1wpOftZJVk zRzl;CzZaoWXu}jEk$i@$u=Jh_nZTlxh2R6Sql>s>Tu~hU9&Y}YgyJ}enTyOW0en(e zgIa9E7Xb3Rpe7`mFPMty&z(nVU!}N#6+T($LYAicVpd4IYF@~`E8#ez0mc{%6y8!f at E>r=~PDfE~<3K^a|;YHSS@*&?2#!A8@;d9ONW>VoRw; zl3DEWd<74~!AMRc09`!+{0%EBE-XB*Mw2hfOA_I5?3PRu8!hX%koLuq6cBaBf at Gq) zSXtZql|}AOj=FAS12c|Sok5KypP)(HK|NcE@<4TbvmQm zN)rBh%DR!g1$r93H1dXWczG>7j-}0s5We?9tmQoE2lNA0GSNq~!yA7O( zF49_D25KzJ14Ov#HlrTd5USD zZ3GD7^+&m6be`rq8qGuo%&ciU)nr+!b?VjXil}cA`WCNENlFeP}$&iC at U`Y3&swyIjg*Jh-8Sr+S}_Th30W~V9nqZ}L}jHdG9luIpxUbUJwLeY@} z61rnku6SpcA^wIT{-}*i=yuaO(-5Z=i7jqdZ?+Sm%5 at _=p?X_xrbLpnd^Y{lp|}rG zgpC5y?~fHm7Kc&!h~|c8Zoz~$7_T`Zi>UJP!v%{3=n2s>sw+MxI*Z;vc`ZStsw+)^ z7#-_aToy{TE|s^9szbRhwK%VC*k-`a5WE-f;=E!><7e8bc2VWuNsehNUSkjMw9MKl z&%ovC*1~vw7&N>hy6|{u7T5U8s1ri zRsk8~F0@)FjM%ox(OCXzF7(JHhrOBy={y)+IByU0y8UqBBbp74LX{q{12pH4AZvdH z%;W&UKi5q1_{gM}Tqvn}|pu|ZaI@}W5H zvwU?c_-;;T8(rnK{ zi>g$)35iMNy*&MXo6*9oDJW^`64vi(b|c*>HCXV=u>&me0nFxDh8QlSiy`zN-g$jTS#EeE3MUYf)D^wE zFa5Iq3Rz*}xjv;c;R^fL4zs!n?swkiw!-Q(IiCi0OPL_(#)QR at oYRy_e7xJ>CSP3y zvRgLp&}78C!7_jXZlYG7+_o4JcW2zqVT&j}LnIu;%KxjMr)IXZzsOiecd=GJ7FRm>xmtAGqBzApC zc51&(n at nvYf50+HEhwr~lu at Njo1R@x at 6BgOFV+}!kc)hMU$MUL_PCPD&Kjws!GM9q zll@#tfBvv-!$6}nZWLLUe+ z;w4p56s6 at L<>!Ovu`o0Q>KSnT%u~=lBs2iT4^WUb*N-M%Qd=t!*Y}JD7YJZ(V9jNt z$Mt(^gX?!~uJ4Y1)Hs*{L8iQ<#x^#VT=ewz_V#r4%ybr3M)ZuFoSgLETS@^2{J^F_{#$)otnx2u4k^ZOdV}$=}P>;I5hh$-4 at wcPLKK$t7cXvz-3 at r3N zzLOIFH7dUi9}_9x&#`(m%E$BFw2=YmN2Y~O=E0iG_p$tLjhT+&xfBp&>p=X^2JMH$ zhKYfm4LvghgE=GXb3t36nLaHiGdm{_{T~*8cmRTcHb8(Gt)7*^V at 8Kh7GP^eENfwF z1^|Nog8ZrS1Na^AF!!|j4`~~|hu(40GBD9Hawsw~aXtL8u>FPpryh^K9 at j4bBO@&% zvmzq{7Xt$q3o8%(&&D4fEUkbK84Z0}UB`cm>bKV4)c^lzn7LRPxfp*&^Bwg==?BU{ z|DpdNBU(L2y at wqlA2ZWmVgFJ8Pi6hTvS@s=55bEwvr98FDExu at TjdAx@9Y0D>jt#8 z0qPNdpAH*jJd3eyG1}=%=`2A;MXE-M=si_PyeM0ZIIl1;GAT!1IbnMXMdJz!m~0X^Ru74Ulaiyp3NuWL z9Fh};MHAmtf at 8IT#c at b>o^-m1wwg2tS~baD1G-BP8-68P*;Ke6vXzG5W} z$;4~gUiv}bq7Qu0e0^QCW!Px>`w=h`cCz1)IK7Ub+Za3F-+p12sUYs zQ1M1Py`T1#jM%4uMKcL1!U?rzUnF!NV zh$ra7GRUYl=Zz at vMCc=giPjOqI5uhLC>`0{m*o|v4PtOxt50~(AXQ^xL?KsX;@8jc zXek28JoV6HAf^2T#e+c+aw95ZbcJX=w at MW-^9(Nr{nUWGi|NkT9eFrLHnsy*6QgI1 zgZ9{GMq~N{sTw?SRA=KU!Cz(UnvG}XVT`0`64|xVYHnAyCyd zIHR14ej>GE3TqFpd&vr`vjnOJAu_HRO84f%*ejPL@=T=@tyAm)-nqt5_TF-ibV`So}l-HsNhleOaXa+hLTcSKBRo z(zv%d&Ryl}#Pj$<7JcA_2ij+M{Hg9y5Rw$G2K9)a9i5SMZVWdm+=yvxcCx-MX)2mu zNT~M(D@*O9Tpfl{`xv(Ajx z(q!lVJSirY3!MVpnOdil52ci>VDB!uPjVX<));|>|MIv$>T3GyX-`LpNvschSPq^*9pX$Sg2-10mKV24mm9*0<~|->trJp zd1RGYD5?*Jmbm%P#JP9`gcF3h?lg&eH^bqHZfRO-O%UE{p78f7A4|Cs6}RKsFZCFI zLV=QsD%O}~$5*2}AX7|2fal($m0OCd=gydb(8<}3T&T$osp*UV8bGe-c@}wW*5F at A zg?YHGxiTWFhlsM7WVp~iUw$TMxhg{8A4sr?Ju*R$Q8^_31{^w13i?=f4>DSEKmcD%IflIXA0d~hLjpo;UO zD-j}tl(KhXyQQq#FE;$N^<4(44Dh0y=SMy#S z;8o8l^cQ8`(p~}o^r29E6ok9tijTI4vKqf69Cf*`VMtc6JZzBQBi$PZFnBVuIDBEq!3;PA*aC;kfO?JLjCVUA8_&tv%Fc1;;!T$xuX z;!BwRg49jV4&I{6%IN{CEs>ZrSL- at ft^f1+=cV&5tJ4DxxhkadfbPw&_v`4%E3!wr zibe%`Olw>f5a~w>@b{NIMCvbNmd|qqXIzgw>K0( zvGdJlY9)>_I=+`Apc07T%l1;`p^bUDa1!T$nQ|n0c!H9F6rk;39A56R2y{nhlII3F zvdu>f)?8){DlsKeGL5OfB9hdvF|<$0ycKR2E7{)doa-hIQMv+O=+SuEBsi2Q>?&Q1 z%&o2t4TCH{E{z6PkSwAr?(UaxlUf$G-b<=imO497*I0E*XC7Fed#01dh?n;w2idJ$ zXQrVfpWAFj49 at CXOA(qpOsTS9`U?o>JJi8AnwIkmYd=ET6{8e`4IN`jcmyH3xvp%Z zn*1<&|ApSDMTTvWLH(NRMNBqCQnmAz%T-yE=eUe#GnI+N^;hnO`Aes4{+HG5Gb4TI zLU-&m8`Q`-?iuUGrDtZj25{Xb_E=0#4d>m+T4*OZwf>GIxq27)xle8ZuS~LDv%AA| z;V`1OChD9Byj%$NE$dy{^)Kk3nk~j2bU7}%T at 0^UhnfOuQA%WfqNzb8l+zWVvRpG0 zY%rRc{d|PvtW=XX8VqC8q3qf!xYYrVOsf0}U6O--rxeZN+FN7%SY~?`EbP5+ zQ}Q7J8ShCx_t-uaBNZHdQ+DB14{Kz);ru2aMJ>EUQr(?x}MuX_ZJnR zxx~x&leNtRn&_Fb`ak0qE%wd%3inKJ-{pFgB7}QpL3}hUPjLgmXK6NY82*Ai?F!su zzW^>&@wO3(@9yUGZhc%A?Y#Q)p1&<&kSsI!k!KVcD_M`AI+!Y5F>v>7o+)KMmKHrdg8TNsYvp|+gW at 2x}x+{HPDF-iOAeM_+71`!! z$dT~)7Qw}uRlaBdrN9hPc2b<#Fs7>!xpux^zV6vq@~v0wPZz2Mr6FR%efMP}O*zy2 zaQ7mCCt09acz13>?s5Wuk494TD=7W?UOr zbPCV*Bcjh5Yf0DnH0I6C22y96INHKmQe7)JAfMv3e_pi^_ at X!vnm=MQ%dxa!sC15dprP`#q zHeZt8J4G`)n{X79^+ZUnv(3nbK7Av+uv*Dg$J at FXfBwv;nlt=m at mf_S*2Npgt}H&< zWOCD&{_-H3Ac8MOOGkS{u7qEZD4ozOzLo46X+*u4OeJx?#efKQ9l2n5ntOQkxd1|T z0Hjz;ED=XPC-u%PCo;dt7wGKaf$*}o?o}C8LXKFvXvf4o#@PoLi8n86z10fDT}n&l zIg%Psi at 1nd(+5)dRaiedt%Ssy&sZ5|f3t+v7O!14>-i`ey%YV#r?KfyxM8dc_f?0c z$mS~v&lOc$LJ6>~3xaoCvM-?~T5;VsG_O~hN2I({zNm{LeZZ!!xM+`js~jqD)D4=J zQL5pXr7Uq>ZvR%Gsi7>rR8 at 72y(X*SY5HvQUSN8mw9k@;Z(GTeJpsaN8PXyaQB>?h znEf^BlebW;CU@?rw#zhREo(=i*Gj1XkAy-ihry}2PgXHC5^6dkNzEN3 at Fkm?rTFHw zQ at v8ML53sop*d$RjlGX4bW>aFY%D>XvTy0sb}FEC=lY at q%#`&5uc#eR%!jZ3DzvEL(hd+`i5B#^HE( z5c-EO3%45*lQ at adF5fT=zAmZ;v6s}{&hXF6^C!AWE*hPfH8k*0ZOEbuH5?IFEz zdGS>N$alZkHG at 0EsLMkbm&1dq-qB72t&KA*U^a%^ND97{1;t-C*NytjZaX}1`(RrF z<=qxb6V|+-Mr*dq87)?9)w!~cWB)h(4s`z at 9`cQ)>0Xl^nXPsNrG9ppCBCAB<-S_& zp!Z5{&wNfz)jt3yhJgzEa*J; zo|?*-C*gzPkx65x#d-ztOC|*DX4}sToAfkYQ{k%BXKk@@YLz(pu^IZ6PY#MFS2*73 zZJHnZC2Ev7)qfRhyHEWVjYTHWu~I`u&Y>r&TqGry0+KtW%2UixueO3cWa33jl9UxQ z{#Nn+Z9~%MP{TlU3oFM}RLGFGpqF#~6Ngmp_TIEwZ)@MbiqpmlKRYS%&r>A20gzjC zj*!h3v=!ou_kE=1v<*`=3i94V56zIbsTE*KqpP&J3LK4!R6GmMQG~+pjfLTS=~LWk z&`UeyWQ7-rVk9zQG~aN|5P3L*!6yRjgx+#pu2_wG41Y=a*Bq+>gC^A=JY at Iq-Ou`ivp#Hq||0}lEg z)O2_cNn0j#cDcKVbydF&WmwGZ_HFNQa_G)ygH8Wp?)`JlMf>4VrjbG=zxF$r$Gj&A zRh`E+G8kAh>d(CAznvgHeLO)luzAcA{dI<@p|C8D;kuv=II8PFv9$4#&lbcGuJuhg zo_G%9Z&Rl*M*wkm#Y^zn7R3;USZT-0c!cw!*Zxh-ZRz1w2fp_yN4=y$^Rqkz9VB~R zwpz)vy0ug3ZLyJ=$fJ+ at clM#$6uKa^BIomDRjsP_MEYD-m;qq_ z)hVEIta!uKH9K at e8a%VtYivD49onHwk6Nh at cd|O}6AMy~hF9sd$P`EL?q}<98|=B> zorHvfQDc5j_PBivF6Y}pezEBc=CyD{I#C=|g;omUYMdaB90Aq*Tw&O*qujEH#c*#f zdjQcHW7 at IKF)#%Z7+PBbc2Q7d=cjV>l)_h)(C{d~o;+U>LXTZ(EIg5WKJprZ-r0Qh z4Qv>%V?=#J11Fb4CVRT&xo|*UGJla?*?H5`;VpYdv at JB1!0UQmdu!`VR^P@gzqRS+1?{-a92RP(Bttwm_&Xa`Zs#HkK)52C at f6q$ z<|%&o at YCphCDv5|ZQj&kGw(atcKRqz4-G^Q6?)5n>G68DQU}j8!W#ivjpuR2+yG61 zujuk=xUwB!`uRN(EZC&59%=}!%dW%%CaVtT$5?p9UhuLG%NdQn+^>S8yLur^nJ>XR zn$deAvET%Z`3Pi}?1XsyC}NM_C7FhFsZvIiC>8p3!orCh;U-i;s;E{mCMN at G`+dY~ z?zE0^PG at cb$1(|ZsF1|Vs;c8VKg$VFh3WR1dbXd^sEQvK z>Sh!Kte-IL6N|nno6wL-(scWJbS+w>(La80T|V4?vv5;UertEYn|ofkdrMgz%dJ&) zcQukaK$BW*K!aytXs7zEI21{$9Mp5KPan5l;gy0+cej1%I9MDNJQ-43q6(CNR_Q#< zia&^w9v at g++bqkki$1S^V9@{#i4+=nIi;T6b>s9mSA_-2DlkXVN4=RXlbCt5xH!XO#JT0I( zuo**YpA1R`U&Ot(b<})9n<}Btb?l_7lg}(@nkz at DI{Fl%ZdU^3LOA>+lHSxIPQP?7 zjPq3Gx{{)tGDaduK3>A-7&Yx;XFL_UQbNEZ|GlVN!U$O*CX<+tL{^$aBV60!9wlK# z&8ch0y2F9$7=qL{aG>rC zD7B~$C$q>GtT4I`NeU7!yR63~d3HW7Q7G7XezAwt10HG?0gYA6qO6-mO3GbLv&W2( z_sMgQjLDj;BU^)#ukd_TBUm|_nWmdeN08J>^=!qOb`Z@>YP&`b?vtpU5`$2~K0dgq zpAw$Fb^jL8-u^sIVy-fJ+ntmv01 at vfgg!4$ZQ=_oAGHC~$B}aIcH=d6jo49*+l{xO zd0g;0ekXW)LRr$OP~Dpt*cf=0VdMF6ui=8PaMQHc18PiI(-G*N;BQ8xYY&TDVt=)Q z;7X4YV+?)4R|aeCPBHY{ZC?rN!liYVfICHD{#kp78+_Jrr(_bF)nXnnsU&PD0*pyA zJ4GDtl$gt`Gww7-ubI00D$5vC(g=2h zCTH=5F*+rx5gRIxzH{}!M#ymno;6Lmukg__UmQ8Yn~nh~>`vinUJadDE(XY!cRknr z?iYUa3d=DharD|OUv{tIMUS)}R~{+Y4K0BO?n*n!|F!a9KCC>_B8snQCEkeAn*%^V zLj&vYY}?9cNl+UxiogY at PsjX_p_1A=(n@)mFhcjmQm=NIJ{0n5`jDu0^NjqwJ|r3k z3ml#{6YGj>E&<`ax4p^V&cfh at l;C{x&XRz? z{!+08E~Fh){~|~I4c|p~ESLCnwG_jV?9&S>i}^Dr at gsaZI;e@w z8vRAd{^!8_LjBoAw1=Vm)5`A@?f4(35I;?v{X8CpVdbJIzi*qS+;<1_v3QKS>Kuy!_aq!YC^ za5fP(F|so@;pK&La&|N^uz_;VPEj4V-K783b4le+i=Q&60s;dlVU0FM6BB?Nxzkx7 z4#k}I>1(!+x~`xEk^1z+4jpDEehInscqe92az9PRr at _LNp6K~r%G;yV7czKxK5FlS ziN7{p9uF{@(_8r}Ca=GA{&AWU>X~8E%w^NE=nLoxh~qqT+8rGLRyut9w9F`I_xwV2 zVdbIKn{695Xwi;!gM4gJI5K5{D!Z;@o^)>zNvY1|@mxM79U6$c^fh-V zc6=ROiy2kg1hrRhxSXtDmbq at NslnPZb2w^9S)PHaDvdP>nFXPvEHK?%Z at 96B=7ch5 zhOE^I^0~zTGU0~CAZmn;Iy2>y2?Sk+R9WHx!*p6b7^p0(zyG@}5G}n!MZr`EbkFpO at jXz&y&{@YzE?qkSA0zFh~ zs~NS-m33obkfvx|A}Gv6n(J!9qyI+s`U9m8%%^AX5DahW%j-U&57%Da=0M8Ae8MAT zB*6`?5qz4!dJ`)l%f-EL09v43;vQ_N{xr`P-*72LEnL)MHDSA%UkB0^mc?_I|5cdT+GkyU=KUIX8Z zu{FmMKvTalz&gW%S>vcRti*UB_83 at eh%rqzT?6$JAl(g1MGv)5Ex~12;Ks8=c#PeH z0EF+z2OpfEkz$`6edTEi;I at rg;KfQ*g7z_b^I#>r$=yQrdo}L{X{%%@hU**kf#0n? z*r&!cEKSK+&y`WtgRVUYMfMjKVoqeT`>;Bgh;d;Oux%PZVRC!)V{IBDazMndb%mkY zvKOYU`gq-W60ZLK?HNtAoCUv;-5Q{0D|(8GGawYNJLhajcX=RF4z2E@%368cHEwPg zzA&$qT|JOp5(p?0TjT$9!{6wifuR2R=3l_Z#_%uuAAKzUA9u0-|G4Wv-N%5>z{1GF z`hR-u*vrd1X*A_*%G*;amAA)cvX%GVr;%o|)p~q{btDh;jes6xeQhXiEftTEl at 3em zcPR6)3_d(CR-3_i6YTV{YZs&!5pEWVOk4X0(e|{>V!c+T4V%QI>-phMaHx!htu5q1 zF2*>>n(^z+_l=*L`ffId)5+8nhuKUvQ=Yi=Z8Q;ZrU*7voHbVF#!ibbI>8fgaJ`AK zn&8{@Lpau66a<2=wdG>#!Q5t_NO)IZyk>{RWslK^Dh at qS@drA=`JKDB`P1A&AGH9v z{V#WF9PlCe3tg6_Spgl)-PE_DuqA;#yf at gTHrpI*jET)`=caBLI1k z%U~sP70VdaGB#rjneKJNmUWz&t8DG3pHVRnh;;?wb$@B|NFKWn`%wir8oO at 452luv z5xj4`8NnplT;W~*vU!3hrKLOza{&eB09T-sm07p>UBFb|!g918{}bM at YX@hrjYVgM zCv?vXr?bK{NN1?8X`3S9c~)nSwEpX2>v!XP zgx4{<{gpRjR&&7Spc|f2adwBN>^Nt2NIc+-U$ldus94JgwoD!w at t1Kz$CKtr-eL6B zIoJoP!C79NU7T#r&0?#&Ew(nBnac?)sVAi>RBFLk$Dzm1lNXj&sj6zKAQO|4QBhDm ziS0v&Gp!jONeohTiFP`!vy>=+kxREp!_XcvPsB> z(bDZXj4;VYZt|gv$@^K!>1e4%$0j9$P2|M8=7=Fo?QK0+dqOgXaq-<#doD1l$c>Vy z%G|hT1k7e}Y>*PzNSR4AT_dNNMl!!|gLT^^wNX}6QVNkcdHg;76Ne9$AhoHDz~T>1 zOvoS>jOPuKvfDh&nK5i`ZEYPrxOq%Us**$-B3KGkqD>TAC at V~`lL845O!B|^RU`*{rAy2CIr z#mC$bLLci9l8jZ%+%~})YI at qbSeX)>flbQpSaz5F{3Jb;OsWjSRs#P&)sYKcCkSk63_&E(Adi?vkJQnrdPYD>8p%3D=L zI~P~(T}f3kUtwKf!Jw2Ie zK%a5;tn#sSgJuATfdHPFPPLpqiN<%eWHA=IEVgN%R7Zl}ddGRXmO$gh2~b2lSY10t at WEa3X)DVh4lJBD^`p7xppqPq!v| z$>+zA-1`o7_!fsFfQa9CvW5y^=iv{K(#oO5ve9+Y7sDyYyW;mT7Tu8t%la5=0h5xi zQ}@#cw at s642{D{@-F4XtwIZs@!L6aI&+cU1#zkgRLdvxXqx^h7 zO#$DNDJZ~S8St$r@$&Md%PPmh+J?jzlu^+_{Xo_Yo8bsiQWFgQJBba4 at Z9#^N)qFw znz1RL+uOVC?=5A%uYz{B(0yJP74UjzBx3O22WQ)EcwfW)z-WCN>wlJ`z-0{|rp=$S zDwf8RDy-a-V^ZJ2H39hp6T8=`tgkX2jot3PwC>?2`^LB&!bN^Y81dJBQM+$sQYr9 zescK-D<;u*;!6Qdm>D!Fp|&gQ=ekeQ-{;i)J&GJoH)*9MShk) z_2(|_%$=N)2{A1P>wmIrC5!uHJ9=dqK2NfFNwtQ(+}a>m-SJ&}Klhsk>E6~=)9Xyr zehgA^n7qYA{K+LGlk=^a?*+Ar8`#j|x3g6aMBHx_vw4%CTG4`6j~G-rBiy*kw$^)5 zT8EM`7^+$Al2V{ZHIs@<)ulL=G?*?^t%;apyrQOvb9XpG0C&wVU#&tcGc^NtX4osms);^8w z>YQ}-^=WN9*1yOX1-!rNHNUpiB6Ax$Hq`W&{~{+JIN2G-kL z4#*$SzSiF88LCEke6 at NvJj6JG4pwCaetV9PB!wf;BvEWu*=L1lw=L2^`IQ+ zFL5Ik1TL2O!68oGP z7bmuXYN3a$hca$}@G;CQX at LYe?5%f1E}fR}D`m1a;*EJK0UM=(cmb3QoePD|Fi at B} z9K}#M8|8Gk*j=HU&=UVM=pwLuY-VD@>Nq~^6(Uz7PVjL2QFz-m8SB_lIXctUk!MwCroq!YH4GPZ|9E{H0xDfPP88+R#PD z#nkWjO4(*VL at Huqlm+~q+$`U%-EK!`HA!7#G~E=El#`3!+u*BGB(S!d$^68$-mYrZ zYPUn4?5!@t#)I`K8J@?)1h)mB5872wQa$`rJrZ1K+U+9F3PK4S-W+!k0VgbPzPqSE zGgNmRHmR^k{m3r?T#zcV?y>=-XYD6)bDFFD3m#>(SQIP5S&zG9 at Gu^RU-JrageU#g z<7YH+?1Yp~%9CA%*+hp!8GQMZTMW}bSFU_;H(l{IP+^>hlW1))ZVxqj+Hd1>J06#K za;L1(wYo at EF6@>@R;qEVM+a?u?E#8E51Vq|tGA)KndKE3?w00n=QJ)ZTDh{ffP8|L z*y^{AH_LavA}qbiJ}sH#RoBZqma+;VbSgSEgcForDQ%I9X#1~`wI~TqB6g?=gaSz@ z^Js^!k##6ZO~ZDmNrsUM$Olp(YS0mlbGm0VN65O~<6g^B$+}&um&Z at CpSh2jN!c#F z=ftuj{QSY~QTat0=2lI0-3<(Kw8%V{etwyNP}zNluKsgniUWK8!mghqxGO<1&mC z$qgY1U)N&i`?OicupOihi4~!%n)JUB>I*e`Xdt%P2X~qvcq|rpu+RpF4O9Nw#lSneK`VtEyf7=sF z-#gP{*ZW~5s(A>I7CrF(NuLr~Y_d+|@Ks1WJqNjqV$3y5s!nSg6BchGZHcy$=A}fM zQ%J8wOhv!pf{E%R)=NQYQucskHBE`ui6%Sq5EuzgD|$%grXn*bkr=^5w#=yp?g7gGg6eD+D$1o}(^hc7lB0U1i)bWQC{kEuep_qBzZON-Qf%hrY5))fo}X&fR=zw)I$IitOcUoEDEH at v2f-Mgw?&@iQw5j>@V_O8HJ5*e86W3l1HGkA;-nf0?rdFHaA^sY at 2YKXu91~*x3wufDzUoc&h2dB7nyX?$NQD& z at B?xhAFk^QYGJDllV<)WTo5>^B*Q<#ZuxR|5h-lPYbpvwH|sU~HBn8$EgF|rm(t(b zPh{wJn3YcV&JgkWfa12=ZD(?RMCpbEK~&k)MOfbUvf8U(CO*pz8X((E&$)`(mVh$T z(W8gUa;ohV-&m?EBA!FIC>8(lmoo9Mj+a~XDPc;kH#c**gR-(_Jin8ZuHoR!hZPrB zNhvQi_cA4|8 at ty~@?U;9OgCdTD$B?B~ zT>)_@;X9N4YF^|6A(R4pa!kokfA)kj&n5{L--P zm at E+dC|2s`^0bFog|Hxi&naNEFn7q#T)XxS0xGr0^*Vps1*) zzwzALaMCX6Hv{k`{Wi{MUl(H_ZG6R1!OmQWt}^__}{bf|6Q3Vq$9OaGMFHT6RC3ZaWA zGl*G(+bk|KUZH01Nwo_~i~~t(T?o}o=Op~O2?x1YHlzYa`5VkdKtTLZD3#Oc%wXsC zboL(J3Y8gpFAObCfiK(d>uaM~Z^f{+2_BGqP(`(TlBA at inIO<%ZXv z>fY*&Lro)t>3Q?A&t*V%!0*BSLa4JOIap^(-;++r7sR&=(}#z;266^;9PJAH+Bm}~ z#wgBcra(UQioh;hE4PdF6}ki53FS&~5R#L646N at 6_VFcr)yhVIMG&^O0I`DnPIzS% zW~EzsP~g2_^;BarnM6TO#XyOGg8J#sTUn#TZUJx6DG>MaSrU9QR^3xLiC9Vp2QC<& zF7yl#(O>?zT#r4UWEp at 3ytXoqVQU|UHZkXr{53!61H~bJypdWAGtRth}9O^=8xwx-4CnqCn#-hplZn{Xvnm; zIw-g{h&7>XtsG57GRM!oK>cXF;3hZj?)5G-p6uGy*3U%MV(uDv8-X`Mv-ly<&jo7p zuL*%Gx*&ZeeBe|iD@$vL^GsD0HE~my`}&KI at 8#d+ycK$LRVRS$g{SBS8X}o<@xx-u z3N%A-3banZ!5QGWFCS%p+!j(}C83w&>`OXnC9-C`9U_)h>oktqlW*64~UypH6vPQtuFC&QQIiyhM9F}K8{mgLk+N?FkxQ9Mol3JO$qKxL|S3Yq*Q3!QRA7lE4pFr(`shDY7M1X)z)L~wfvGRGrT$A0*jEPwcpwyv8}?E>n60f z$9o|wsGOe;?%&STIyPaAMm5O2R_qugk$^SLw(eLsGn^%1nK8w@?t(kHSEqMocGA)A zP{mY${93_%!-R&+g)IVV>LidbsGzOCqVTaD_Z6A98wpxzb)7c?6x_>kDjS${R}R91 zdh$%@?yJ-qfzI&@n<8J=5+nPEybv`TXg_4Zo>tTQ| z^Y599=ADc*!?v_3*8CH77@{cgiA`?hJe?+HbBcA$%#VR*;J5<-b#U5`1s!NRWt*=$ zE=p0uo{+bRwSXAikd^$7nmFlAHVLtk1HXB9+J_aD*_cJ6cQ5AaGs+W|P$FPy zEYGW^Xw*8}Eb0zpXB9LR=r6PtIu3g^;FoMGCp;_6h)2CyJ=Vq7 at 88*tfJzPNIt#59 z9b05*9L(zX?h;P)bgR9Outhv7`S>dj<=M_=L4D&AE%ta$qw|P232O0|Bg0Dh&)Ssf z)BxD)A?v~9^`Z_ZBY*5WcCZx;tWU7v%zOm^Z+=6x9iy#1JVIl)6VdV2EuYtOu0L5qpad zyh@}ulEFa&ulDtj?oT#-8zqwMb~k2JZsx zSSud!p8E?oH$O|9y|q5&3hSobS!|q#Kfy+5(d?HXwn`)lD`)u9ml5rMA5H~7d zCP5_Jg(3Fh>m-g%F1!*yklPF?P>?3%H!BiGZI5dFBrWJk9i<2NB^of0?#n{9iLVjT zBm^Rs#owuLF4Yk`YI2e#*wHWeAl}4>mRLkoC1#dmLy-{9W0jaY5kK%i;w8yS87GjG z5J%U>%i<2MwcyQT7_z?cp4U4|AC!`KJ6++Ehs*#NjVNEz#MbwdbSib?KSfBUGXz)U zq|s+2nwEG_K!!yx5Z9!Ii_$Bj4}i_+j|s{4OAO4EGo2j8C%GZkG!fukJ~osP`Vr*i zdlU2#=4s`~anM25MUp={IQgpia{Kx90&zWXARMFE&y>d-9c;o at azhlI(K>@o&-^Mz z+VkC4HzZqOj-f-VbN%G{49fFBJKVkJaARoOTHM;HKb*k at Zc|#sy2?W1YbrGRh^65LJvBoWrwqLsUX0MY+94C~~ds!Qn zJv{gz0ndrr`;-2sIfH!L-R~yv2+?Hb8 at q5mL0d4o(>jPE(DP9^3H=w at aL<8JAtOF( z%Umkh}-dZ>++~)Itc79q1aUq%*LC9{%^l^1!PSHp^jE8EUG@>gaVa zoa}i{^VVW`1=rKz8&fb;CJ;}^n=*=nYl%IYG^QvwB<;F(Usrv1Z~a?N0+-deI=`Qe z!#DV_Z_7?X`ad-sv=}nY605IiE;kZA>6#txMvL_(zCxo(5vZi_a+Wk{!P>urDCfM{ zc at f&#_?7>-=l!YAD4%lA`>xNm_pAmaE7w6}02>sD4r~%o1m|aFN6CiIh1Z3oTm)$2 z4gZ1@(Y1QN9`ks29ZEu at u}=}JiA^kY4M`O{$ENtwC4Mvw7S;TU8l~*|nN?3=c~pEn zk&!k~08Go12wfNzJL&dugkJgOwLQTSvJD<4q;ja2191&8&sI08xW8 at eJRTYF9%&Oo zVpQPcHxzT6ysZ9k4fdzEZ;j<~B8bMbr~i6AfBx7~9DsTQ#u3E10cT1wu!lDt` z9Im3TiUcdwE4f4)qEiTKwve|m%Q*p5Si{_!;g-2_xig$jL9A0b^fJiNRGAzGk{wfq zdmvXdY4~D9%pt_lAe8L9=~yF1BTTzc-BMd63~S0nzA}2W26lgG38{5qSUj9*2`h(; zuo1h{;naBdax=u`bQKcVmPt4k#8Mx|&A28Gqkc-i0lp@%8KVQ3>@ZQ-k-4KYC;LtS z3Y_0{n787ScP(IC-QjURToZLKom4rea6e*r~Ays{Y7=m zf|K^Yk7Ki4_9#ZH56gqFob~$w$B}wol}#K($HMr56rx6gBL?&p7mnsI40UOKLG|}S zls at iDCwIK9SZDqaxbxi61pEewV*I=s&fq|n{3+R<3JGhnd*(PlFiqtdJ3zYA*n?bpH2&gKGA)YQwqFkbBQ{-V$6JA_cz zii>FMi^1QyyYkcZCD+O*PEaefPue?j^Vd?OcyP)x?D+zozR4QY=-xD7_?%k8zMAbs z%+h$(BUPhAt0W8YXe3Ox1wo2I5x*tKEoyaro$>1%&X?^1=0 z&&%(P5|&F!oY=^gqyE#r0u>%}+O;%whadSKayMo73#&>;mD0W3v*F$67$q!^xoJ61UyIUN zTW;}k_>j1NU}S{g#{ zwSc{yp?p4u#<%$ve{K`FzPip=TR$BS7W2MKHI+FgP7%HoSjO}7^EQ$!McsCZ2i!gf z)=DakC at 2-bVK0d3@biEQShfg|LE91by7IT-ZJxCuV1;<{x56(9s1F_jdg1=;Sp{{% zO7eZ(^E}1yXB4FyIOCp44q6SP#W9FNL8V^OApSq7R#0u at 6%%BD$3k at Jt`J zpY=1DkL||*Y*x_o<_^Y6$alYpLDek(LAahCz<@Xw0wW!tpgsK?dt)jArkWpRYXzoS zczvr0Lp@}oWAX2pwT^vbzcH1o-Kl`B6mkhu0-noNGqM6;&u~q|z-9y~j{PQoi#98` zbXyoM3L6^Ac`KviNWwri=!=NN)Ek--_xdpN(o|<==VoT(N=i%H(xItZZ&OOkS!2pg zK`h>9ygk*vng7{{*mv*LS^Jfji+&kyx6$EZ-f80KRcPYqsiX~&ss=F`%rzbigTt(% znx+CaslT={OSFNWms>D4 at eo-lXMrxE5qgwbi^Mb#AD at nk8Doc)xkD(e$XX<5Os+s# zy~C>rr?kt=kQ6Ql>}c3Er_x)X9S%owu!%G<_o7hnXgd0AWQ0WI5Q-fkM;7Yu&d31A zxZdsLX=v(f7#z#0^sQ025g&dV34Ixg81XiB^l~q3XsLl;@AZ1~PylleF_#)AZ43RW zWfS35c2IPm5h1f_ at O69`VWZV$df?0x;h=sb{WfQY{VXXDTulfG(>I9ch6V~AZ^ z(2ApI8|nw-x6;kw9P6N^1G&Ynj&-qPGwMbd#>wJ0(8h0iBy$)SfM&>R5M3dE3xjJ& zRaszOxMqPpMZjamw{NelV6L|kFO|SoiXgLJx#!C(-(eg!#xzW96jbZgmApx_W!e)r zdk^bHvh?c;HpJ at CDc`K3eW3P9Y-U0%Xa+n|fSRyAV(GM{>*&c+f%mdXvh+JT{0#vL zA{w*oNpv_iTtye3(Fm)9;YM?Q!Q*}jj=}e(s!1o at kazAQvaEwpW$Q4a8hyhp)4#`l z+EiNtrft!%oNxxo(plzP9aOV`Y{2$*ZC~oJ&23M)6Zf at d@@@G4-AK~;>{9wfI(~C3C9Eowrn!YJ! z)?oNp&qi~CI2HC(?4Y`IKB8jWnm%F#lmS>}1ha0K1>dI|CgSvjeE2!f9RFC1+kQnS z at TO3tMO1%7z59)v2D854RG0S2n#?w-Bi!_()g7|c8SQiKc)^O*?XSb1@)7?y4xjp- zPpnfJe}M<#bw2^B-2<}v__Lfb`f+%2xO!YX%uiD0ocmbw-x at sf=~cV at a6j3u&I;Z- z7r5O&oOLzblI|Xx$8UVpitawpo^SYdF_TH~v(cHtpb-k6*}=9pL2FjVG0wq^qotHc zbI&&HcK9rXoT0|84!+vV?Ni7GSHIcRa{3C>)+K5d$D+n1OLMy>V1-S~Z|7a0%Ca7X z58RK2t|i-Me}JZ!U#h+2_hKTNgA0e?3oWnl1tGf2{;vzDblddsac1)ktHLz4aMC}L z-e9wNXIp!(Z8-|NXXa9tg+3CW;tO2?yo1+063avqOUs+9K0t?jH|u_9zce#;Q(TxB*$}lg0>t51St4^)oS90~FoAgZ^vKFfy=0(FqyYi$FV^^9WF-6loXLN2$ISHq59(MaaoRSB9>)KcTO at Y7AaIVg8d1>F zB7yx%%*YEMGab$%n0yY{u5ayz)dGADZPb-_IAZc$dDAym at 2eauU1U}3&;Zj;H>mx0 zOIw0;$oaFk-n<@sP1J$>CiNnWkWClEY|$Idl}wY~(1rd8G`H}56x*Jc7fMxJBjn}D z$rc)nzFC5>2my?9!K~6{?k1pNrRFNB_3Pu`A9#L{w^6_e3!06QxUkZ-%X?a0A>?w2 zf=4PU!ur#FJ<1N_C5w4A at D+^3q!O9P0ZIopA>9NsibpgJ8-%y%Zex)e1ZGppA7kEv zJ5IAq4*_rDW;h&S2PCI+8f39}3A0!A0=4YAV5yL!^J0yCp2DVnEn=pAAw0+1dW21W zq8wL!LU`lf7z`g~7>plOhA+F=XNI?I;cC%#duGmpyWQ|cMPY)E0}{`uzPpK7II8on zumpqUWd9f8as1DX`EQBQDY+Or|I?eYql?LZ^a>g{nf$xC|8J#PI665CnHxC%Q;@X5 zf5wb|MWbe6>}>9&#m2^l&&WcL&&J4z&&0%p&q7a+&&dMm9F6zw3Xr|7-iN_TLyREdP7If3^SG|MEKjTao|c82o>RQiP&Ywo|dS_y at V; z|I?)+)c+w=2KxWGApfaU28Mq-{a?iTKM*e~6FdF?3Gr at wd1+&=5;u?*lhrzIpfpPiA06x;cfr1UkHOEM-Mi^nQ+Fq89yLLG^EizkdY07R5 zt-B&^bau4GG52OQyDbvObY)%J+6{7Emv+ctM}6cZ0B}w7`n}e1;ZM8uKKkr(oO11Y z$1(lN>+}K1n1?ZpXKZ$}e;6{0o5c_I4gA##ixUoArYd_1=#4 at UC`#sbLlfQoG7G^l zw_ at RX!@Nk`3i at d$zAb74SdaD4*dc48v6^cqy3E1kwA7m_4E!M0R2~ z&-#Gv0i7edD?LjG+!M1e@!N)e&};!{L;f at mq6egjzA)#Ez7xECSxV`3pDx~DUyomv z>YWyUr9dt}NebI<=mI?&frfhDRx9(6o+IG89pH=Py=Y-+v8SWTX>mkd>?8EqrslGc zW?Cl33TuV at x$07NoXX0ovWikIIYdfIFeCtoLT~EvqY)<~n`O|D5%Y<&Ce%bfrGT`- zgI^pOhIkE#0h6Y{#^KkmAT|OpM4xY-5 z;3Xo4VbMm&N+luEMhj#Pr6PKnk{DSqbV0}Z2d#toDE}NcH5|O{r7V5WZ>~w^=^0!p zV=yEUL!-j8*tWkAFHuDN+FCM%Vuejs>WGCFE+QE-A{kVZAAdcz!}qloLy$$Z>cO`^ z`5MecPL2&~$jN%ZdcPDj6PIuRk{Mn4bW at T{z5((jSgjPapG%+|^X_WW9 at xm;#FJqb zTMNk*R+}qX_!4zAED)IQrHCKw?d+9Cam1I^HUu)@1whXGm-9XuErmHaGa?gKmy!+O z^P$tK5(;{ZNq3s#>*7-3v~m0czu>l&UO=|swNvXYe1|V45_KBKhJfc7J*|# z^s9RxyVWGJbpd z<_K4pN-DF~Km%(4Sm=UwguN0Gj)r+Aj=8iKf<#HSL1a)2i$MS~U1 znu@@p_3NGa0NZc)!6a5n=g05h1z at Z#BG%##@4E?8YSz^wN0I* zT=B}FNTZU{xNwB7KgsCy9l^Q_(A&Xgp8oN`!E-SFYxPjQNSqSzcyP$Ih7}cmpXHql zai|prm=S~p7R3xQVw-Ic%koZ|SUSn2B{K0%tP>wzpA}Wa!ueX_ at G#h(l}l%aXhZ>I z0N8*Gf8j>Ptc~tDn%HojgY5q~pu3yvn_tx6 z6^lJO+j5A~D{#zD+GAn8H)f#0$S6|ese~3n`LL80NX$=^JU`WebI}`^-KhsIe=*(=DM7a>N0|e>MyVzJXyGvpHUYTg7@>(- zUYn6cQ*P at KIM@~Q`k-MeTVl9Eo2oPFe=TiBHIB1TN5rKK%$0km%LV&7!Z!Hc!NK0kxL%Gum*_VxMs z(J!iMX`#))+1*~=X2k`^fyRN-nH`KpGA at OE@Ou6c$<8=_Qd2bpqx=H9a=TcNF|Fjx z at L-_GJ|f=(Dg+#*M6>(o`Y3F3n&LWxC6kxQf at bS57j!W z+S0!DY^x^DH7mMjzdvlGttj-nQ{S0y13a}2uCD_-ItbIHl1&xs7I-A|OW9LvW`aX0 z`q(6XrwP>nT_>CMwuXiZ(Z}X$TYI1TVVT=jfL#2p`$pDeV%+Zdz3A9Lgo^*X2v=#jt(W-qIRBKaeu+A|qX$%G6+r5U=(Q!AAPp9uy?vAm;Fc0r! zzQH7#PjWwhGfa=GgDUq2pdY7io?O5{AamBo*SolfOtrVRH#d(Hg>Q>*&|HqeLtuZh z7;iMbDJIQ{mqqYDqkneqZXc;l2*G&6$hdKOPb$iaT0S{*i%t25lW={r{o>7xdt($) z?~nS`0+P0p5b;j$$>Rb%L_3^bjQ>Ke?hm|iw`JL3%e}Om9O%cZ^hys2x_1 zfG3o>v=QS4fd)ejukN1^ap#gZrx at UQvubl3Mw}~N7lxurQ3_}h2k2;iLJdRouLTd;@(0Oi7uGEEXbR0d*jP1c8s`eQNsvKL;{SUr( zSS|4!FYA^>J{bwpSd}$Ar5RaDJ{RA;%z1!8&s;U=RdGN?PPBZ8X!k?(xZ6%Bb=Q)$ zmESYYdX42~0K1?n=jYX-V5^&KzH)dF-Lx;fJxz5B;6eE(As(e!e|R7K#kQ-O at uoOZ zh2YX}7!a&_>GJHiENE6(q5qitk^El&6#mxkW##K**VfkC(&JX}E`IaAe;lSm(W7Dw z??hdr)ZI+Ti({n0(xJ5zn~>OXN9f+~#uU-Fu)m~&e^uxc=P3j)3>cIupLL>rAFiZ! zU&%>`R1Ey-c+9;{DBf;1EEda+HfC|NrQ-0mwfi&4H$itC(>J#UopFl>=X-odYI{xg zZe?8xi_sw)<#<{mbo=F7?Ecl;V)a@>S32A4w{P=+@KIuk<*$X2=! zR0)~E;^P at +;faZL+4*$R;&Yo%L}>0alF?$EJDU at c)6Ix3cw;sX%eAewbA8i7x at 4I5 zLfbuS8?2WB4Rqdugl#egw)Bvcv1%CXZQ8;CpV(occ&MG^!cG&PR8kR=vcEi-3PBQ` zL)Eb)I5~x!q#%q3L0>LPB at V?$+D~Nm%xS|ZXXb at kdC8!~-h-hSFhtZG zq$B`&%IL>i4^M{9oPK);e0(&LaruPA5)G7DTXdpHGK2FSV2Wv zOS0~>*!z(1(fcULLihAd5H1dn<|tTpNnAmW at JPt+5%8gg7f6mR;y`$!Xpbg2GGAx1Ui z($atf>Wg0;d$%KQ)9}jmcT+>Hvk7CwbH|AT%9V!oNYWSo^Zj!j62e1c354Fdg z at x`}?JL4S<^XcP;eQxc9#dIM at c~$6%W5-j+x}(O9T-Q97D5m4qt{e>6QBryt6|-lG z(_&tw<4UHC3$-tCO^?U?K74K?0f^j$;cnn5e^M+q at Od(ynygMKOYlsnRx+thP0W?L z-9+m3R at hq;&kmr!PrS8d*TYLoWLP(w*{%jtj(kKA3WoiDQQcWUec?o*PI826>Plfp2bM~ zo<>3$u0v at Jr!Velve&Y!49{N|n0o7cE>RXn%dGktu`q%<5WVe87FZ$Ia^KWl?V`Ud zBO9Bd&U)Cp+#Dd;J()1a&T_R3WM(aJMG1M!sGE=WQTbNh>UFbfNWeyj_d_lbd&zZD zA?R}Adx;rTA^S*rs1oG(4$%^fyj$lAHi3cR%B0ir+7hEE^33ZagA<@UR z5KEtmr7%ki at 9aptH9SQKqp}4coA at 7$&RNd?{<{|S6ebj~sCt6jGf at dxEe55ubb~?( z4(J7GUL}c<8=#-QcT*~|OF@^wK#vV2k;dv;marl&sp8V4GcZi?R_tRYz)6^q+Ssr{ zOieCznWsYZ)g2J`yl56)D(fLo$MlJSb5|V at Bj(1R7QdY<`Ov at NHgnPHp_xKKh%)R| zvwr1DC<}7X!eJPm_|r~5YR?1))3GD>zV)P01}7O)alGUqsxOCjX!z?2Es>AKu(a at c ziDusMN5+A9yQQ!?Z{yRqOI<@JqcwoK3_Tx?09X*(WvDX2`wvrI1v>ZoAygW&@o%TA zNk<9W%g0$h_rnYF#WiGfjQ0U~j-vSnwO7n)?`{3Z`vxppOY$XBbMGrqzF+(;kw5&j zya1qi+qmSMdQXb;ErcVhhR$x}FBnv4W4q!y8!>454L2T|aQ1v5Bnx-=G-aO&j%ujJ zO(ifn2Zm=xo=vOPYs&7kPGOdsaoj6y$Niz^45yRuCt#Y#pVcWv*H*E?me(DwhZ|gZ zvAfULLM=1VM?c?{9E-&i=O0`4t5>m-GlF^JuH`Yg!5yZAkT`0RaZYdP7)+y2Z at OSj zV*%lSE%mHnG`l0|)~x_o?3nG?`WJNIx{&bz(;HTog-^A}XkbNZ!0Gw^i0BYgptT^( z at SydGzdL9m8BDtkjiWViRA+Vt)Uq9S_j)WIWZM*Kd{5e{1aKLNvwf)-Cs+CP^>jZi z2e>;7S6AVrxw&<9doQaN?fzG1X8~2!w)Js at 3ra~T2$CWoAaIiI?(ROop}Xr40wRK> zG}6+IbW1nV0us`pv^0DN at AJLueRq7{7~dIVv(KJuuDRA(doCD<@%ztxJ-lLNnvwHV zbrnd)rKLF;5TIw2_F<_ zN}B`00>|<5a!u${Q}4W9c!wgU5LeDGiOuNTa+y>{Y94>hLE(=S>D(BOZO!oZj_`{( zw~u36q+LYTAprEXzicG_<0)#AC|J^1M752XT9x{NFin`SuH-$Td$@X-Q5BJduY>4C z%tS&)bS2jzA2dVvtG)&qDa+P at a7jNIIZ3p}7KeD$4!H6tS5YZ#Gu%sG})tV~JLOOGrt5oVvrMtZ$y{ z*5iGDfw?!n9G;CT0|Sla!lk8TH%@C-T2|2pF2K#H84%O%+j|#)GTNUBdHJh$muf*?iNo8SJrH^})F%62pBKxqVi(Q7j{Oltu z#pLD($p~ldMyZB7fx at ytlNFOl916qoJ21Wqdt##xk{E8`4LySiq;B%z#40u{3B^i9 zu~^xro0OaAQp?J1EThjLROlV0bOFTp0`Up)HIgS|4MI%OJr at NcKI-Q*EGV~uk&L$5Lyuo{~L6_<25c|SYL;2~1^!C%2xvHm23zEAsD^N at URwb>0_@}%~ z6n+_P48GUb&uTX{=%hb3K3h^9;G}~+$`d&rfJt3#p`3VQ%^k{&LZt*&W4790R8f at C zsqyn~o%U}mi`XD4fHRHanVud*xO33+6v zC$VOe!Z4zcBZ}o0Lf=7dvI6n^bXcP^QcVy`rL1KYj+BEq|2|3eKEuL&g_sleMFY9! z{Qv~#XaX-I#G2fyk0tu)RDt2k1Qk^c%7GsMqQ#0Y9M_Uz_HN#s<(tj#nA^G_EiGdv zthSq_e-uEkuo zlnf}?F}ktg-|06MYC_;+Y$mN|bnU3%O+8s6nIOu#ZeH~E;5>bjm+QOvVDP at QVICn9 zvvif><9r~i6R^u4Z-Uj7&%fylojhGNbgsGdlLiOK$=WpgyW7nNBa`%o^xUVAhgRge z?;1Q$ON`xcOH1mO>x`{TbKF*z*se-;nT*6!oA+ at W zAGEYb<@O%&2Vw>syA#2BFaqXbfQ>gjaQAURoOt3A{@6Qx at 3q5|K$$pC-(tM{R7M&P zegzD;AUv`84h at IZd6z^zUJG|5W5?x1?K&dPEi6Gf1--XN;g)9{H)#~a5iNB}P>#BD zUzn7^9*bmI^Icb-glvPBG1O4lDpIn^a$l2gK$m-Eg*D)_X?}3Zku?(-^@rDU_rz3( zA8ZfLFrLp_*AKWwpHRwEX6KwYXtb#&vQW(rhZUHfDRkhvy&}cWo$jWQPmH4C%bzPe zUNW`~b1bK+A)x`%=o5q};DjCz+}KOO5|irC5G<4nr1prKkoSXUSEoVJ|#a_ at E>f^ht`&$c{;7ewJG~cmiO_flUX at aWI!hJ|$V7tSz zBoSK{^nZwX&X)_s#^i at QVxd>r5A2Gj9#UQIailAMB$4p0?wDtmn|msv$Q3DuJQP0^ zS(ofKF8%TlQ=a#Pi=JS%X3}fP+h2#96t!H;H137LGEmYpH!G?e|6qLj{8rCq#%a z=AJHYBhknysyoP at Slj6iJ9+EFd2zP=%sJwfb>#P2W}nHlDb@^KhIP9Wu5Uvra%9WC z)oZ9?8`t0Jx1YQ`AD^0>IAo|I>Cj!{vr@|IIWHwP+-k!WZw~S`(P#rFV5=XQLA5?T zS6+TyFInRw>nk~2G+wiXX*{yN5qgA^EE4M8!Cm%gY0v$z$-R)IQopCga(O;$zJFe$ z(Rv^hbDiaoNuPd=VvoL2qiNS2%FmX1lo~Xd5|8UuUbUL!&?Xrf1t!eW9!{RA1Qk`w z^>=zpi&?VQW~YxkxIcvpUCBWC_<%|(1RB}86W9~@XWt#=UPt6vw%x6v6KJteqB4T;*5{>P)0rm8RlEd#xIW%&Y)4 at K0={_S^^iC$sUqYb#XEuku_ z;InM78loy!jXweUUv6E-d7JWX+Y|SW2JDi$QMeM21XbH-&E3h;`xiZxDtESu;K_8nDf;GA{lCXJBp6rCuf{O*Xk~b0NLa?i%hBc-xx=ii@?nA+(7p z7h;XJg0HEaArf`t_Qyb!@p%1seFMaOnomn(5~=!HqIzrKm$hLnPnVZL*MVUYa9!qQ z>eb<>-UuJsGc?bq0b#MMIZTCLgo?Rr;y&Xmq961kX`(VQ)7Wx8-dC6NyPMb8b at yGU01512tt zC>uTZt6Bt0qLbkmlb3Oqta>}x2gC3+A#U&nW!y4otmr=8oN-I8YJzek*jei&4?Ou| z{@$Xm{Hn2{hUF!UG(h`c6)Uk;)yBuJJgwxUw%~&}smA*WWi-NT at h*4yu81BIxTA0v z+S?|j at 7k&J59<|?Dpev-YPOSQAS0->=WS at mij;@Ae2;ZgSQHKyTniha1(7fyR#RvE z{0%x;Aq|EOpzpPEaO0J)C%gBU)`0{lKY!KA zi%Cj)DL{qly}_C$xA~fWu-!zI$bndZ+Fp*V3?fa~YDBCYf-vJ zVXvf5b;Q3Lw6W2IQKI)IeE!kVFba>0x%y)69NV447aDH3&99hF8%by*-}_x;jeg)J z`96X5nUm)+Zmm22&X${8?W1^^ZE}EYLiy*SZ4Q9u>~Kzi+0(i1Pa6J+D8StiT?6j$ zc`~Uw1KZtXg?DhFiMk?K(rCE{zSh+QfnUh};A0lNcg8h#Bq>%i+}i5ec+12F3K0=S z(!{LdLn|cfq;Z`qT~-DPCERz<$7nk)?--#f(8r>`DIA?xnb|Rd4oREEI90~5R4iobn3~&;y8*WcPjWKw*8C-UUHNZyQ0}S?KR3- zjVAbi9-6f-Cbr%$i{V|PkmE`aXH=1ozZ>sS)*iDbr at FKFp^XKgW5bmk*0xf zz_>w;Mt1oi;q7_Yx*p!+L&1k at ZFZg|9`J^;s_3gTm79Ene!8}Ya*dS$?$bFHTvj at SQ%+P{x>zZjqoImY=v{~FHO;Xp^h}w=eN}lw zdmwTkbC7)S!n#Q6lXBm>T39MO<0nSJ#y`BzA5g7kTyZxQb<}5a>y&bI;0j(XZ%^Tz zCKmbF`LZ749`4D2H?+41M$wP2^POiB&M*9r8p4w+th~hT2$ncwhS~L2y6Dp*tZ6|P z6-?Z#L}{h7nx<5B7oiK!u%)*3j=!jJQMr0AKVIn|x$a()>^)!F%1}XMOmypCf6S-} zPF$FBRd0x)^ElSAYji%zwbP|bSo}Dt*SnkDDD7}z(m%uZn0c_Ppd_TK24Sl^sl1^3 z3g01r{p#xVDRmp3QHo1HX3MAS1S5KoA-9!u!Xu)IW-~FdakGz at V=0>jA(+Wqa=Ef$ z)f98%2bcnU^LVVOyCOcEP?xc`>$4*vpWTDUGL}SYy=nuq&m$~HxId5%G8ChLhM80 z)+~cBou5~KjCUlD^~k=SON=HErYaQj$7vye^C^fo(-I}f2X$3C>kO at 6!%q` zqasO5PhG+)+xnsYYEAXIc6;$avJd$o-lxZjd+|Kzeq*6^QL7Z1c23#C? zbo47YQD at BuS9?!`m$s5K#h#r!;ZWFC at HDulCA55kE+g?}LJMM&JG|RUZ=(C%ao%}a zTdz;m=-%ozPNVzu>;6JzU&pV`wE&+A*Wvi!z?U9Fjc3 at Wfty)qV z`p4dlqobqwrag4mYER^UUv+v`;YYad9Zl%wD+nu at DVPs6K;kX420Lb9lr_22?dGqD zj0nf{pz2~t9=fV|_TlC*n%AQhd->!Mo*I at otk3WeE|c8kB|HWaTMw{FpvkhUN`-g| zr{SlsO6T%1Yna8rXDP*ciNG{=qC*@OGv(6f8$!TS(c>$Vr#KH&wFm#0h#@;3en+fe zNvu$ZmY7fUcmxbFygM3vJv5%t68HTN{K$p4BZO(0wS-2~`;1ny0_|@tHcs+t>wOje z)%L5^3e}J_YjgbPLCgh?nR2N!Z(=8SCLb<;okU9(UK^0b6_+SZ-3hCX6}D(Ltc(+N zvoR;Pin7jG_*Q8$E9=-{khHrBYG>gg9`5?=v6tZkDJ~jxwyxZ+w)nOev-)L?sG+0Q zUEJgW0g>l`V3Af6CwL5M=)zf~&TiGZd${D&!eZ7GuF8(gpL3eqd(v)Z+V_;Nfs zQ~YB)v~Gx~v_cz$fx;}h9dE97NN_o#S4)(*gl;P4$)1es15r1o7aSaZaRy at bp=BBO zNVv2WQ5aA)l0^cfTbI^h86meDZ~Ie{V}CaWug5(TVwHAqA6dI zfL~JVXaG7V>yij+Gc5^~J#2SUwcPeO7Rdw&!H0>hJ+4{mEh{$)MG@ zm3gu)`JYs$3l3;ki~84`@mZMHR!Q(vdbYXitfmlp9v*rp-)3AYnAtoWW at 8dOc3`rs z_i=P(>8X4;6E7!GxV#p&@j8s~8hsW*3{ouY1P()q6pRiupa0MVovp<5ZX4|GTyjrR zAN$&tm47c}*u7S5ahafsWIMj06qvrkGY-9pLE&kVu8}${OInYH5S}_;n~WX!vS#0S znVlV2S^2L$CDaNeONhx!dMA!lIK`CG3OsCgS0q~GUQ&^>RKi>={y?=c3)S(nBdfdP z+KOPCBe*zWVnwA&`>{>EyQ}uuGkp;4TG+2paLuw$rn%W3w~I>M?0}E=wQui^k-k~~ zk{RAb>Kf%B&kUY3 at QcE+=hfBA!mg|wUX_n?*4I+vAIX-lnGS~r`l}hf&F%;|e&BA- zFByoa7Q9rs5kqr$7Ul`N#^%OdG`C}&ulV2tmm+!eEEXb*A8KTgAcVRl-TvG$)17Qm zu*8KI7g;3;L4&(JLb0(ADU!JVJO_r>*E(S_{fCpe_BmdGGH=35mW_M-u`j`jktQRg zl^EuOenZLtaa0d>T%v4-(i|8D>vm0IroH`&it|s=P>2>2~fTR;MSp+c1If zY-C7yOWaGjJS3b-#-3%fa}2Q-k{YzJ;6$_eWNS;lz(q;bVr-)Mh%yWhD*}5J4xjj# zw3!iwXs1>AI1`fJ8!@4`#63&RDSva00r at ZTntTWov%*Aqf}c)xIj?; z89=$2dq{)msd^C|SsF1$(CPT%UeA16{+Ev(d1aVu zR1{&sfi4#>rD2Xd-MP!ODt_b(4A!jQowMyfidf!y5ukjy8+;yGUf z1bGRl0z7u>5tiPb?%uD$+4asH`ZmHM$R81~<8&?4juBmSeckVkUD|64xGQsatV2Xl zhZ|DPacOtliKh^b6CoS1J9jsfjUsgSOQnZrU1*tL%ybHZAFbR!?rbj(~i>07b(e{5O;}WgRzExpSFcbK=d_Tc7tUc6Li^uCblDiIZteDY%encx^EK_=v#z zhA|h&9Uy0MC80KiFSzaJCON?{F(rJu0x# z-7rq9OV!-|w;~1B^(TzIL?{vOkDIW+l$5xTJ!4$>I+Fuixyge&7gX}3ht~;pcB_S^ zBaAJr2#W*#2*mGBq$#J at sU0Y4+va0^L+`s`G9agT`Qz1$K(Y2_^U+Xz0qEqTt*v^o zi-T_-tMbL^z87!7eEwRlS~%x`iQ<>S&Z{&Giti|L;d$p-gbbsOjDx91K07iI-1nR^ z=bRUaPmX>hJ9{g>8^-s>E{nt5$l?_#2$NE)Z0C@=86K)TYAO26M+F|Oke^5>(eL#+ zLL33(D?aYIX)q(~#OJ3k`+K&N`{!RZ0T0E$;{L!Lu=aW9a7M4+b;V}jmFV0Uw%rnp zSnxXZ3S8^Du^BSA2nyIeUOaAN7?cg74(+w@%<2d}4j9Fh)pxa?dk&fGQm8bC{h zzlz4Y&tl!Q(I83BYP6t2p}@l1>3yghFnm58)!lQ}y|-dqdkq}mqvloofdW25x&C at p z*Strv)gs96byBu_X|{);;HRqhTC{aMxAi_B-pkGC{lYpY{}m0pdGi{5;c1w_oiqds zc5{m44^zFs&qZ)zZ|BtYnDrdY4f8Fl<@yezWL$&RNEc3GQR^olr7hIj@$M1 at L3~)N+ zK2TW*Obl6 at 6CjFNUJR3UN{^e^*uKQn((z__%F$=%DwdKAE_VTwl-trjvgsoDz-6sh zMp#(2;MpO4(}NmCN;0`9b9xk1GGtixE!q~Qq9aT)o78$jpDll0Y`r6AzAKkL*re0I zW_X#H+Mtjsikn(3>S5+))H*g6_XtBUqZJ1wW&H&<^hj2rJ76m)H=xZOzm1_5p>3nk zZ5OQW%^m)tZPOwagMZ|eu{oM6HzzKBAQ6)ZnL;-s;7v{jmE4#DxqXd_ZC_Fo#m?pp zDkTv=%|GzYKVjaVq&*M_f&QCM2mYln_P;sk|A52)LG4BU8MPO-vo`r>&YlzWi?iqa z3EOl0zd(B=rO)xtr2S7|`LC!w at KCjc>p(4Ze-*84_Hj#|C-S z&))BNXd7_fQu0>ldAgU+D-iL}SIWkdncO;6=6RZOrKMqIqFgm?XaiA9( z3R%8)7UlIl>Lew1!2c}F+ayP}GleD%iQ=2Bk=3oG#u}6EJ2}Vfq!}Z*dd5lV-3UIq zi`)(RrW at LdlWx1HowOz2$oVwO&jPu;7Ys-Gy9)gC0urV-Ddf`v8P_{$6y)7IX?uQ` zPwiFR<9x#XHoi~R?~nOs)h&12#ceSgmBlFBIL9Dhtd{?$oP_*`IsbR^{Vx#y|DJ>Y zNZ^A(zY+Lc|Dxu9((_1i{`P!JgtJWGrOC?0+Kje{R6v(EOiy{5zZfm-^b`K#!k9-?O-tKgd{^IO$OT)Gyp#irBf_uEk&F4u6*ziNKI5AUiYUr$&zT=ZD5( zQ?Q5I3K`!Di*){s#ipsHO>OI9ZT;sD05Y~L%+~CgsUwTHGUIPc`WNMokc+dqog=Tf zn7BAnbOZnZkf{RTK)zuY0RTYA>z_7c+b`Q~J3ANh5aUNq9{Df=r0VHccMhZ*vd?WZ z2LyRW_T>N}-H>!N>#I212&6-}>IhM0U8H z4j9>XYX<{<4Ub#_QREX6o{4fJ+qr;1AQ(AAAb^7z0Av6F7#RPuvhI#>Q!D^AkP8bL z>0d8ub|@4Kr8cGh(*}Zo*^xO*fH?lk4+6g3=D&{tVZZ%z{x=&30GV>XY|f4_q#n)j_IVd77M^hA?O;>3vqSEI ze<^{aY)$Q`fq$xi*rY_Mb*OoP5MdBhM3 at 7@CCbhz#32p at 0Rcd$I0OiV2y+UHK>4x$ zZWC{!2ZW$+M Wn4|O0v;jf5pd46qbYcqPSpNgsr_&w) diff --git a/acqui/pdfformat/layout2pages.pm b/acqui/pdfformat/layout2pages.pm index c7c1985..768fdec 100755 --- a/acqui/pdfformat/layout2pages.pm +++ b/acqui/pdfformat/layout2pages.pm @@ -236,11 +236,8 @@ sub printfooters { sub printpdf { my ($basketgroup, $bookseller, $baskets, $orders, $GST) = @_; # open the default PDF that will be used for base (1st page already filled) - use FindBin qw( $Bin ); - open(my $fh, "$Bin/pdfformat/layout2pages.pdf") or die "$@"; - my @pdf = <$fh>; - close($fh); - my $pdf = PDF::API2->openScalar(join('', @pdf)); + my $pdf_template = C4::Context->config('intrahtdocs') . '/' . C4::Context->preference('template') . '/pdf/layout2pages.pdf'; + my $pdf = PDF::API2->open($pdf_template); $pdf->pageLabel( 0, { -style => 'roman', } ); # start with roman numbering diff --git a/acqui/pdfformat/layout3pages.odt b/acqui/pdfformat/layout3pages.odt deleted file mode 100644 index 8e9145864faa76c53f672c704a1415fdb7a0a741..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12973 zcma)D1z1%}*QUEm1ZhD~y1NAF4k;xLb%=9-LwA=T-6`GOAs{6w9n#%W(gHu|_0#Kr z at ArI*v(GboX1#0H%Zwmy2nCwA at j9`5T5W)zyG6ETb0d|%~AX`RTBS%}szZtv3|3`@KQqRF4W1xwh z&37{pRwjt8zO5a^K;MSx2M+13%6ljN1G-DxJMt$^9{@12FuF4XwqXL;+1T9I?r3QN z3#BN7c<(e6%>CD${JT4Zccp)tHMRij+Zz3J<{tm2Gyl{GE3lQF)m;bJ{ndzn!ae$j z+N^BACN at Tp-M|$6pl8$N at V0=zqW`>^ngDl$K$nZU5*82UCy{M z1I>y at PEtDrTRz&aQeEu6eCQM3+~KMW*TSWLytLaiZt0*!U`%?3Oq^1C^Uc;Wt$JSP z+fgDS^x;A4#_LB0ITm4T at E+Rf1FPf@1;Cx&=-iQF7=$S0k7&WIRQ;^QBG>}V`_hk< z2Y>)OSVpsF{3>!W9QINV(34uGJ>PtOFFcylON1)IP=MH!e#DUpX at 24P|u?i3T03> zu;%W_ur>`BjVbEw$+H%heZleWuuGD?1ReIZJopnhbv{*h3_XHqa&@)8-cRHh;!>Fh zkIm^8*Tv}9i~HDY*VvnJ8!`wf(4t64_b-{*dc at NMffjg$nud~5M%&t4ZH1}C6vmDD z5+2>^6(SaA>L%*|sxG4F1Z|x>YqC$auKDHuOcEkEzH812uF4>QZKP8>Y5p_I)?iCBi;LWxJO$*O}dila19XTbf)?FMst|iVZsLF`p;Uvl_5*w7T z6DlcXjc;J!Q9872IJxtgB@$iqf8dQF*+ScC5c&cc>sFniZ+U6Kk-jvt5OpL>m_*Sc1)%;xs3Ra zkHJp#FhVJ at dS9YN5Q-2pyP}qQB+6XvNpqIH9p*NqRt_rbWr)eeQ<%91P4=xkWv-5c zZXQ%>xt$@WQM{Bc^(yqzHvE#1sdUO} zcOxa#qQE}ifT%-kq`%%20gkvZIkn5}-=ChW94|o;WN<=>G&4a#W`hMJ*DcnB$-iw~ zW7sbA|0ps!Ij=Rq#&=5(U(2*{byd8!*Xnr)n~M40DJ;uOSWgM`MIx&~!aw#~*WHtRW{tl7?^V8tY5 zt>>kFBj`{3G-n2eHAhTbipVSDI3#~9&+W!&Gf}(aD#AhT(hq;pdqSeh z)7V!R#JRzsNO9<)tEAh_KlQBeTIHObSiwHsP_eI3T!tecg(xeFv25vj~}CZVDqk|aT`T=+B?X{*c6vwh>#6)CK<>lmXO3< zLQVRuOY~DIzXaYyG at TNF?*dJQjXL?WOp>kM$7`pXbUDp+6*>BH1}CT!WVss`xaqu9Q^4>zrZu)M(FjXn5hu4C9xw&gWH7j`{2LM&)-6cUA18 zs*~^q)EqdD7%$EZkCe%(X_fM~l5<4iPDlF5*F|`y%}AHbDBS#>9-YkYXL)DHv9%vN z)sE%K1tfC=FNB0u0Ns%g3WNPR51O|NBDr3p)Dosoua3VF7)tTVq081gKns6Bi z at _a(%G=8lZ{rMNUF%!xL9X`e6gg1G$60z?CYX!fZf#H`)Vf`x$T$Pjq2o)jWEG=8_ za$G5rC7>I-!t>$pgbm)e3|aOV z8Ev{}a0}_NKzGJ*3qg|iyUP4(B46$3BV3iOID{HA>Cf<6#96t*M*F$y>d|4c`3g~< zmyNpPQ;K4;P0zrANa`z(a*p!LQuoRSOQ07WuUUBd(ggq=;Jv(O6UgQ*dOchq%>8S`(V zMcmq&^j!;Jt5POpU~>m{z$Ex_R{t^M2=aRjoa5hzJG6!~NeDXOz3e8Di^X zVFbC~a}8)oh0So{y+3_A-n&j_tO$}o`HC+EmLZgSiW~LpPE^7c7v5T)n}Qn zMiNQBYUr<8_Kci3_W4i8y``QD!+-JmAfG8Uu>1pJOr%)2q#^uxlh1Pa(YG1PvhfBD zza{sUv at fMOqM#2KHuY%e)d-KqUB&5C+VLeQWF8W!EV=Sxl7PF|N#0;Oxk)-D6em2| zBP!UEQXL1e at lx3*K~IWlKb6?<*9QfhJtZZZFPw at S$eYLLSf%-fBzC;ejVZ_Y(V~c9 z)w2F+WD{YtT;E#Kfarsr2PEAwea3o<1MU#BuFcd_L%Kd(^kK!^?o zo-dMH1OT_|s6oz($9A-u6j>!+k5`EC98Hw8gK)KypyfF at h>%c-wBP$s==8>*Z>>vuLKvXxKaGbG~vf at xmLCg zInP50M6ZX9stVh(vLC^J^j~X*dKW>N>GURZk=J{5PN}DS1%AoViv49~8T0~@soAF( zXOt?3-DlUO{Fr?!4`H|R*!#Y;<6*$pYt at d9>W68H_Ejb3%R~IEset8cN{fz#3t8de z_R5g>Hf~LIGZ{enlXP7cIgHvi3uk=jLDJ>&=VL>sNV3Q;R7I%bl?FCAt#ourbW%2b zO`w)VKAWCi5p^cBQjCANxkOuy{}d~>kK at yz*R>;_8!YYep1D*WY#3SXNV!OXRkV2P zJ)76z;n~2X};}a)3aXw zk!-a(L{`~HQ at kCEHyyUf;szLN37OdO?32eiW}ox5J%y4Yoy6RoB8Z6;gjnH+b7ZpZ zeQw);W at wW=_7h(r)Rk%G{dSQc80lE0R9ya+26~-jX8i2W_8O^*bn8!7YpbF!qzu8* z<`m`3%sc5(&r!0g6yrw}IApV?975WqbH!R%)Ug;iWxh=J?$K2Nf%+xXFj at uN{&g|O}S>#RdOvJ`ei-F-REq%W_U zQAoAg^RlE;T$FQ|(1sG;M3XiP%efw at j4Tdg3zE$Z&s;-2-(b1ojw+ at rcoZR8EX+iT zlUZBUn(Xr87FJq{Ov6Bq1U)9+siY!|Ze2Ei8(WWdU3PI^%edW$i#c>J(amMWiax-+ zOY^KIu!|bsPO{Dc#d(>dS(%yF-J^}=>L6rz<;BAErhp11MSOx6xqoR&3KY36^Jv)vAe4B)oGem>U9o zlxKuKy*zg5;?gD at Fpuae#;Jmf^L)PAAco$)$=zI8Iu~~6mdjPkk8v7`E0({9f7NlY z5Q}3=s8Ry}c7o;tQ579dfCc?X?+cZ!)JQZQiN%<5RkOW)(88gZs6A=nY{yn=yb*p9 zQAh9~cxPMGy17YFXYwvN?zen-EowcdLtC=ux19LNU9gO^MoyD6;(bWU)HzbX;2$y3?YeiqG2D(oRf^KDTsmx11G* zaZF4S!{wb?nV)Yv@}$UFFqc*H4t-{vJb at 8Ba1*=s_`1!Qyl3;>Jo at W{q*4IBkAa_x zNi$2*;5t_*_DhK2fZm2bnbUfu6DFqI!MmC;zb?lQ)k`%}dXv;b2&9u?Q{HEvd at A}vtvItrogpKqlF3)lm`S2JdOr{I z>b7eAi^u&+syJ(+g>$!(CQ|)eN$(cT at 6iOCfaKu}I4G$5>wA2~$X5S;9px9g`y#hD zvVq)1SOh3p7?~-_jX(gfArNFDK&htsf`OY-NDze|Y-|h!81eoLx-i^DXY|SMpdbkE zk0Jp|I~x%1_wWoaNZ-;3!fOlQ{XI^@`@1&p_lkbxI9dQf<^q(awzgKhOiT_A4vY?L zj9?oRCKetZ9;WZ5lz&xa2>6elm7R^ncP&Ez(_K*JJ`x0BVqs)q`l);G;s5H?z3%TW zfx+PaRCM2lA5HvT9V;_4JJXMQO7g#Y<+tu*r4;bvz8rtPCvNsw}L$ zcOQ1nztDfz<2MBG{sOSDFfg;Lvas+n-+kElnSK`jsKLqxco$MJWH500C$D}h{Z0M< zd&9=d!NSY()0^+8A4)$^MuvCo2bnMcoB($_L_s#zzuf*K|L at 9%e}x1E6;)Z7CE2*- zSeRA*!2L(%2l7A9|9uD%2(bkM$iEMVt-gVU5d#2h2eK8QWTpI(`8|g9GxP4f`mPB! zxF6R)bFJ>8T|e`F!made^i6E^txSIwu(1DS!vSn#_%oC3XC}b(P9Ja=NBmjB%Fac} z^w$Gu2f52PG%^N)j0}JHasQ4AP)dP}!Q?Fen;Pr?rpETasj=Uy{q-X8-uKL}yZ?0Z z_w0WU*WJe`RZZ0HU215XAtC>&)4=;;$M8x at l@ADWU zF=4Y!^5)th at d!$4Y>{x|cTq!1Vn{fWn`+1$wn&7IsVx={Y?USx zsrxf7G at VnD0jX~TFrc7 at cDBrJ4jXUapu(X&$6B-lyemfUew<{a<|JxL4o}cqa+@#C zwlXeNYcE014h at j|4;H9a(^E`HGxRZi@;}Powtf%_pNnborWkDH%Oc at BK1>_q>xb+^ zP^lGYiB|t{ae!a&EkUu_IB5*K1W=Y67KLebh?#OX+( z$W$E^n>L_d2Nqt*ty3q%H-F9_@@5%iQlBgT0(ks97RK!LA?o-8%C1pHs=1HLE36yj z&~`SZ#1G*#;^JPwttcd}pAa+91XFnfaO2?Q0z at T4L6J%$FUJ^*aC)!Rsu1UypL`0? z1PUx>xIF00Cp59O8?2caJ!$^r at ZiK`%uqO8n?Hf>WIQc&TEV`>bY>pWM3!E;Qs1!K za=1D*;8j!bw6C_Cn_WICT|=`Ymr?gH?vU5*##cJLN>L`=+l!)O^lxY at GfLY7m`+9m z4Ma8MidycMd4X8M at nRSeJRG&ct4x{1$3V;;T`A=j+C7f29O+fCeI}1% zB)uX{?#!ahoO66s6GoE&OeKwLn=}7%SE*WrPz58Kq&@{c&9}rkEf2R!bct`Bsk2KY zkF}AKUPU)nL^-?~#+nk at ZWELvy3Td!u3RUdfAk#O4_&mcdvYU`?imduL*s7Lh~Dbt zf}!`#c$3D1oZfaPdwNMn)$&YAt3N28>_kA2KHT{xp8MG9+6fkogs1m`l>|#80N<0b z(OrVO(u1)xbA=nLVqs^U4X5qBecB8v$H+eApFsO&=L zM+4E9pQpd}cD^;sv%;T60C2}n$vyI2I;tOW7LJe#etJnX(UB#R5VL6fIY9j?iCl*O z+kz~Jd?C&;x6MqrUcRzHF-nzRQJtNpc7JGzPv}IFmtR;cNsRYKhrDky0)_0FzOCL2 z^_9-CP at npdtUFmr2a&^4uW2b3ylixd_AJ*UO~!pH)f7||zC8w|rG!Sl%n2C1-0i4^ zx}3Ll{fW~-)T-VmQAZX{fkkxq2irO;BZ>fYtj!eTg^u~k6D6xvahkwjlFbJrgC%-R z(FFnmZSQ)TF%NU`HUr`YG@{BOP-!G-e3dRLH0un at M>@>=T$&>4U?kfQ$XHW?I^*7&_v>j-*!sV z`=EWtN4Ft`=~B~=2u2USq#&jmH7Z0cXD7Z#7SeIH5uj`6Hdtds9PO-Zk3Qcz0F6N= zSJTxop^#8X{Y304!pl2VH3Uuk4B7;7%`7wOAc>hZ^QFF7~=x^Kr z)STju5~||Qs$1e!v>&R&<@#PwKUU_~s{4QwHID4$7Cn+Ais at eO_l?|&ts|xW^?CCV z6=n4i_vo%eDuU3h^_8B^{^WzNH8j}o<}L!sH{`0J%Yt}p1A+X`W)n-Q1arH?LK7K+c!n<57)-nQ zP{AQWdmxyq2x3C9WM_-ODm#64R$PH at CeJA83) zjFpKIr0ZxJQR%e^^u%RV<^wr#&PRT#JJ0^4#+ppaI;JH;CSzD&`K$D+p%_TUn26uO{YDWuW^oZ z>jRxA@&IR#@?fv^Ma;6LxjYfO30bh*ll6{;pDl#>SM)9I1{MxX&6Yg)YM>aW0+)6#`G5;QY{3S!Bukx~##5+LSs{`jWqXd1y-F{=P(7`XPbk+*}3hBx# zj46(WU9$9xYp+Zn#j`oE6Fk_vm{NWll<7**+Uo${!ENj24t)c!$Gt^MLixU6bY2=51FK$<(G;jH4 z79>Z*^Hn!c{g!5fhf&VB-d#d_eJMl^Q at w7+5WM;J^=5tC0Oz&^|N8dHT7eyg96}X( z^)vPGhJ=t70wK3@*U3WG!-CSWk!pIz&UbZ9>9Yt?dy+Nn>LVx1dp4((ZT;{sDB4qz zct_97S$~1Znf$+-3RJ1EFq776Q zBn_p|uk>)_3=$zZh4kpOuG}H;=RvFTlyH5spp&W&col3@)Ro4 zDNO9GK)N#qmvV_S2jh9!G%#%shnz@{u2J0}9LmLmScMkoij$IT#&O-vnDz4m$_)>v zskcP9&=zV%{J$thne)60Ali!pVv!&`%yvt0;FLEGseU}6XnFNIkykbOIN*iE z*I|`(^x#1~4pxSC#qhh+K9;p{Rp*GD05YcRv9=7o(lK8?PLLMo#NigflEzx$KJ}D< z!{eHT;3p-)2ttvY*-qt6Bj-he3gvC3ebq;m at hq^rQ;{v|V^`nea2JaGm5I$07gm=A zeHm2?7kLDw0%T6(Bs!ewf*rI=yB*4*8HXYhRhRH+vAQMNpLRjBs)HRs4g5aU3Q@(* zM_n~C+u?4D(m|#nWl(W~<+_x4wjWbnonzQs%(zRadLw1lIcJo@(B#DyR;zg%1U at V# zo<8)e<%xJ!vQ|?~a3=56oh`_aN^SluP#I(!Lh{jM>2Pnzo%ACHtuqezqHNbhJNn6F zI)%$M9!#kF$Qd(Q-oasOA&lZ6NVT3^DuHQE*4iUCs-V~(=;Gyt`mC=(q=GIfS0dv@ z=fo}E$s0r|`DgXMnuU^XP2Xyp6Yxzwz}L>P0iJVHAQW2^M{+a!k-t) z`>p5&x7ED4l3;w6;lT0eFC^ZCJ6uu1zJlj4yYa-fTc)RKTRRN9QcKtON-DB({4_OJ zY7YMHs!vui#CRkzEce8%xsS)mCH~2-?S|k1-?{I6VudHr zsE)6j0-`5iGhNh(U+vpd5I)Nk3r*Rmc$qjA8Il at 8K+`YKkoy6L0%?2Ji!Hnm^BV`R zn)D%(2;Q4$bG03(xlPBFElJ8Eexj4-rt9#;;{ZA6EsQO03cjXUn!(Ozf*SgnedG#T zwprqWqc*E4b|`!N+vXIz3(@7bFhHHYNb~U`ht(qNhOHA_3QCo(*38Z^ zy>8Ff*kE~Ea*_5R=qha-o$hl;}?5=&a&N4d0aCzlVu9M{Y1yc74|QbUB;BU z`bZc&>FIJ$wK at m%S~%9WQj4duiag-kmK?X5q0KfNYTJ6a28GrXvmJE at B@4%2>cpnt z_Y)6{w-1tMvu_C!^ZB~%v7$a`v1?t}WTNk$iqNP% zX^&6PtR^&!&or!t-7lG3;kE{BS{?-?YnM4UPD`}kreDMmP)T*J)KO7$174^X%Sxny zl)lpCt7dA|+8`aU3gD#3C`y=KRJp!tN@)!<4#oxBIIUvCy?q6GHa9SFK- z{e2=;C@`;Z0A3=1mXmB)V~1n`ET<;y!E<5~LJhk32BxguAXjhn?L9JXNBC5#XE*ch z6`ZdA6SbM-{tU`8=L(ArWQ1GL`-59JhKlDW=evspmyO%-#wC0n7kdYjLpOdKoQ7v} zu8(;Z9fn6)M~c(}I&Ki};j&rzl at J%qhN?8p!L=6OOjHRwB8Nb!`m#?($ zuE{+gmQUrL5)`!tp&5EbU>S-y!IMI33#gwrG=$S?>m&?&%7K&t*%_iVY$@^{vI-tn zEWL)u7p^q*jau8*r$iz4YSkLoYWN%9R3hB<^kp;XO*BmsI&br%vLkeLqGa%2x@%ar zI5w-6ol7F3i0&mttr=N>6WAv-r~lKQgMIX-@&U$IX?7|KPI(p=ZnG^OC^(x1zCPH3))(bb!|NZRQ>3wv-rE1@#CbH-z3^i?~`$+=ic z-dlN0oL9 at zhgMO$I)e>UY}W|M0VL5?q~-ud4A at Mfgkue!;RC7evHy>%`OuXF<8l{6A=Wt6Jj zTBP8%utL`D#rV-pBoMD?GO}z$a1k{Eh5%w+Dn+*C1 at 90paiC6&s4xP^-76DdtH#5f z?Wof7j%_yd_OTmfm0DXcdpDnZ4d()*Y&W`RpgYiSw zrM?<^+@^@f)B{wp at +%8H{EBpJ#~}8hQ9lvZHIF{Am&@sL`rD04tO5JMZH*MU>xic zwe<03;agQjv-%lTfqlyE9y6EAnYYFDTD?fKl$cw0BG>%xZn{lQ+^Jq=d-0T(TX)>W||DtCPzPzo^lk2o@#a8h5|mlxQF7v at bnddRbxnQR||C zEoA~^sacy at +i^3LJ>T4ylv3bl?~3-Uc{W{Wz at vFT;H%|Oc at 73c^(-I%lXc}fNVogi zmvU{oN|91*k*Q`=J1zT055bePIgHfo6Lvb2>t6gXr|awCBmQ*smg{k}`nW;JxrNEk z^B#=)5+%U!C9#y?pwIBMrDhj*1?|He@?<+? zj$<|gy96kKo#H?psGafgurrRMnH{;t@(823(|0e3Ct3!#I9gr#ovY;Lo(*@NR59{X z#h5V1`5H7N^R9lC at _hCxAhQ8slVxWnO089XDt5wAjE z46+b!IhLa=Z=RjfSehj%>OS!VJ&iISGwIiul<+EXTu+UBYrV&k?6GRO#tAsOk zYv?79aPl=;i^)fGmy%o!5^0DOV}%p?a>Jl#9KS}^vcC^QQwOwN8Gl}ieq)OsCd=cVUg`? z>=w#R522E%HXVkK!{)TjS$)ZlbW5X+p(hc21k70R!X){?pNq&yPFuf-UKgRZ^+UF;N->k> z2iG|oxNU|ZE!pXz*v6wUk8{gww!$0qY*y=%GegtGntCJ;;w at 8n$@qHD82f_;5^<<~ zT-cry>;^XnA-tekOC4Ya2 at rZNPOV+PYr6_#Qi+VCNC4|{e6+a2d2vW~zxGpWOB%u!go5#a&TvX85x+i7-61ltN zpTzFpdFDTA|9xBXlPrGEH2)=jcga8P{0r~=zd3h*Hu6hm?~;ES{lz-}d&m4jLH*H0 zoV%|4)5`BG^nbT=&qMzu(*I=VZ>;oxxAgaR`Tm2YUo7?i)k?!ZSoy_T|930*y!Bsl z at DEo0AB+8mv7b-D@2vFu&FL>;xO+H$XSM$v>YvEpDRcL%^T4Cogr|~ zsQV=ZcelUzbw6?U<@f)M at F#!Z7f$bP&wYPTch4sHiTdg0 at B8wY9Qk6=d)9I5+=ijNE zfjJGNyLsE*1pLe|wbZ#Vl=HOr7Y( zYz$pYMNEzDO-%XtpqyQtObus$4cV>MzXuhU&Iv*7SBFTvO_%6O&hswn-+WlJpplD22VPp{K1NcZXTDIgzTT5 zsn4xFw7awHLI*5cv9D2%EDMGwEz#uG42l)Z37ubG4NDX63?ryCxILaqCuKqc at D{&j z55$kIqN=eXiyNSJYmJtY6wNc%Y_v4lnx+p%jHpV}(bQzHCm=H+bX5eW8f%T#SJ9nO zXU$Qx+d)1z89~O~&>6*yG0>(beKLTcOOVTp9ATJGDhC2oJB=l5HPu989%AxpY>m!Emc>DuhDmM+*l|pyIyWwPQa9O(iix zv^N{kN`A4e&kxWRu1N-ln#yorj(hZ7%Uyk-_JH|x?H+*PFMfI5#rNPjDA?{xTUv~J zBoD{C!PSFL5!y^Z8!Y6)J08KxNT=bh at +tOQ!6qj!f8!h-t(_63{>~N$M0mw>KIgnP zLs7BN5Kk}j1e-4|I%v|<)N4Aw6Y)n6uus^9Ew;MnDpu1UM|o~+I`CmGpDW!_T?7^d zb;=^P_ndVgEgRhANr0_i6FMl%h9jn zpEj}KTm)$7GXYp*oHwr at v4NEwE5I2AYYsM{&7!ZPSp=lNW-aTY5w0e at 2n|?&k_?Ns zzZZn?9sb~l6Earnv1cehNe0}qRS!5{j*Qni!e|^Q=Poz40VZlvkO*v-3Q&;L8ud_}iiF}HjUHaq1?jE;WX7r8Sy*1JfVaxS z1H&KcwY;MbvO@|1Wol>gzpLS|^{;@S{?*MtgPoo6pZ7odSpSdeV*CG5UA77nQ2h)D zoj2;2nii9G32gqefq4P!th<7pZ$c`wkv%uf(am8&JZ5fY=3#0<^zM0LwDjm%OsBME zzh{8$#N2N@>vPD{Nb=^TYhXw^8%OS<;xQH+u{Bq4($D)vj*tIX>MB&9O4+4K9|m(? z9=BLFv8j8LU=9$W`YQUI+{^A(ZB~}0XM#V_L$jZdZ_CIe+M_yjui6hCUlir at vDSTbF6U}^gKJ~N{ z%{F7hY{R*ruY?RBYpa8?t10+QZ1mXLy&)_^vIOwJ*e!-*4X{&3zd9hji19K>Wm{T5 zh_|L}7izULY}q9zew`g`2ZhL5+Sx(w=U|S3teU)Be_#8lYwTokIv-C?a+*(PG3QFi z+(Z!rXNclJ#oAzJtZz5 at Vh}z82i2OIs0+Pb-G^cCMnWL^+E^_#@6T at Zh=z3p#A&rz zUUV6MsNpgY|M|cmJiB%Gws at SK@1YT-a6oXU!37^wIM-ucoDtN;+DUmW3|$o5#eaoe zY_ZG6!5rUMVvJA_C112|f&H3WOkI+v$dmhk-Uw|T3dPUK33zu5V%btoWDZwsj1wxA z6Wk~%K2Ywt at eu-cg*;9LzzOktGzL%*y$DjKP_>FyD`7XmlMx1bcg>-RBV=#`@j*!qGC<0FRWx$|kkDWnV3*OYCc$Q+vs{^Sw;th^(s zC$5Ysl1~`xsq`u9?mOY`vJV=yQP2nm at Q7VscXSRR_$-zaB$fOe8WI5yS7^={IlA9#;%m2K{6tsLJALKX;?}dk7NF~%(y{gjCmgt^HORc+ zOkZ>ZplH}jh<3~#>2Vja!bcMp$ljq0mDxD^YC)M^?Hyd~E{))+uW0Y9QkiQjw8RT?ws&2h+{z9*K<7H49dYR7C;A7|Cprw2XwB z7}8WwLlS?YmWK!hV73CnNI?afHsumgjG|;(vzcI$jNKGM7LxWdlhV*r3Xe>Sgc>MF zb}W#BnOj at Buy=)Jjbh_ECwE<8)KKcB&{TNvP6=7eW7#1kagZ|-X*-5bGK^(=Z-Vq% zq;ybMl9LONxp;qj{!SR$Uxd`5F$Rm7jG4>rO<=}FWcT2zy=yuk5*xVeDY~Vjb z&P?d$O|3UPx-%(TUCeq^uC~QxAF=#!k;qc<^iWLu;0-tmOWogCsU*cj|gP+yd8{Knw1b;BA9LKS9%6R7h)S zdvhU&WFN`E2ZHfxjl$bR7u#kYPxkIH1pxxM50LK3fC3DM|$fChk_(ex)PnVa9EieimhSWT?FNaN8HOzbdHGYD4 zT60oJH!pM!ilJhu5Lrk`6T-+}ujLnjbiVGfyBec!5*=NK!Ed1k(Nbi8*rNp+wh<=3 zj^PG>e+9LSsMm$^n at hQnOaKUYQwoAd1{nX at v4t6V=JVlYduMlgiT^g at NH^Q7MfdBAbTJ0dN3W zWk5+bWoz=t*N%$h-EWP95$`x#FLh5#V(vF!nmH|hXkMr72Vx|IXQ5XsWk{s;U8(Aq zZLWWxvO0`8UW%OR&l0oQU=UA_#0-Hj>*fkCg$%WxqHF#*^F`ARF+d)OG5hei7U7V2 zx#!qwcHTdq<8%~$aT0^YJM>+_<4OT-+H0OpHZ9tnRLeoQBfcW7GvK9G4lX8XfjKO^`^=d%+WP*T*efGM-OM%17nPN?$Z}q} zbm(~UuZjEqJ48`t-E{FZ+9%iJgWSI$0s zld4P<(|a^0SPV2_bhK3yMXbk8vzZZ}rH_3%i`%ouC*;D+OF;&oteZ&^K3Ps)nMO|& z>|WB%q0cwAh}O6KSKd#3W`TM)HI)pyQ*<8#)SRZT(cy17MC9_mRdd~-*0KHT+5+}= zDgj7)_2Ra#lGMxE at EYL*s;5NjmsvLY&&q31vWA0ID;?5`lqu%Yu_=0#M^c7UC2CdS zvrLyXl(FuPhlt?6@=8}KkP0|E%eO8K*sRK+Ygxg+e67m(VZdH9izBWug{$hYIcudD zR*MXZN$`zlE4P4;BT=7+&%OhasgHC{B0Ab9e);+|K8Bia;NetD^D1uWWe4^cJ&WJU z(^lZGFXktN;*>8Q!g$@DhZ!G!e!rFA&U#)+z)$gJfiq$TmC(RJU`%-2V zsUDSjQ^^&g-?_$Do9rG~#{&~p2MF7!96pDm4@&Q=Dl(E9VdrrHmgU6;xo5DJJ{Cxm z at V64}J4YoM`&e?j+0 at x*^|$j*l!uV#hVu~b2erzRz$m_*=8r}a6>mL< zXGsr2A?l;vRS*?>V~o=y3E1U>go?&IWyHpcucKM&qv)fK86tiR at kv=CLk at ZCA5zGq z#v>$8RENK^OvdA&){)GEl4EeA(i;Vc(1f8Hsbry^4E=Fe>?E=x_zXM`C>@<1AGbb= z3w?pe(To*37<&-e`jv!z(5?R{W)$euSML7ak$IWzZd`f>utzxCqF<0(Jk8%Cp=7b#IV|<*)lHUjYGBB|g z{;?JrE+qA40e2a(2o8Uir;v~fmM_m;Ot2BEGZu$TM6`AoK at bn5g1ob&ANfh=k-~!Z za_^j11w97UnrO!3HVHhGml0u3F_!4KuX5~^HkN~k%2{Qiqacg;U@)COZ(@^i>gVzo zKiqXkoGnx+*TDpO3yj-+mA=mFnEbZK1-|?VTU50ka)m30m9e#2EZgCJ3xBJ>($D>d z{P)UDNKQs+S-QKG#p at ZZtE+a7+zlYVP&tmqjnnngt*OGGtle1oVxT0D_pBI+Fa!AnF9YGT8XJzAnsgd)nmbg(*fc>S#2 zDeWPOp7)s7l5~<@$I8XgqugiCLq=kjYxfz6+;E@&j zNbPv#eJMvy4#5elcM!8NY)QP9PxtzzTJlp^@@b`0WT!M4ALfQhWy0M^s>$aI6CZ7E z;@ATdAI$-{NmkrlZ4@`9zc5`8UIe_Uw_G=YenML!6Cc?@(Y=@l3Z}>5Ht>HqZm~r=_ zC{oNy7FnpIp13N at Okdn`wKg zIeUpNzW8ICjOlW}xrq*Zl1$JK)G6qbA>(P8{DVKKy7cauNI7Yc+qZR at S~zyaUDQ%d z?s>_gh-GwK-g}D!VoVZA)3JLJ@}+tmNM!C@=x}QNuoKih1j!2T`QFkdMHd=u5;%Po z6Hd-RZX=m;%o8h9TSi4B8pxWWtY!G9kY^Rs%8^nquDM|%+e!43Q5#e|Alb~4qjaOl zPdx;OgHj9clX$4fO^YOlu~4kC%ZEzQR+dFmGb`5;=>Jqkqj9FJv*O9?iKE2^^wq1WrFFj-ba`S=}ZUnB5T8!Y2G(@5HD_Rjan783Cf* zH$G*%5<80!;bMO}cUq4kt?sR*ZuuB-!5ImN_L}Y)lq64uP4LZ&1!q#xvGhkQnzmKA zO7TUDmaRh6whO$>9hI^4ax?~e;1|v6o#KZmcb!740yti8!Q3`-FtKP^oi#*g64o?} z1)-UoHO^-pD!;`LiCK1i!Y^t)(;+=;R*^)jKv20{1uj`&mY?r;`SN<)+2x$RIQWF*s6A6v)ze*Oik;q9mg=re z(sxap=klAEFqmXLB=%I?8kIj=J+&s*kB9?*6~PHw1U6m^0g%5MfPTFom=?>*mD?X$ z^L{IeZ+E}9z;|gJIdUd0(ZCn9xCe1~*c~Uc at vmb^k(ka&q><9x68%^>9#o^ZdMPQ-DH8 zbz at _doI^}wX2rmhN$3wqdII})j`oLXgPDdAbwhuC#d9U`L(~f22Gg}Lo z3Hl&3(u^p5+i|ET>WX!u- at OeBIrkre7n}72C7?uZP4_DKQ1*pU^BpL#q(W3e6of?w zyn)jLM&?3H2HwC-fl+ly*svg3yk`YuU|X?RAp}sZH7pe94zLSgK>(kU!RTOaQCzrp z9O?vB?ZR>hI=+)GZzyM1&5}xHE$izPn^pPE9rRV;7_7^P z&UxNHN(zAEO4~};t^(UheMZz-0ffM~;<1973I)h_d$H0>bn){w-*4(W>sL;7&2;9cjf)=Fez|_Xdxvx3_M)U9 z-AMyadSPD>-x4ezUYaV%Y0xqBOYkd`bmM5_SmWt at g^)`^`!MaC4z?HQHgIRuOQ8Ws zE}BuWoJ3g-Ms3>`S{U{1p?8CuUc0;3 zy3%@b=v3M~5m$=4YvQj5Tno<-1VcaNtIxf}2Q2G>^c3-fQx`2St|HAbSCm!7PG0O8 zEIhoIewXr<>CaXi1GW~NU>ItOX3WM7iK{5m4#FwYIRgi!gXcVdl)SmktAU&(y(nv^ zeR@)zoGNb4J4I#~PP5HAr|(NsfN$Ye6E|Twi{$syx7`Lnv$rpIgiWuGi`p_`*R3sv z9dP;|uw?ZkEQK@;hpAPuuT5Qr>29-x_ at 2s}*AW)i8TkFMxGGDHPEQ)S5}V|+z&CN8 z%0_RE?sXUizHH&!e}?*%*4$SA%A~qbUoU2lADM{o{XCey at KUc_EK@tRA=5R>***1x ztfv(lQ&&I>>xK7^ol!FYvJn?s6{dQAvUh$M|@FC~hNY1JQW}@Q09EgOXMLsmBef*0MF_lr$EVg z>?!s&r-JFBOi8QsNtQKNyouc!{ZsSfwpPaq=6sZwGM;N at bQEqJQBX5y!T1419fM`X zkFD6Rh}@kB&~odm++m=gZq5_Afb82+5MH$7Cn9%W<>qh# z;CTm1v7&~eKQZ*#^rU<97%IooiAB&w=+a9-6?92dPES?*^nH_Zl~}@m1~HzvoLsp~ zz4+{70&M49>o*}gIW2N*d(S45neSf?{C!z^r_UR=(^HLFQYYE+jx}J2BPGT+cvNzA z8(1tT*RV1^`k#Pf_W?A(=|1Llq3u;{ziPOt#EiOvU&mMdqxFK9^V+T#Eqn_oX6U3z ztCE+N)(U?7I(t4Yg%P_*M+Pqmftc3%e9%eiQFsxbZ72unN_Hfp;MN3b0=7}cT9P!w z`T`mzF{l~DV-LKmIDw3s{Rht@`+-uQ7tr-E5tD1?Zz+0vB at 8+cdNiJ z*q4uamsyYwyED6N{#?C(XVn8L*QM#sH(R!ClB097XxzC=Iy2C(bU(lr@~Y+$EZ>)A zxtIs`j7c^*;5(1ZAzjC-$6X8$Dd#=uP^HlT;H(9&1yR(BIUWzcIkau#C>q)v3kU090?U|E!OZ2};rqz?fK?1Mzbdl{%G=5wlc`$C>Q($XQ z at BPpk?tUsm`uWBGRLki1sL(e_>cj-?0BzeS9rB(17HMpJl01EFe#{ZkOTD#RKMQ+= z4cDgKD?)0POb}5?_hl#{-upt5llUO1SHwz$h`$X*>L$=l7 at e4ZA-Sip9aN+wi_dFR zB8uD^(fmoA*Oxv_3+hQQWF*^@gKUvlC8CWFKq`s5RpnZ&A#u{;B9FIcnD;@tjteQW z46jJYD8+#yC7Q!7vT!E3=Y_;il#@1zCoLk0s*aPx8(3|^pTjg_d*wT;b&=UGCiQl{ zB%lbM1~490xuA`y?IUehZYOvQmr7#{D$7n~NKY^;@}PtajhZK^N(~cZP{HU2n>H8~ zmg|%3pDtxSK8#CrL#k>Z#J_l`D>((}6P=4c2-82*B2UnP;?aRkz6Ki&8trP{D+dtk%F1z_b(Ud9 zkU2{%3(iNkayRBrH%+AtzWp?GU^F z!CbtKP*l53AZ38(gGeF<0{KwazHtE)0b9gH{(Y9a+GkrSTX>*?2XZfVL3v661nD+( z6;$FW*nXG5dqQczWf8m8keVzF^+aXV8W?WY9G6A&A9%%ICqvg}U}(%Bo{-lil>1kb zyR at myk#5L3HLbqC4BWj9Zny|tS7K}Ye%cOR;X}Wz+KCw6syOK|Wg8_|UQ%7JCA-qJ z+T4v7YE6BGM-s!)$l&FzXj6l9dIPCuy*c<0TiFFv-rRHFYST+6-E+Tda~wP?0m(~s zkr=@S1fv2P1eL%ASU6C#;B(;hAgLArTKK}g;6(MT->*hJ-hT}yqSHDgi&w=Y6#NQK z5kJGB{L&+NFbfjX`idN(>iC(_NM?OddN`JqF;oOh&6Nz99}z$9^l^e-M)2AiXARy0 z4;5BD(9edrf|z5k8ByBXGI1G;@PCi64JI|t_wgHyK1y2BxW58>>+V@)eHag<_3Y}q z8e1r?2lltQuC9CQMq>8cs+{YVHCA>y at HukZt*qU18~8*UjRe)#G-2)u^~)$R{IKtr zld#@M@{wYy%u?gaJIqnfQTc94P at Z2fCZEMq@>P{&qkf@~Y(a7kX3G-xHeo#@gbJ;j zT{YUYP$_kR)6I`@E`?qKIh-t!$3(VgPInLBjv@1&$E=5G6|Pxq zDTiT89?w(3h|`_loc`Na6XtE>s)GtxR|Oy2HP|Z!-iPw!Mq;R z!euf@?lUCN0ybxI1d|&g4n4GRa^d3G_D6;DUUys)jNx)fB;H#+;kZ;#;ix_A&5ltl z#c`&H1730Eq60)l|7E~*(R;GT@~5w`hDB(?q4y{z%XOD>r1GFN5ZlF|4{!{*>qW)X zQEW6+07x-%I4Hc|KxzJP7Sl+N76GcS8>0AOPbR7Db=fB4htQq(me#))Ad>0xawwe> zMe3($Yce>r!TyQ!Y~L(}cXS{5R&y7kNn_F2aqc8&-cG!Y at o8PR=j|wCu_E#HvVs5S zWLp38)shD+=NPd5>D|x{{(l at o1YSY->QKyEvh4`2{?&1mew at DhkiJy z;-kGg;Nx!0BS%g??}^~YJnb#`oV-H_cPzV##XKASox7_%UR`i6kKhJ2L;Iw at qcnak zMo0uDFTtM8;~SW+LXGTB0fx=0$M31zjYltzRXkAFJ2p$ffT57;uq5b1JC<=Hg*k{n zaTLU!s*4tqewLTA(mxD$(h1muZ$sRt3J$R}2Z2=j#pTeYb8kE*({fu|5Wqo#2j!-I zXv*^s=A)V8=C+L&u~QoGKB at vWmz6>*29Df%Vy*xs^92wv>uHLNXn(tXabRX=znM}&Emft(?X+K z?V!Tb+`VdPDTiJe#ms54cNV|&MRzZj+4?;9t{1UhP~pZzG#&Px^yI7ZTF|YgYB>HV zbWymexSv~>JE>MDWRQ}te7byfUGXJrO~}5VK%4Wusp+mFm6lJ(pG(&d4M+dE{_cwY znt+B%d0}URV{0$d_xm2^KNumT&wII>`7uqd8Cyy37K1mhvI-}_zagHW|8ujcU(Al2 ze(?e{`bjsx@#@?S%~u_uJNUrYH-h^_>Jt>NL4e+vPYkNuuDR72BP}#7N!zE4F~=zF z&`LCO#!$fi$vG3&d4^fU`jC^F{rI&YlgXXNr73n5Dzfe+-fYob7=zyeRm9m=6o5Lu zndRc4{gsoY6uWdzIWxX at 81pgwrd^O4lBj~b;tV{Es$QAX6S-(w2Mjfnql0h78>;e%)` z&7TozG#ExEE?#G<7iWDk9;Q+Nb#ob}Qe93E~uNH6X;d}1wx~mAeIT#mV_Umn~ z7VV}^UInI3p2|89De4dtLEK|OFt{wLYN at JV69%j6GsNo{xjFfxU9Rjv+YV^5h}E-I*BSnASR-J&nv74Yc0NfNTNd3eX671)?YX+tTm~QcVt+53W&gR|)Wl>Gj)dGl=`O$V)Zgg)-0_ zA?Ivq`8$-;)`XUsosxR3vYan*rbK7_diQ>

x|u(UwF5I{BMTtOwK~k=-I^a%DS&m^_SD?;cQB-q=Bat50mb>u$GYWBKAk28yFKEm!-YMv= zSS|6G2lCc^SdMJ~s$>mDOtWXGX{vYhr$w#Ff65LW+ZlI&JdJg(*-JYc5><2S$k3oWI`cRxx&g at kwqYBffLYnB#7-9x3aiL&UB_h1M#{K zz2<@y!5fg8gIe*H?C8i|@)_@{V=(Mhom)J0x at FMl*45 z=5=S9FAe_YZ6&!>Zv0DHyT1Dp at gMu~)Z(k~Z56R5>DpjFAU9v*#`=WH at Kby&KM3p{ ze!l!3mMd$zCS>Q%@^&vBEiEan&O&Rt=LjoB`*yYHw6X)+`zfmitGo~*K3%BS+iJNR zSoJQHhV at VcERJ^7@!B)8PO*;WoK3~VTDx|kH$$h%6pU4FHSm?@ZlA)ocm|DTR#TT) zcCL{#xRzC}nOa*_{>$vze%tSY6;`#V{NR4H^i5f|d;PTC0 at AHTy$cEGj;@?S&vbky z=R_E;dkE)HX?AI0V=NZy)&;5TVPtPo-e5Dir<=PkE!m1Yrxwyy1wN9W67wDYd;?cq zl1s#ri%T0TK0pWj*K2;K2wLeoDKK`Ya>Mst>j{MbL6i*80J(ns{%X&YlO!75Az!`# zZvDt_Za`KBWYHquLuQA$eay at jW?&zd*ua2+W}hgsjE(RiIl#J z09psZpZ^z{@E<4mk0xYfU}9wcFP at N*;lF`G6%PkfdNF%D7ZFouV<$@o7yG|t^WUbN zp{*&skl??CTE^1I)XC7r(%w$l)XCC}R>{=d)yB{X>K_7a?o7b)*Z3PDBxLWdP0Ps6 zMnKEVz)Zl%z`#nt$-$^gFX>`vV`(gCXKrIkzyL)r=xl6i=R&~2$p}UN at 1Xx0v`ma_ zQ1rrv4icu8<`yph;-Ki2T}*A&2sr+R{2Tr+b#2N- at DGJl`pY%`Cq>H0_}{1UpO7{S z!~X}Ot(!1q7svqf`-Vp}W-C8nmaP&=$jUOF<5Jw%3m_v6&N7H%7TCUL^_tBRd=`D= z7vE6$#JkFdZ;bv|DR!FZiuQpamc3qJYj0CayiD-flehkyK73W=zQP900*tV22jfiP zEA6FhgZ|*T!7wzB$Xz7+u9p{TMQlCf#qsebI*fsNyoe|vj7$EE@w7#!%>0_f&HRFSkGAxQ8vMjKFMEXX$G$NcKg=JN$r%1`o9VA?)GbY1ES$C3+1Ux0SQ!Y|nV1Ne znVAV#85jsySeXCI{^$P>A1CL3_}JLk{$tC`!AZcx&JOi={g3v4ZvVyp8-tbgf9>}# z_Fwy-U-y4$^1o~5uiXDB6N+BNUe(U>-#-Ba{~=8!sQ)R}|KyeFFfY^#X)~UBa($6;``q1 at 4KFlK(B;QR*jzDPo42y%AtDGrJd*(Ve;1-%xtqeZ_Mw^LRQ6f+s!RMv#*d> zT{z41Mq4d4emArFP(5Av7dHq6!FP3IWjBeql0wU!6YC at 7A;T|Oyo?eO*{~xmc!t0A zpBar5r_PfO{ujuLA&Y57xbTnU)tt6TO*?pY_xauw$PxMG|1On7;Ko$0B07HjYKM2r zFi9kbO!v!NO1U0$eZc?h!3kDt3k3Z<^tdMv10c->pgtoDG>P&Km=rkFvI*N6ve5uig#yW*`i;1HDN+6upPXk8I85k=}0Wh7a13#v?1i#8C*`!+Yhc3=}-< z>E3+8etp^0MXV|8~=*tT=a3cK7zLJsX2%*t%t;h5i{w!Do)h8B_);j~=h#Su!%eOW zM*LOMxgks3@^`5ao;Q=w2*!zm8)U<+3A)ruUO{qX74jI@;4B#LA{fj zg^p&OfTS|}*%Ge4-!-w3;lmy6NJ2Xhl at jvJj>^{k?T*&w0aDT3 at xDR3`nJ9LwC~Iv zXb$^7ddz}?c^nGGzWkZ5cMnW!{>g)n!_z8T;=jV=kvMVArDpk-nL1{Tb|$ro(Y4UV zK7d*?s;;t`A@!{AU|8~^VqeIM-SYUZjHD3}kT7q;zk8!d7u1ojl^lFH%8&aL^@WmS zjRecBAr+J{#-j36n6{;Pk3}vC_!ssoAPKOCO9*FYQ@^=6_C>(D6ZS=DlC<7qrh{~1 zLEHGd#9+-Q`X%OeLZw->YH0L{a4_Uofm|am#zK}D*0;;z{){0tH$l#`#}!KjVV`Tx zbcdvOzb_(S)btKdn at gB{&#xWv-IYOT%C(-=xI=b4Q1gD- at TzQu|~RB!JrBh!xDPFsS4X8$Vs7m8Wr4 zMbkPcH&EScVk3X)elM2%Ni%Ao-(pmvAp% zh(R4lxO{M-adV7sC~lB zCu9ODg_#7XIW$5QwLn&Bf$DvSnI30Zl&lUQ<+IC!09vg38xWI2UYWrVPz-Un#GoF? z7+;6<1Y#WH$}P}7u4;z7UCivgJuLt-fl>y`&qcf$? zTG at d$&{~1H7m##_eF_5BpPx$_#aspmqrt8pV-#}eUY_4HNRk)^tFIU+8OnyI)V&pX z7eN47fK&j%03 at 5|iUb>70avFb@(YOvaqQdmhRlyf9=RMSeL$S+oi00Kx#vpZu=6;IopL%W!Yh^$aSpZ z+z4GaRp+LaV_6`4;^f>py2Cv>Ua1FDxy4SOsDzx+wCX2>n0XTE zkH;e;N`jLz`_TabttSAXcv0ZabYlpFK1`X9II6IuRiT-IKP;a at DAkzKWW~(dIu1)x zSDV{>%3bgF_PR$5WmRe^^Ip*CD)GJlre$AZSGA=buc5ZxnfGcf)PP%4Pf1?-XuWAy zgJskIN@$=nyFb#1)N-r7%q?$Hyq?tBLRDP=rg8l#C>@4ry9iP>OA(XH-Zt;zi$ zbWEThTebnWz>Tv7twL1^(9O$w{`};wmo$&Ev|s2f$j6GFaP{?7o7QgTSv~=xYBf>c z9AfO^I+AKN(?!>{GO{CL>l3pLdrjhIAI_;?*biH~w3TaETQ=*fK5 at -UWL>aI%DoU> ziR3M{bbbZjQ-D~i6rZcgaDa!RTg*(@u%d%X_cyQuTcWW<>^#-#aWxk;bzR(Pt{!`O ztKe at tBjb?syRfsSk>>jqN$?(AF~favp7rQsp3S5mwe{vWX zGigA^ZWWM+_NbMbf`!GB$@*CFie_!s8*ZMqlmXMkDZBuqDXa);7)`el82axt5LIr z=(5j~@=nB3*c6d$^zXV7-ThMco>9>uwGd5;`44?jDNmLmU#TEN#5i}YZqs8C8Coup zcXGsQ)1=VkW;iyE%OiFUrS}Mk9b~|f2{EboRwWbV{d!E}OUFZAL_9SAsYAW^hH#I4 zCpI$!pRN)aGY(cv(|!&-gM~c5T)h6f^`^Q&qDuro6Gl2EzM;Gb$RIrvTz!NyN5o-K z3=t$oDkUPI at wWtsmoWIqny}4Q4q7EF^bZj&Y9Pf7wlL#;#JfME$chLPB67xLLdbQ{ z&zgS`LHm{t9NRS!2Fokk!Ab1OUkWXEX8ntd0n4(C0nQc+X>Zi#%l7;Y-mmEreh48{ zSV~xEy&LG!dRQ1*K}NKVL5{rmd%+4G^y|@BQ8->StnoRM62-xbi#WIbeOvQ#-;9gBiNdkZNqi>u5e at kL8#cs^f1)Xr7f-wsVbasQ>ipL0H86 zg!8_suSE(<9(>}gjQQlY&J|oIZ`e)prO3i##bA|k&SZ*%?j>O at Mt67C^Kjnub&71; zx%@emnR6DUN7bd92W63MRVnZk*25cPv323#!B!HxKaaG4Jwc%l zP#zGM_h=1W6E#EJI)$~t8 at I{v>7!FK+v~84rJ*mnrN0ty5l>JXsL!uHbtkE)^U)sL zTkx9D|2EVsEBz at N*Xs4@$@`%WWrwu3zpiS=ST;XgmA$7uf$w?=%`b5MSgzh`sSfM< z_p z1qzLrV$7 at nXaB=tK9g0vfn4vW4`Luf+kFu{GyeJqePJYfw9)-kYStP)fc zdqr>2Y5lSpr=yED62*=oGiZ}TF<*dqGLT6;;=InUx+F9heKOtdrf=6+GriyeX(7`4 zn2z{JvuKm*8Hhm~z_M$M2Gk}0F}gCLJY+tSpAP?Pe07^q3Q*z2jqFAi?@8nwDE{d! zxGv$k530d}RnOON|FZ;3R9H~5?oB_-6~FVeGH~VDrI1a7Vq%7;2B^dBVjg*y0C!vxQBdwpr(EwsEc_Z~`R>?!>h>Ijb>aO$NEOKKw zq!xakAX~uy7Vjcj055$)VkIE-o&o}s`%5A)3iVSi0D7JpNjDEhvX^)~_Rq?n9m!4J z`2i$YN$sM{_!M;vy_93jiY-b72<~^HeZ6=UJxGVN!kc2x9V*9!O?C`u>0YXiWWfrO zwnAn#YCu+Ly)t#I#25*464xnHNRqaE&R>cFCnN;($|WS_omZ~;^Q+R81K^|_M1r|2 zv|R(m*F$xY0c)nuERN{F2oQ%JK(@Zzj`q7cX4*Pz(0YV44*iXA49g#mv5{RDlLC}{ zO<9;T5Y=Y^`Y`$5MzwgU3a0Y{BtYFb{D80*Wod{2C=R4R&mn|C*CO1Z9)|b#7 z>Z>_Z;2`+>D4AXeXoElFoy5_^8j5hR_X92t+Oz+k-p)EIs_uLEVu7U64L%?xF~kfE z-QC?iGz{G#Ac9g7(jlFKbc2B8fONOg(kcC3{C at pCKCyo9TJIn4taTXfKKtx_?mqk6 zfm!#nuk|>bf$MxLV>6B_^2DaDg;|~2{ZJU%8fT$D{${BfEb+#=7^;3Xtk*(S3ulcBGXw at 26| zdg4OPq^qS{giY=y$qF#P1h?hbqWT;^>%Lr$=S!|XEagb|P4SKKn{ZiCeMMXz-Jp_4 z-#ZiJI}!|0q!e35bKFxTCp~Vp)$cxd*o4c}wN3g~cW?#rM07vOflW>ozwLe_y557Q z9odAEWr|zR#R;^%%M#-75FPtp_rD^C;&fDW5I2i at 7iFQn(6E1j;TlZ`d?^|CoNB8 zN3qF7%qg5#O=h;drFjveg3#9JzmXF3s0Jp|-h>k(5eYIBY1Z zTzVHTH))|wwt~FrA%c6tcnaw;)#Bg_ at hlqcOr>_3V^7mJ{9^G at sY2`=C=bYxm{=dt z6mm*&Yg88vb`U`|T&sx_Dp$i-3G;Kj3zWDSnkWlMr5!>!!p0;X?~zF5iGLcP-dSN9 zZrUn{L49^k+d(Nnb at hVCl#6kWerOJxLq at L;HBi1cj;{Jf&{Hk*4W0%l!6he1Iee7S z;g9x!VBhCgQkkVvdkLT29SmX(HMv9dvgEF}npinTN~O_*yp#fB2e{~wTq}jj`i!LN zYy}U!vHK5YhG9}XOYf|P3 at M_>-=@XP$8yMYct|nzh8_3+rdK92+znJWM%Dx=OE;WxQ*JJu at V@Jv|>I?dM5Q zo|I#1e$y7*dZO at BBubJipjyk_$Vsc434_^k?^RK&ZCFhSR)!h^RX{oxrs zu6jP{oBNg*_BJDWJR0vK3a;%#TQx^Vb^N*O2o@$t$GEYdMfN`Mp2W{Z$WSVyR~swh z1tRWpqdB8B-0$_^W3!6vs<3HLdhL#p$ZCum7E2snw6&yGRRk$+b4$jxp>_S}MkEnl z*=$(2SRLSo=5FGzGIBxxg8s$B7Yyiu3?KaGNg5Yj4(R5|oda#YI3<{z&?Q?(?S=M6 zD8Ushfd6bgpLC2g)P|agJ++rb!9&Q5C6LhbGds0*WnieWi1M{Ir9N|oHiKuYOXnM` zEY2s71`8K%4$Cu|zgz;}r at eOfx!Ft^3#=h;aItqemKz|~Vdtx(B53~MWS%jAt?AQ# z at XmHDqkOE%4L!w2+yu9>XE*H>?=|dL>|NQ47{bbHcYR at hrR<$}GUD@>E~SXAWzInA zm9a7Le8`IfZJ8w0YPHy$jOcn{Iq)VUcsm<(H~59)`yjd4tnV(`$?|z)IKewl$i`CB zTaHv8qQ*->&ALMz2o*QEk;U#-M~hy3 at 4k~)m2e`;cOh%?#e5? zs!Q|DHrjLaBb7^&^}Mjp3Td&sie5_zXp)%gj`fcoQQsxFH%fwnY;~{6p9*O#@l!Gq z!+mf6@=xxIs)EPzclwZ6s`&{Pi}X=-F$Z5XN=LkV at O6?ue3^lz9p(8b%hP>tL8pg9 ztM^ESn8T1uhfJMys(ffva_a}izb~>CHzjT?D^2x_=5?R&oa7m^J$r1 at W7?YzGQbXy z?TBQAVWauJoJmw^sBjUvsLvQHS#F2x+j=i@%t=V ze>pCQY+kKFp$c9PFJx_!nDD<=HHOApK3yy4H}mQ2)zbO`TX`_}NUm|tERXp at _zSEC z`7q!k7{z-K|8t7WBWwLf2M%F|y`X>$2XtfXR+(0}00#Ku&Oj_R z5z)&4zj42zfeWV@>Sz;!OI!Vhv9uTikD%sr!3uQcpLF$n(7(+Se_<&t zVt_N`sUec$hK3fGC_i9!2BZqvaopJRfA|u);a7WaAdT zxaC=fA#KPSnS04}yf{}vvHaLU`QB#+CLfdr#n7_AN;_lg>6u5uxXpM$L+eZHS4wth zRE%K|i8=~VKa!ktyLTpVzF+7~2{%(C|Ek91?nBZVobN+VqvF?Rn*rlZc>bI0wR zO4xJ=nSHJ#F7|C`f8Ckm$%=KBU?!nT9Js7KQ_EFTRf(Qwrm!FO04c93Q_fLz3z}R> zli}{b{_2Vz({zaUV{N`0D}%J{!O8X6{2th=hvIcMO&tG>ijXoYdD0KMYwV7%;uU+` z^LQc=tprZ$8PmD>E3I^WV%$j5jrGI{lFe7*$E4>=LZHGC!G zbFfJlcQhO9lN`u55dP{Bxym-5-}WO68RZ~)=#tgWD*Rsk7(XpnYWBd>H%1brCVj0? zQY)`?yFL{0tXz#Q|N3|Zo&m{P2}22gzNn8c{B;$kBlUNsf(&eT6J at qxM&otVM)EGPR*T*KB({w$E zSMr{{yr4S29~FT(WRM8TYAu^;E!x66d3a&QV_+I2634 at +nywXF_eaIEmUSeueNz=EnG5G^*XQP=}Q6gNaZ33=Bi4(}Esq)zcR23GOk^b!@B3+SRG} zZ5WEN^%o1KzE&xcjb2{$Ra0)O7SXg&I zT+KnBBD14&3hYl^%Z+UCTfRQ3}1TxzE7&gx^v$eV5qvK{(U+sV%)glP9aqQYcd8|oz7p3Byr=kODq at a?$GdC!Jx zC6LTJ8 at Q^Z^X$miLW{}0yD(_yuxbZtp+x?wmNa&)a%HXkZBMKxswXv316zIUO1|_* z)H(vC5YA at 9ET(;W`M#?oG~FMg#m_R-lpmI}F(^#wXc8aR``135F)pvt(i6wS z3TU at eJTy+m*UXHQ9%0n#Rl-B$fn?_*qflhV at m&$Iz;)KU|EXGi at yo_2f|Gc(Qj^SA zM2{Nu=@f$MyHW~52!kn8<~L2G?dxdarl{rIZ?7L+QdP|2bzTfQ72myF zb$vS%vn!(HrYvy2$5KOU&hwt at 4B7593H%iy(63+7nRaPZKHO|3H$LXkh&G69Aml<* zcSw;xE8WN#O?>dY&VKEHBz|P6yR~}=rH0+xB*7}1kv^oytL&8x#zUam6}Bt0F)J(U zd?9|qaEsyK(eseX`d}`LJ)lVViuXhQ->$>*$BMhAm?S=G^reJQh#p zJ84zwyD190ADx`*`vX^{?NQM#fok_?z20b0c%3-~&yz1-D~{-|NXIRY+cljJZ>QIL zzP=k25U1C(n_VoeG~+%p%}4S)?7TOktcugyjHA%3y6(l}O~sQ7ua!?%xI4(*^>)Dq z at V6Ka_qN%2EhGuK?!`2FO&ugm+apxZ8ycsB3E_A4wOe1)2Zr>q^&wN;*5!~&(O&g7>6W^V8Em_y z`6H3pg|$4UYy6hnr}_yv3-6__%&1+uLw(OX(j1L2Rb<16{&3=3x!9M({FY}P at GPS( zw2c%YFy*u%K`kqGKu}X(RGxs4-(AR%7tNS8YB8&*DvT|<t~qHFbkIAhAio7c z{uBfDYUWrhDxx31;RY=otM6V9E4I><;@C7BPgooHI8J3y%yRAzet{WJC3z#tjahu^ z?bHq~f{bPkN?u{$F!?W&Fu7Q3lUQlAkB=L4V!;`dt(|8z*E25lia6(Im9mvSu&!81 at CEEHC@wM@ z-i;^n+z^4fs4=O&3}CIk at h#m08*|KVQOPPwJm=IU6^_}_kT;5&lxWqOLP)R6D)$O( zY7SzHTrg#^nu_|0C>uBX80w`Vk65!>70KDXjQYGj%QUUHs at 2Ldr+mR-v^}WYkBuVE z)8dZdE;l6Uu)ukD*ds~E&igF+5j_vMcOVtt)e7IWE-zQR4Z_R)AEZB6H(*T%({qY!6eTM zT{#GZln||Q9i4r$cyDL=?99c#qZ(MI4Hz at O-qtn{7^c=jZ&@&R)J7i)Y2g^4GJTco z%D5GN=wu;sWvZ;7Y&l~#W}~9BpS&`)is5`e_wMO^F6fHMs z at mZ7p`mqk%xqDl+i6zTGl=H`S^1Bs=1tGzSocKRbTa5oeqmngLl4oMP&oyi8{Y}G0 zmr0b%Z}G_TdQm+c{{1APICKyZkg}{%QZhfGWnD65)l~lYJMT3^=_;jV11;2jVeC1n z`n#;t~|JfG5- z>Qseg2nS=Lh}er7849g9V*)UqI@#&UH`t##S9klCd_EF_M(GaT&Bfv4+u~CG!HTw4 z!n3}o$b4nRY-h at F#?0i5ujVz97s1cMUsdEbN5--dxBPbA%mw$%HuBTL!LEL&{{WW$ zI z)Q&vzThlHY5_Wc7dJV3r>)mo`Gbhyck^J|MbPX2jOb;@GqkG^dL&&?HSIzF1%@e!a z*9foa>7BEceOiBh;z)rcS^hKAgWidmnHEfj=xG9#rZ?P4atA%Oju%UfJcsKRkR#K3 z>9&Ym*0qqBq-}kk?Q)?QjPh;Bg_?PF|3;rHw~enx%@le>KzTsugV9JMuj=rlv#Z9^ z$c}Ya^x;%SY4fKl(*zY){G;kiXR$YOw!1zDZD6JTbU55nQ#Y%jQ$nSEqbQhyOAhXH zM6sh8rPAO;hVI8b6_9w)+3*r;H8)u<|RRL8DI&;l4)8xi;O$e!@u>bbkaPsQ5Z6bSih5e1%1(%0ha72#N^MSlckImH1xpXA;)KYUYh6g;mutDqNncQRS}CPlG3 at VCsFQ3r z(DzwgTE>|pl+RY^PS}3*wLYyAs at 3zd(KYYEtK#=%W?F&jJNfv|+8>QQ-;Zg6r|m+= z%*w2oh}E#3p45^tFc}UVo92hqX~;08FlS8^vNE(N!UTriFfu+>nX3!gn=|p2ytCpf zREFqd%Y&G+mtI}b at A)}k&U5)Jwy(XTNNbB+&pR`yPfFI)I5_LYk|FSOI|q~Uc-091 zuzS$c at 7N_zKw92z#Ds3W^zk94!^fDwcHCF=2{ka&A2odO7s|~2Ow>UjeUv3(dpo%) z9P8aCGtl?5g&#|6zO{2$;n#t_n{KC>vQ}%c?RQ)m-|~y#`F6NWnKof|&tU0{8QV85Bi at BLD-T6{*br3fsL8DPZdQ+5oLGk?1RxKEF z*0;uX21ldW8?$m at ozD4L`jtLi<7SDU`!ah=ZG$Cj>3h#eVp=h}7?#_hUnWZdgdUP3 z^kqz|oGA!j-qxA$Fg!)tdO})TUZTSC>B`-_&*KjA2MrBbS0QomlTi1JPSK}7OJj`;C-ga+P+r_WG0 zD_lRrRcwXorM|Y6W2AfSOa1UuHGI<8xLHco;-~6v{e+WX1MQ>kYhDd@?epU^#N^HU zO}NyZQr^Y at cMQiTS9ot{^*AV*+!F~!Zs>c!M_vCaBaXzSfmF`4eLx4)S zMm8MRTvSF8Xnv_4GOG^|G2^!56w}%^3X_N}gO4q{367UOo~vi3Xzb75Kv1Y<>m7U# ziSgPrtubx1Vj~;ro(sxC^>Sa*?mH)n;EY8vAAXk49fskpI=kf}tcT@&=8qwSxy~1yPwmvOeLBX)9kx2DtfaxIDh?muDQ%;friwt*spMMq7nWc7r6!~ z;cI1a*FWpRJ6UE%#%KS!Aj3zc`PwJ2IYO)rqrE-ro(QVFp at nfFMO0U=xczJcrfirz zW(4NPc^Vl3dBSZK5#(U+?-zNwuV}hX!e!;cOHqR1jr*O$KnbQhU*j;twlQubY*m80 zf*%IcNVx5^_ryoYZqHSCIEM6_TisuC?+**^vfqm_X;z!9i zn+dv(4Bjl?kK?B)`xLF!QaO;93gTXh8%43j?I&cYrmyEErt!Mzh-h3;rUDcE=G`9Y z-w;*7qpn*b>csrzn7=Z%E5${vP#}z6H!llpSgIxp#B9V4x0#g at q~n-!wsponv5`gy zriDM8S7NrFEznXNM#XPj zFDVC|_IHyc`{8-`I8Bl4bLK8cHnz4P&8|*BgWa}Z>po`(2D zSn>QQpP1!sA+wDJ=k{gLDzv1uN-ofJXS5<;~DZU$36vp;c@#h((Zgn*TmQ56|1iTkTcKU(^s{wEkSK6_mLcm6v$vST+05E{vzAplX}R7fw1AUPWffGu8P4j_R(H zJiw#kF)KV*5F+x at 1~YlBf7E6NOuLMpE9~6rv`$|~lX at G{sMYeK!3ipeuf*yKoR5^JD zE_Wjs>c at z|ouBB$TG(ABlYhepZf}hL ziLS6hxuAdY9>0|h{~xO0&)e|-L{~)q9bFNI+nD}4x5CBti(BFP39oSeKY=R%^}_k@ zE*KF))KPITfqYBuI0#sbSR-7vDGlQ`2av$G8 z+V_IhPu}AEY$|fCDU|5|+G4(nUANrVRuT3CS}%2?z$#Jh7uMu>+$Gy{&060xcJsvJ zxCcOutTvO1HJk^}&zBeT$Xo4}I6B6AF zSvmitkp3qt{}AvjIEimKmaC{fUF2vM4&j zO;ljcIxN6LJXlm=?#_CD@$k3BQ8Y4#u_zij-hyX8eXuCQoZv2wCNL*T)>{|KEOIbY zOQTz!?Uw2RL&20>9Bg_l5{_^ed%(8}fG-)@IoaQuF!5j!Q2{tMS4$I^vV<^;6s0qO zHu3YbhyW7=JUCJQJfYwA{jUofVCZMA{C}R#&n5Y7I)6{y+vzx={v#x)f5rp|$^Qi9 zcF|=lO`UWoZ$Ug|%AYvXtxyE+0)&_CH%DxLrw&Do05A}44lD)W at jokp%A#NovlBA8 zWes)yW06HuOPkWp#m448KR|$OStC1hIx|Nmab^17*O~1%7Es8=*#hp!D=sE34seJd z5C}+W5I|CaAR-_T8*uzn2K4=s-S$JEKojE!CJ#Kz1ppy`4d(>ZfHAk-oE*SAFqV at I zPy^D=)Wrn$OONB$+^wryH)0^r?J)%M-*#)79cVxw8_);2)xEU|47i;RJJ5G4X9xXq z4 at 5u|c)$#uC^yg#Wn~3%0F9NE<2i_x76hWD|1GlajxaM+08C>;1uXsdMF|0e*};@% zl>d>j0UI3n0J?oq+Wl7s{C=D6f0J=RfH3|=#s=mD0o(R3G7yN1>+gEN>>$7z|3!}t z%*F8!AFQlgf7b&}j1$<*e;Lcl3IyvPGERUk{hJ;e>+Of at U&pesbN$^O8wUpj$j`s% z0WvON2mDP2tn}YyVAg+}2OF3J0_>*0js*j>-alke at IU-QK;Ylv=j><%;H{3gj~Y_3 z^n?LR$)XI01N#S<$L$4F%FYZ<`7^(74 at 4<-D0xBRBH}`#!opB4b`V5Vh at DG_OI#cZ z1wq+F*>97cANBvPa=TGQ;U*#$FcWJh7h6ge5ixcMtGE~&NL*BegN>DwgOim5#Lg-T h5)u>R5ET`@-EL0KMvl%uQ;zL6qfwtd6H^dJ{Xg76qObq} diff --git a/acqui/pdfformat/layout3pages.pm b/acqui/pdfformat/layout3pages.pm index 2d82b8a..f081b56 100755 --- a/acqui/pdfformat/layout3pages.pm +++ b/acqui/pdfformat/layout3pages.pm @@ -373,11 +373,8 @@ sub printfooters { sub printpdf { my ($basketgroup, $bookseller, $baskets, $orders, $GST) = @_; # open the default PDF that will be used for base (1st page already filled) - use FindBin qw( $Bin ); - open(my $fh, "$Bin/pdfformat/layout3pages.pdf") or die "$@"; - my @pdf = <$fh>; - close($fh); - my $pdf = PDF::API2->openScalar(join('', @pdf)); + my $pdf_template = C4::Context->config('intrahtdocs') . '/' . C4::Context->preference('template') . '/pdf/layout3pages.pdf'; + my $pdf = PDF::API2->open($pdf_template); $pdf->pageLabel( 0, { -style => 'roman', } ); # start with roman numbering diff --git a/koha-tmpl/intranet-tmpl/prog/pdf/layout2pages.odt b/koha-tmpl/intranet-tmpl/prog/pdf/layout2pages.odt new file mode 100644 index 0000000000000000000000000000000000000000..e07288329a985e27c838f90b055eb51659aef505 GIT binary patch literal 12688 zcma)j1zeQN_dXzvbV`RHAl(hp2uL>qOE0k?9ny_-NOz}nhqQEuba%JpAM|?l`oH)0 z`JQF>GdpvhbI#1X?>n<+9%Ln-Kw^MB3bwd8w^k?9(-#lr$2aW5+Z8=RzdG at 6IQ)O{ zW@%+%WMyFeTlfDB`EPMPI{P(f|0~MI!ouwTMiKo>lt6QUk%2Y6AkfAfU}^n-%oD-` zSkD4v^VeMLsn3MWu%WmdsKCMx`9Va`IMP=o*oK*_6MqKb>5QgZfYZvcp$95T^qj93 zTp`|;A?1BA=sxd>F;66QoDyzhUX5F_>7uCI6h*X!Q&( zC;f>Ya(Uj7fo*8bNo9w;I%?D1c)EBS?XT`T)8PUiihFPo-V_ydH544n%fDD(JbNw@ z$f8O^1xNwy#>sDeIl=niQ@>fSDaGr?f$wBkL5i!y)im~%9sLrC(R+0Zf%Bhcy)fBu|G2tx?Kk+Ury`Hbhr-~ zx~XZ_=`&s&;S3pGOv>*ZGNve*6 zh7wA~My_J9Wn^~|)k9bWKs?fA^Xg6Uu{d(Xy!&^$; z*FKRs9F8+=wP6`j9+Q}G1k5s(*XtYcPzPsGlqUt42>a`N)snm?Yndp~s+67v;96ng zMppMdJ~J$k6ONeflyQRZDa55n5OJC+*HYG(o94ej?=!}e7rvs#uByd6_FS&yKD{kD zF8DmA26O6+-L`}bW7){dIhi(t_teg+arf*K($baF2^%*_c7+6{ux&acQ5I#7SWh!@18)((c6j+Egl|En8x+c5j`I5tEp?) z)!x@;gB(<0OQi0Eu$L6%XXvDxT_QoXW3%7H=Dj#jAC4gP$cD%&w*rH#lQZE~6`7hJ_0-81M6ej+ zNd}Ig>fZJ&kabQQp%`*2ypR_8P;>+X_p-IaKB;^kB2-rp_$*#DmDbDh)j$x!aomoU zM4KPttfmZhu`FBwsradZdS7gYp{J3;7k@@<2l#u#=p%$wTfIqvHG%m`+f#=?vYct% zyl$?j=fcrLfnYr60K^t_mwEM!uvB*Z;P~j5wk}ufVDZd2{KmdW0LFd>gwnRSWIxJL z#$|Q1)KC{)tChM!sbpEK(c(0``Os&&!Vh=YFC at Vt8seSm_g1+h<9rVL{cO*>lYkzakgeNRLO|)t at f2TpHQX?FOSe z+cakiES4WkM20Vg4S)^#2nXgN6rF*BK%$O+7Q1Yh_}-T|;B%2J!&4s_Y_sPGz|SMjGJ zmW6fDxC3IAM#-QFia?;>XIlUzFT9Gh at 4wYU!O?-YscAI9=ULn2=H>JcrdNT^$*q9} z%0qgl+ai_qPmqHP((l7^}q#dNyvSHhMGJbv? zMwku at S64&+=7d*1W@{o_j$GFbw-*TNuGTYmpn9LlXQ?z8A`p^}$#gfkEgOw{{4e~6 zPG)z7 at T)(}rm89OtxdF`#u%`DgB?s7HzT~FPogp=$q5lM(1 zQ+e-c$7y{@1l`&*V}ygS5&2w(2-&t7(B5Lm^7zFwC#bx}Ql%gMv7-H0_UiGV?BtW!f%+zLagnl2&mXZ ztB+RQnB2WMKWcv5Y+y*dB3Xe31B0Ufx!L%)Jq-NA+GuU#Xl7vjxJ~I-mk6CbIa(Swal*}H*qY|66?*CX)+r>cNe^X`!|hhE>W zF(Kr0p_rmthk5kL{-v!j(GkL7;`&hI4PMJ($2T+PCF6CfK1;66Df^$Y1wpOftZJVk zRzl;CzZaoWXu}jEk$i@$u=Jh_nZTlxh2R6Sql>s>Tu~hU9&Y}YgyJ}enTyOW0en(e zgIa9E7Xb3Rpe7`mFPMty&z(nVU!}N#6+T($LYAicVpd4IYF@~`E8#ez0mc{%6y8!f at E>r=~PDfE~<3K^a|;YHSS@*&?2#!A8@;d9ONW>VoRw; zl3DEWd<74~!AMRc09`!+{0%EBE-XB*Mw2hfOA_I5?3PRu8!hX%koLuq6cBaBf at Gq) zSXtZql|}AOj=FAS12c|Sok5KypP)(HK|NcE@<4TbvmQm zN)rBh%DR!g1$r93H1dXWczG>7j-}0s5We?9tmQoE2lNA0GSNq~!yA7O( zF49_D25KzJ14Ov#HlrTd5USD zZ3GD7^+&m6be`rq8qGuo%&ciU)nr+!b?VjXil}cA`WCNENlFeP}$&iC at U`Y3&swyIjg*Jh-8Sr+S}_Th30W~V9nqZ}L}jHdG9luIpxUbUJwLeY@} z61rnku6SpcA^wIT{-}*i=yuaO(-5Z=i7jqdZ?+Sm%5 at _=p?X_xrbLpnd^Y{lp|}rG zgpC5y?~fHm7Kc&!h~|c8Zoz~$7_T`Zi>UJP!v%{3=n2s>sw+MxI*Z;vc`ZStsw+)^ z7#-_aToy{TE|s^9szbRhwK%VC*k-`a5WE-f;=E!><7e8bc2VWuNsehNUSkjMw9MKl z&%ovC*1~vw7&N>hy6|{u7T5U8s1ri zRsk8~F0@)FjM%ox(OCXzF7(JHhrOBy={y)+IByU0y8UqBBbp74LX{q{12pH4AZvdH z%;W&UKi5q1_{gM}Tqvn}|pu|ZaI@}W5H zvwU?c_-;;T8(rnK{ zi>g$)35iMNy*&MXo6*9oDJW^`64vi(b|c*>HCXV=u>&me0nFxDh8QlSiy`zN-g$jTS#EeE3MUYf)D^wE zFa5Iq3Rz*}xjv;c;R^fL4zs!n?swkiw!-Q(IiCi0OPL_(#)QR at oYRy_e7xJ>CSP3y zvRgLp&}78C!7_jXZlYG7+_o4JcW2zqVT&j}LnIu;%KxjMr)IXZzsOiecd=GJ7FRm>xmtAGqBzApC zc51&(n at nvYf50+HEhwr~lu at Njo1R@x at 6BgOFV+}!kc)hMU$MUL_PCPD&Kjws!GM9q zll@#tfBvv-!$6}nZWLLUe+ z;w4p56s6 at L<>!Ovu`o0Q>KSnT%u~=lBs2iT4^WUb*N-M%Qd=t!*Y}JD7YJZ(V9jNt z$Mt(^gX?!~uJ4Y1)Hs*{L8iQ<#x^#VT=ewz_V#r4%ybr3M)ZuFoSgLETS@^2{J^F_{#$)otnx2u4k^ZOdV}$=}P>;I5hh$-4 at wcPLKK$t7cXvz-3 at r3N zzLOIFH7dUi9}_9x&#`(m%E$BFw2=YmN2Y~O=E0iG_p$tLjhT+&xfBp&>p=X^2JMH$ zhKYfm4LvghgE=GXb3t36nLaHiGdm{_{T~*8cmRTcHb8(Gt)7*^V at 8Kh7GP^eENfwF z1^|Nog8ZrS1Na^AF!!|j4`~~|hu(40GBD9Hawsw~aXtL8u>FPpryh^K9 at j4bBO@&% zvmzq{7Xt$q3o8%(&&D4fEUkbK84Z0}UB`cm>bKV4)c^lzn7LRPxfp*&^Bwg==?BU{ z|DpdNBU(L2y at wqlA2ZWmVgFJ8Pi6hTvS@s=55bEwvr98FDExu at TjdAx@9Y0D>jt#8 z0qPNdpAH*jJd3eyG1}=%=`2A;MXE-M=si_PyeM0ZIIl1;GAT!1IbnMXMdJz!m~0X^Ru74Ulaiyp3NuWL z9Fh};MHAmtf at 8IT#c at b>o^-m1wwg2tS~baD1G-BP8-68P*;Ke6vXzG5W} z$;4~gUiv}bq7Qu0e0^QCW!Px>`w=h`cCz1)IK7Ub+Za3F-+p12sUYs zQ1M1Py`T1#jM%4uMKcL1!U?rzUnF!NV zh$ra7GRUYl=Zz at vMCc=giPjOqI5uhLC>`0{m*o|v4PtOxt50~(AXQ^xL?KsX;@8jc zXek28JoV6HAf^2T#e+c+aw95ZbcJX=w at MW-^9(Nr{nUWGi|NkT9eFrLHnsy*6QgI1 zgZ9{GMq~N{sTw?SRA=KU!Cz(UnvG}XVT`0`64|xVYHnAyCyd zIHR14ej>GE3TqFpd&vr`vjnOJAu_HRO84f%*ejPL@=T=@tyAm)-nqt5_TF-ibV`So}l-HsNhleOaXa+hLTcSKBRo z(zv%d&Ryl}#Pj$<7JcA_2ij+M{Hg9y5Rw$G2K9)a9i5SMZVWdm+=yvxcCx-MX)2mu zNT~M(D@*O9Tpfl{`xv(Ajx z(q!lVJSirY3!MVpnOdil52ci>VDB!uPjVX<));|>|MIv$>T3GyX-`LpNvschSPq^*9pX$Sg2-10mKV24mm9*0<~|->trJp zd1RGYD5?*Jmbm%P#JP9`gcF3h?lg&eH^bqHZfRO-O%UE{p78f7A4|Cs6}RKsFZCFI zLV=QsD%O}~$5*2}AX7|2fal($m0OCd=gydb(8<}3T&T$osp*UV8bGe-c@}wW*5F at A zg?YHGxiTWFhlsM7WVp~iUw$TMxhg{8A4sr?Ju*R$Q8^_31{^w13i?=f4>DSEKmcD%IflIXA0d~hLjpo;UO zD-j}tl(KhXyQQq#FE;$N^<4(44Dh0y=SMy#S z;8o8l^cQ8`(p~}o^r29E6ok9tijTI4vKqf69Cf*`VMtc6JZzBQBi$PZFnBVuIDBEq!3;PA*aC;kfO?JLjCVUA8_&tv%Fc1;;!T$xuX z;!BwRg49jV4&I{6%IN{CEs>ZrSL- at ft^f1+=cV&5tJ4DxxhkadfbPw&_v`4%E3!wr zibe%`Olw>f5a~w>@b{NIMCvbNmd|qqXIzgw>K0( zvGdJlY9)>_I=+`Apc07T%l1;`p^bUDa1!T$nQ|n0c!H9F6rk;39A56R2y{nhlII3F zvdu>f)?8){DlsKeGL5OfB9hdvF|<$0ycKR2E7{)doa-hIQMv+O=+SuEBsi2Q>?&Q1 z%&o2t4TCH{E{z6PkSwAr?(UaxlUf$G-b<=imO497*I0E*XC7Fed#01dh?n;w2idJ$ zXQrVfpWAFj49 at CXOA(qpOsTS9`U?o>JJi8AnwIkmYd=ET6{8e`4IN`jcmyH3xvp%Z zn*1<&|ApSDMTTvWLH(NRMNBqCQnmAz%T-yE=eUe#GnI+N^;hnO`Aes4{+HG5Gb4TI zLU-&m8`Q`-?iuUGrDtZj25{Xb_E=0#4d>m+T4*OZwf>GIxq27)xle8ZuS~LDv%AA| z;V`1OChD9Byj%$NE$dy{^)Kk3nk~j2bU7}%T at 0^UhnfOuQA%WfqNzb8l+zWVvRpG0 zY%rRc{d|PvtW=XX8VqC8q3qf!xYYrVOsf0}U6O--rxeZN+FN7%SY~?`EbP5+ zQ}Q7J8ShCx_t-uaBNZHdQ+DB14{Kz);ru2aMJ>EUQr(?x}MuX_ZJnR zxx~x&leNtRn&_Fb`ak0qE%wd%3inKJ-{pFgB7}QpL3}hUPjLgmXK6NY82*Ai?F!su zzW^>&@wO3(@9yUGZhc%A?Y#Q)p1&<&kSsI!k!KVcD_M`AI+!Y5F>v>7o+)KMmKHrdg8TNsYvp|+gW at 2x}x+{HPDF-iOAeM_+71`!! z$dT~)7Qw}uRlaBdrN9hPc2b<#Fs7>!xpux^zV6vq@~v0wPZz2Mr6FR%efMP}O*zy2 zaQ7mCCt09acz13>?s5Wuk494TD=7W?UOr zbPCV*Bcjh5Yf0DnH0I6C22y96INHKmQe7)JAfMv3e_pi^_ at X!vnm=MQ%dxa!sC15dprP`#q zHeZt8J4G`)n{X79^+ZUnv(3nbK7Av+uv*Dg$J at FXfBwv;nlt=m at mf_S*2Npgt}H&< zWOCD&{_-H3Ac8MOOGkS{u7qEZD4ozOzLo46X+*u4OeJx?#efKQ9l2n5ntOQkxd1|T z0Hjz;ED=XPC-u%PCo;dt7wGKaf$*}o?o}C8LXKFvXvf4o#@PoLi8n86z10fDT}n&l zIg%Psi at 1nd(+5)dRaiedt%Ssy&sZ5|f3t+v7O!14>-i`ey%YV#r?KfyxM8dc_f?0c z$mS~v&lOc$LJ6>~3xaoCvM-?~T5;VsG_O~hN2I({zNm{LeZZ!!xM+`js~jqD)D4=J zQL5pXr7Uq>ZvR%Gsi7>rR8 at 72y(X*SY5HvQUSN8mw9k@;Z(GTeJpsaN8PXyaQB>?h znEf^BlebW;CU@?rw#zhREo(=i*Gj1XkAy-ihry}2PgXHC5^6dkNzEN3 at Fkm?rTFHw zQ at v8ML53sop*d$RjlGX4bW>aFY%D>XvTy0sb}FEC=lY at q%#`&5uc#eR%!jZ3DzvEL(hd+`i5B#^HE( z5c-EO3%45*lQ at adF5fT=zAmZ;v6s}{&hXF6^C!AWE*hPfH8k*0ZOEbuH5?IFEz zdGS>N$alZkHG at 0EsLMkbm&1dq-qB72t&KA*U^a%^ND97{1;t-C*NytjZaX}1`(RrF z<=qxb6V|+-Mr*dq87)?9)w!~cWB)h(4s`z at 9`cQ)>0Xl^nXPsNrG9ppCBCAB<-S_& zp!Z5{&wNfz)jt3yhJgzEa*J; zo|?*-C*gzPkx65x#d-ztOC|*DX4}sToAfkYQ{k%BXKk@@YLz(pu^IZ6PY#MFS2*73 zZJHnZC2Ev7)qfRhyHEWVjYTHWu~I`u&Y>r&TqGry0+KtW%2UixueO3cWa33jl9UxQ z{#Nn+Z9~%MP{TlU3oFM}RLGFGpqF#~6Ngmp_TIEwZ)@MbiqpmlKRYS%&r>A20gzjC zj*!h3v=!ou_kE=1v<*`=3i94V56zIbsTE*KqpP&J3LK4!R6GmMQG~+pjfLTS=~LWk z&`UeyWQ7-rVk9zQG~aN|5P3L*!6yRjgx+#pu2_wG41Y=a*Bq+>gC^A=JY at Iq-Ou`ivp#Hq||0}lEg z)O2_cNn0j#cDcKVbydF&WmwGZ_HFNQa_G)ygH8Wp?)`JlMf>4VrjbG=zxF$r$Gj&A zRh`E+G8kAh>d(CAznvgHeLO)luzAcA{dI<@p|C8D;kuv=II8PFv9$4#&lbcGuJuhg zo_G%9Z&Rl*M*wkm#Y^zn7R3;USZT-0c!cw!*Zxh-ZRz1w2fp_yN4=y$^Rqkz9VB~R zwpz)vy0ug3ZLyJ=$fJ+ at clM#$6uKa^BIomDRjsP_MEYD-m;qq_ z)hVEIta!uKH9K at e8a%VtYivD49onHwk6Nh at cd|O}6AMy~hF9sd$P`EL?q}<98|=B> zorHvfQDc5j_PBivF6Y}pezEBc=CyD{I#C=|g;omUYMdaB90Aq*Tw&O*qujEH#c*#f zdjQcHW7 at IKF)#%Z7+PBbc2Q7d=cjV>l)_h)(C{d~o;+U>LXTZ(EIg5WKJprZ-r0Qh z4Qv>%V?=#J11Fb4CVRT&xo|*UGJla?*?H5`;VpYdv at JB1!0UQmdu!`VR^P@gzqRS+1?{-a92RP(Bttwm_&Xa`Zs#HkK)52C at f6q$ z<|%&o at YCphCDv5|ZQj&kGw(atcKRqz4-G^Q6?)5n>G68DQU}j8!W#ivjpuR2+yG61 zujuk=xUwB!`uRN(EZC&59%=}!%dW%%CaVtT$5?p9UhuLG%NdQn+^>S8yLur^nJ>XR zn$deAvET%Z`3Pi}?1XsyC}NM_C7FhFsZvIiC>8p3!orCh;U-i;s;E{mCMN at G`+dY~ z?zE0^PG at cb$1(|ZsF1|Vs;c8VKg$VFh3WR1dbXd^sEQvK z>Sh!Kte-IL6N|nno6wL-(scWJbS+w>(La80T|V4?vv5;UertEYn|ofkdrMgz%dJ&) zcQukaK$BW*K!aytXs7zEI21{$9Mp5KPan5l;gy0+cej1%I9MDNJQ-43q6(CNR_Q#< zia&^w9v at g++bqkki$1S^V9@{#i4+=nIi;T6b>s9mSA_-2DlkXVN4=RXlbCt5xH!XO#JT0I( zuo**YpA1R`U&Ot(b<})9n<}Btb?l_7lg}(@nkz at DI{Fl%ZdU^3LOA>+lHSxIPQP?7 zjPq3Gx{{)tGDaduK3>A-7&Yx;XFL_UQbNEZ|GlVN!U$O*CX<+tL{^$aBV60!9wlK# z&8ch0y2F9$7=qL{aG>rC zD7B~$C$q>GtT4I`NeU7!yR63~d3HW7Q7G7XezAwt10HG?0gYA6qO6-mO3GbLv&W2( z_sMgQjLDj;BU^)#ukd_TBUm|_nWmdeN08J>^=!qOb`Z@>YP&`b?vtpU5`$2~K0dgq zpAw$Fb^jL8-u^sIVy-fJ+ntmv01 at vfgg!4$ZQ=_oAGHC~$B}aIcH=d6jo49*+l{xO zd0g;0ekXW)LRr$OP~Dpt*cf=0VdMF6ui=8PaMQHc18PiI(-G*N;BQ8xYY&TDVt=)Q z;7X4YV+?)4R|aeCPBHY{ZC?rN!liYVfICHD{#kp78+_Jrr(_bF)nXnnsU&PD0*pyA zJ4GDtl$gt`Gww7-ubI00D$5vC(g=2h zCTH=5F*+rx5gRIxzH{}!M#ymno;6Lmukg__UmQ8Yn~nh~>`vinUJadDE(XY!cRknr z?iYUa3d=DharD|OUv{tIMUS)}R~{+Y4K0BO?n*n!|F!a9KCC>_B8snQCEkeAn*%^V zLj&vYY}?9cNl+UxiogY at PsjX_p_1A=(n@)mFhcjmQm=NIJ{0n5`jDu0^NjqwJ|r3k z3ml#{6YGj>E&<`ax4p^V&cfh at l;C{x&XRz? z{!+08E~Fh){~|~I4c|p~ESLCnwG_jV?9&S>i}^Dr at gsaZI;e@w z8vRAd{^!8_LjBoAw1=Vm)5`A@?f4(35I;?v{X8CpVdbJIzi*qS+;<1_v3QKS>Kuy!_aq!YC^ za5fP(F|so@;pK&La&|N^uz_;VPEj4V-K783b4le+i=Q&60s;dlVU0FM6BB?Nxzkx7 z4#k}I>1(!+x~`xEk^1z+4jpDEehInscqe92az9PRr at _LNp6K~r%G;yV7czKxK5FlS ziN7{p9uF{@(_8r}Ca=GA{&AWU>X~8E%w^NE=nLoxh~qqT+8rGLRyut9w9F`I_xwV2 zVdbIKn{695Xwi;!gM4gJI5K5{D!Z;@o^)>zNvY1|@mxM79U6$c^fh-V zc6=ROiy2kg1hrRhxSXtDmbq at NslnPZb2w^9S)PHaDvdP>nFXPvEHK?%Z at 96B=7ch5 zhOE^I^0~zTGU0~CAZmn;Iy2>y2?Sk+R9WHx!*p6b7^p0(zyG@}5G}n!MZr`EbkFpO at jXz&y&{@YzE?qkSA0zFh~ zs~NS-m33obkfvx|A}Gv6n(J!9qyI+s`U9m8%%^AX5DahW%j-U&57%Da=0M8Ae8MAT zB*6`?5qz4!dJ`)l%f-EL09v43;vQ_N{xr`P-*72LEnL)MHDSA%UkB0^mc?_I|5cdT+GkyU=KUIX8Z zu{FmMKvTalz&gW%S>vcRti*UB_83 at eh%rqzT?6$JAl(g1MGv)5Ex~12;Ks8=c#PeH z0EF+z2OpfEkz$`6edTEi;I at rg;KfQ*g7z_b^I#>r$=yQrdo}L{X{%%@hU**kf#0n? z*r&!cEKSK+&y`WtgRVUYMfMjKVoqeT`>;Bgh;d;Oux%PZVRC!)V{IBDazMndb%mkY zvKOYU`gq-W60ZLK?HNtAoCUv;-5Q{0D|(8GGawYNJLhajcX=RF4z2E@%368cHEwPg zzA&$qT|JOp5(p?0TjT$9!{6wifuR2R=3l_Z#_%uuAAKzUA9u0-|G4Wv-N%5>z{1GF z`hR-u*vrd1X*A_*%G*;amAA)cvX%GVr;%o|)p~q{btDh;jes6xeQhXiEftTEl at 3em zcPR6)3_d(CR-3_i6YTV{YZs&!5pEWVOk4X0(e|{>V!c+T4V%QI>-phMaHx!htu5q1 zF2*>>n(^z+_l=*L`ffId)5+8nhuKUvQ=Yi=Z8Q;ZrU*7voHbVF#!ibbI>8fgaJ`AK zn&8{@Lpau66a<2=wdG>#!Q5t_NO)IZyk>{RWslK^Dh at qS@drA=`JKDB`P1A&AGH9v z{V#WF9PlCe3tg6_Spgl)-PE_DuqA;#yf at gTHrpI*jET)`=caBLI1k z%U~sP70VdaGB#rjneKJNmUWz&t8DG3pHVRnh;;?wb$@B|NFKWn`%wir8oO at 452luv z5xj4`8NnplT;W~*vU!3hrKLOza{&eB09T-sm07p>UBFb|!g918{}bM at YX@hrjYVgM zCv?vXr?bK{NN1?8X`3S9c~)nSwEpX2>v!XP zgx4{<{gpRjR&&7Spc|f2adwBN>^Nt2NIc+-U$ldus94JgwoD!w at t1Kz$CKtr-eL6B zIoJoP!C79NU7T#r&0?#&Ew(nBnac?)sVAi>RBFLk$Dzm1lNXj&sj6zKAQO|4QBhDm ziS0v&Gp!jONeohTiFP`!vy>=+kxREp!_XcvPsB> z(bDZXj4;VYZt|gv$@^K!>1e4%$0j9$P2|M8=7=Fo?QK0+dqOgXaq-<#doD1l$c>Vy z%G|hT1k7e}Y>*PzNSR4AT_dNNMl!!|gLT^^wNX}6QVNkcdHg;76Ne9$AhoHDz~T>1 zOvoS>jOPuKvfDh&nK5i`ZEYPrxOq%Us**$-B3KGkqD>TAC at V~`lL845O!B|^RU`*{rAy2CIr z#mC$bLLci9l8jZ%+%~})YI at qbSeX)>flbQpSaz5F{3Jb;OsWjSRs#P&)sYKcCkSk63_&E(Adi?vkJQnrdPYD>8p%3D=L zI~P~(T}f3kUtwKf!Jw2Ie zK%a5;tn#sSgJuATfdHPFPPLpqiN<%eWHA=IEVgN%R7Zl}ddGRXmO$gh2~b2lSY10t at WEa3X)DVh4lJBD^`p7xppqPq!v| z$>+zA-1`o7_!fsFfQa9CvW5y^=iv{K(#oO5ve9+Y7sDyYyW;mT7Tu8t%la5=0h5xi zQ}@#cw at s642{D{@-F4XtwIZs@!L6aI&+cU1#zkgRLdvxXqx^h7 zO#$DNDJZ~S8St$r@$&Md%PPmh+J?jzlu^+_{Xo_Yo8bsiQWFgQJBba4 at Z9#^N)qFw znz1RL+uOVC?=5A%uYz{B(0yJP74UjzBx3O22WQ)EcwfW)z-WCN>wlJ`z-0{|rp=$S zDwf8RDy-a-V^ZJ2H39hp6T8=`tgkX2jot3PwC>?2`^LB&!bN^Y81dJBQM+$sQYr9 zescK-D<;u*;!6Qdm>D!Fp|&gQ=ekeQ-{;i)J&GJoH)*9MShk) z_2(|_%$=N)2{A1P>wmIrC5!uHJ9=dqK2NfFNwtQ(+}a>m-SJ&}Klhsk>E6~=)9Xyr zehgA^n7qYA{K+LGlk=^a?*+Ar8`#j|x3g6aMBHx_vw4%CTG4`6j~G-rBiy*kw$^)5 zT8EM`7^+$Al2V{ZHIs@<)ulL=G?*?^t%;apyrQOvb9XpG0C&wVU#&tcGc^NtX4osms);^8w z>YQ}-^=WN9*1yOX1-!rNHNUpiB6Ax$Hq`W&{~{+JIN2G-kL z4#*$SzSiF88LCEke6 at NvJj6JG4pwCaetV9PB!wf;BvEWu*=L1lw=L2^`IQ+ zFL5Ik1TL2O!68oGP z7bmuXYN3a$hca$}@G;CQX at LYe?5%f1E}fR}D`m1a;*EJK0UM=(cmb3QoePD|Fi at B} z9K}#M8|8Gk*j=HU&=UVM=pwLuY-VD@>Nq~^6(Uz7PVjL2QFz-m8SB_lIXctUk!MwCroq!YH4GPZ|9E{H0xDfPP88+R#PD z#nkWjO4(*VL at Huqlm+~q+$`U%-EK!`HA!7#G~E=El#`3!+u*BGB(S!d$^68$-mYrZ zYPUn4?5!@t#)I`K8J@?)1h)mB5872wQa$`rJrZ1K+U+9F3PK4S-W+!k0VgbPzPqSE zGgNmRHmR^k{m3r?T#zcV?y>=-XYD6)bDFFD3m#>(SQIP5S&zG9 at Gu^RU-JrageU#g z<7YH+?1Yp~%9CA%*+hp!8GQMZTMW}bSFU_;H(l{IP+^>hlW1))ZVxqj+Hd1>J06#K za;L1(wYo at EF6@>@R;qEVM+a?u?E#8E51Vq|tGA)KndKE3?w00n=QJ)ZTDh{ffP8|L z*y^{AH_LavA}qbiJ}sH#RoBZqma+;VbSgSEgcForDQ%I9X#1~`wI~TqB6g?=gaSz@ z^Js^!k##6ZO~ZDmNrsUM$Olp(YS0mlbGm0VN65O~<6g^B$+}&um&Z at CpSh2jN!c#F z=ftuj{QSY~QTat0=2lI0-3<(Kw8%V{etwyNP}zNluKsgniUWK8!mghqxGO<1&mC z$qgY1U)N&i`?OicupOihi4~!%n)JUB>I*e`Xdt%P2X~qvcq|rpu+RpF4O9Nw#lSneK`VtEyf7=sF z-#gP{*ZW~5s(A>I7CrF(NuLr~Y_d+|@Ks1WJqNjqV$3y5s!nSg6BchGZHcy$=A}fM zQ%J8wOhv!pf{E%R)=NQYQucskHBE`ui6%Sq5EuzgD|$%grXn*bkr=^5w#=yp?g7gGg6eD+D$1o}(^hc7lB0U1i)bWQC{kEuep_qBzZON-Qf%hrY5))fo}X&fR=zw)I$IitOcUoEDEH at v2f-Mgw?&@iQw5j>@V_O8HJ5*e86W3l1HGkA;-nf0?rdFHaA^sY at 2YKXu91~*x3wufDzUoc&h2dB7nyX?$NQD& z at B?xhAFk^QYGJDllV<)WTo5>^B*Q<#ZuxR|5h-lPYbpvwH|sU~HBn8$EgF|rm(t(b zPh{wJn3YcV&JgkWfa12=ZD(?RMCpbEK~&k)MOfbUvf8U(CO*pz8X((E&$)`(mVh$T z(W8gUa;ohV-&m?EBA!FIC>8(lmoo9Mj+a~XDPc;kH#c**gR-(_Jin8ZuHoR!hZPrB zNhvQi_cA4|8 at ty~@?U;9OgCdTD$B?B~ zT>)_@;X9N4YF^|6A(R4pa!kokfA)kj&n5{L--P zm at E+dC|2s`^0bFog|Hxi&naNEFn7q#T)XxS0xGr0^*Vps1*) zzwzALaMCX6Hv{k`{Wi{MUl(H_ZG6R1!OmQWt}^__}{bf|6Q3Vq$9OaGMFHT6RC3ZaWA zGl*G(+bk|KUZH01Nwo_~i~~t(T?o}o=Op~O2?x1YHlzYa`5VkdKtTLZD3#Oc%wXsC zboL(J3Y8gpFAObCfiK(d>uaM~Z^f{+2_BGqP(`(TlBA at inIO<%ZXv z>fY*&Lro)t>3Q?A&t*V%!0*BSLa4JOIap^(-;++r7sR&=(}#z;266^;9PJAH+Bm}~ z#wgBcra(UQioh;hE4PdF6}ki53FS&~5R#L646N at 6_VFcr)yhVIMG&^O0I`DnPIzS% zW~EzsP~g2_^;BarnM6TO#XyOGg8J#sTUn#TZUJx6DG>MaSrU9QR^3xLiC9Vp2QC<& zF7yl#(O>?zT#r4UWEp at 3ytXoqVQU|UHZkXr{53!61H~bJypdWAGtRth}9O^=8xwx-4CnqCn#-hplZn{Xvnm; zIw-g{h&7>XtsG57GRM!oK>cXF;3hZj?)5G-p6uGy*3U%MV(uDv8-X`Mv-ly<&jo7p zuL*%Gx*&ZeeBe|iD@$vL^GsD0HE~my`}&KI at 8#d+ycK$LRVRS$g{SBS8X}o<@xx-u z3N%A-3banZ!5QGWFCS%p+!j(}C83w&>`OXnC9-C`9U_)h>oktqlW*64~UypH6vPQtuFC&QQIiyhM9F}K8{mgLk+N?FkxQ9Mol3JO$qKxL|S3Yq*Q3!QRA7lE4pFr(`shDY7M1X)z)L~wfvGRGrT$A0*jEPwcpwyv8}?E>n60f z$9o|wsGOe;?%&STIyPaAMm5O2R_qugk$^SLw(eLsGn^%1nK8w@?t(kHSEqMocGA)A zP{mY${93_%!-R&+g)IVV>LidbsGzOCqVTaD_Z6A98wpxzb)7c?6x_>kDjS${R}R91 zdh$%@?yJ-qfzI&@n<8J=5+nPEybv`TXg_4Zo>tTQ| z^Y599=ADc*!?v_3*8CH77@{cgiA`?hJe?+HbBcA$%#VR*;J5<-b#U5`1s!NRWt*=$ zE=p0uo{+bRwSXAikd^$7nmFlAHVLtk1HXB9+J_aD*_cJ6cQ5AaGs+W|P$FPy zEYGW^Xw*8}Eb0zpXB9LR=r6PtIu3g^;FoMGCp;_6h)2CyJ=Vq7 at 88*tfJzPNIt#59 z9b05*9L(zX?h;P)bgR9Outhv7`S>dj<=M_=L4D&AE%ta$qw|P232O0|Bg0Dh&)Ssf z)BxD)A?v~9^`Z_ZBY*5WcCZx;tWU7v%zOm^Z+=6x9iy#1JVIl)6VdV2EuYtOu0L5qpad zyh@}ulEFa&ulDtj?oT#-8zqwMb~k2JZsx zSSud!p8E?oH$O|9y|q5&3hSobS!|q#Kfy+5(d?HXwn`)lD`)u9ml5rMA5H~7d zCP5_Jg(3Fh>m-g%F1!*yklPF?P>?3%H!BiGZI5dFBrWJk9i<2NB^of0?#n{9iLVjT zBm^Rs#owuLF4Yk`YI2e#*wHWeAl}4>mRLkoC1#dmLy-{9W0jaY5kK%i;w8yS87GjG z5J%U>%i<2MwcyQT7_z?cp4U4|AC!`KJ6++Ehs*#NjVNEz#MbwdbSib?KSfBUGXz)U zq|s+2nwEG_K!!yx5Z9!Ii_$Bj4}i_+j|s{4OAO4EGo2j8C%GZkG!fukJ~osP`Vr*i zdlU2#=4s`~anM25MUp={IQgpia{Kx90&zWXARMFE&y>d-9c;o at azhlI(K>@o&-^Mz z+VkC4HzZqOj-f-VbN%G{49fFBJKVkJaARoOTHM;HKb*k at Zc|#sy2?W1YbrGRh^65LJvBoWrwqLsUX0MY+94C~~ds!Qn zJv{gz0ndrr`;-2sIfH!L-R~yv2+?Hb8 at q5mL0d4o(>jPE(DP9^3H=w at aL<8JAtOF( z%Umkh}-dZ>++~)Itc79q1aUq%*LC9{%^l^1!PSHp^jE8EUG@>gaVa zoa}i{^VVW`1=rKz8&fb;CJ;}^n=*=nYl%IYG^QvwB<;F(Usrv1Z~a?N0+-deI=`Qe z!#DV_Z_7?X`ad-sv=}nY605IiE;kZA>6#txMvL_(zCxo(5vZi_a+Wk{!P>urDCfM{ zc at f&#_?7>-=l!YAD4%lA`>xNm_pAmaE7w6}02>sD4r~%o1m|aFN6CiIh1Z3oTm)$2 z4gZ1@(Y1QN9`ks29ZEu at u}=}JiA^kY4M`O{$ENtwC4Mvw7S;TU8l~*|nN?3=c~pEn zk&!k~08Go12wfNzJL&dugkJgOwLQTSvJD<4q;ja2191&8&sI08xW8 at eJRTYF9%&Oo zVpQPcHxzT6ysZ9k4fdzEZ;j<~B8bMbr~i6AfBx7~9DsTQ#u3E10cT1wu!lDt` z9Im3TiUcdwE4f4)qEiTKwve|m%Q*p5Si{_!;g-2_xig$jL9A0b^fJiNRGAzGk{wfq zdmvXdY4~D9%pt_lAe8L9=~yF1BTTzc-BMd63~S0nzA}2W26lgG38{5qSUj9*2`h(; zuo1h{;naBdax=u`bQKcVmPt4k#8Mx|&A28Gqkc-i0lp@%8KVQ3>@ZQ-k-4KYC;LtS z3Y_0{n787ScP(IC-QjURToZLKom4rea6e*r~Ays{Y7=m zf|K^Yk7Ki4_9#ZH56gqFob~$w$B}wol}#K($HMr56rx6gBL?&p7mnsI40UOKLG|}S zls at iDCwIK9SZDqaxbxi61pEewV*I=s&fq|n{3+R<3JGhnd*(PlFiqtdJ3zYA*n?bpH2&gKGA)YQwqFkbBQ{-V$6JA_cz zii>FMi^1QyyYkcZCD+O*PEaefPue?j^Vd?OcyP)x?D+zozR4QY=-xD7_?%k8zMAbs z%+h$(BUPhAt0W8YXe3Ox1wo2I5x*tKEoyaro$>1%&X?^1=0 z&&%(P5|&F!oY=^gqyE#r0u>%}+O;%whadSKayMo73#&>;mD0W3v*F$67$q!^xoJ61UyIUN zTW;}k_>j1NU}S{g#{ zwSc{yp?p4u#<%$ve{K`FzPip=TR$BS7W2MKHI+FgP7%HoSjO}7^EQ$!McsCZ2i!gf z)=DakC at 2-bVK0d3@biEQShfg|LE91by7IT-ZJxCuV1;<{x56(9s1F_jdg1=;Sp{{% zO7eZ(^E}1yXB4FyIOCp44q6SP#W9FNL8V^OApSq7R#0u at 6%%BD$3k at Jt`J zpY=1DkL||*Y*x_o<_^Y6$alYpLDek(LAahCz<@Xw0wW!tpgsK?dt)jArkWpRYXzoS zczvr0Lp@}oWAX2pwT^vbzcH1o-Kl`B6mkhu0-noNGqM6;&u~q|z-9y~j{PQoi#98` zbXyoM3L6^Ac`KviNWwri=!=NN)Ek--_xdpN(o|<==VoT(N=i%H(xItZZ&OOkS!2pg zK`h>9ygk*vng7{{*mv*LS^Jfji+&kyx6$EZ-f80KRcPYqsiX~&ss=F`%rzbigTt(% znx+CaslT={OSFNWms>D4 at eo-lXMrxE5qgwbi^Mb#AD at nk8Doc)xkD(e$XX<5Os+s# zy~C>rr?kt=kQ6Ql>}c3Er_x)X9S%owu!%G<_o7hnXgd0AWQ0WI5Q-fkM;7Yu&d31A zxZdsLX=v(f7#z#0^sQ025g&dV34Ixg81XiB^l~q3XsLl;@AZ1~PylleF_#)AZ43RW zWfS35c2IPm5h1f_ at O69`VWZV$df?0x;h=sb{WfQY{VXXDTulfG(>I9ch6V~AZ^ z(2ApI8|nw-x6;kw9P6N^1G&Ynj&-qPGwMbd#>wJ0(8h0iBy$)SfM&>R5M3dE3xjJ& zRaszOxMqPpMZjamw{NelV6L|kFO|SoiXgLJx#!C(-(eg!#xzW96jbZgmApx_W!e)r zdk^bHvh?c;HpJ at CDc`K3eW3P9Y-U0%Xa+n|fSRyAV(GM{>*&c+f%mdXvh+JT{0#vL zA{w*oNpv_iTtye3(Fm)9;YM?Q!Q*}jj=}e(s!1o at kazAQvaEwpW$Q4a8hyhp)4#`l z+EiNtrft!%oNxxo(plzP9aOV`Y{2$*ZC~oJ&23M)6Zf at d@@@G4-AK~;>{9wfI(~C3C9Eowrn!YJ! z)?oNp&qi~CI2HC(?4Y`IKB8jWnm%F#lmS>}1ha0K1>dI|CgSvjeE2!f9RFC1+kQnS z at TO3tMO1%7z59)v2D854RG0S2n#?w-Bi!_()g7|c8SQiKc)^O*?XSb1@)7?y4xjp- zPpnfJe}M<#bw2^B-2<}v__Lfb`f+%2xO!YX%uiD0ocmbw-x at sf=~cV at a6j3u&I;Z- z7r5O&oOLzblI|Xx$8UVpitawpo^SYdF_TH~v(cHtpb-k6*}=9pL2FjVG0wq^qotHc zbI&&HcK9rXoT0|84!+vV?Ni7GSHIcRa{3C>)+K5d$D+n1OLMy>V1-S~Z|7a0%Ca7X z58RK2t|i-Me}JZ!U#h+2_hKTNgA0e?3oWnl1tGf2{;vzDblddsac1)ktHLz4aMC}L z-e9wNXIp!(Z8-|NXXa9tg+3CW;tO2?yo1+063avqOUs+9K0t?jH|u_9zce#;Q(TxB*$}lg0>t51St4^)oS90~FoAgZ^vKFfy=0(FqyYi$FV^^9WF-6loXLN2$ISHq59(MaaoRSB9>)KcTO at Y7AaIVg8d1>F zB7yx%%*YEMGab$%n0yY{u5ayz)dGADZPb-_IAZc$dDAym at 2eauU1U}3&;Zj;H>mx0 zOIw0;$oaFk-n<@sP1J$>CiNnWkWClEY|$Idl}wY~(1rd8G`H}56x*Jc7fMxJBjn}D z$rc)nzFC5>2my?9!K~6{?k1pNrRFNB_3Pu`A9#L{w^6_e3!06QxUkZ-%X?a0A>?w2 zf=4PU!ur#FJ<1N_C5w4A at D+^3q!O9P0ZIopA>9NsibpgJ8-%y%Zex)e1ZGppA7kEv zJ5IAq4*_rDW;h&S2PCI+8f39}3A0!A0=4YAV5yL!^J0yCp2DVnEn=pAAw0+1dW21W zq8wL!LU`lf7z`g~7>plOhA+F=XNI?I;cC%#duGmpyWQ|cMPY)E0}{`uzPpK7II8on zumpqUWd9f8as1DX`EQBQDY+Or|I?eYql?LZ^a>g{nf$xC|8J#PI665CnHxC%Q;@X5 zf5wb|MWbe6>}>9&#m2^l&&WcL&&J4z&&0%p&q7a+&&dMm9F6zw3Xr|7-iN_TLyREdP7If3^SG|MEKjTao|c82o>RQiP&Ywo|dS_y at V; z|I?)+)c+w=2KxWGApfaU28Mq-{a?iTKM*e~6FdF?3Gr at wd1+&=5;u?*lhrzIpfpPiA06x;cfr1UkHOEM-Mi^nQ+Fq89yLLG^EizkdY07R5 zt-B&^bau4GG52OQyDbvObY)%J+6{7Emv+ctM}6cZ0B}w7`n}e1;ZM8uKKkr(oO11Y z$1(lN>+}K1n1?ZpXKZ$}e;6{0o5c_I4gA##ixUoArYd_1=#4 at UC`#sbLlfQoG7G^l zw_ at RX!@Nk`3i at d$zAb74SdaD4*dc48v6^cqy3E1kwA7m_4E!M0R2~ z&-#Gv0i7edD?LjG+!M1e@!N)e&};!{L;f at mq6egjzA)#Ez7xECSxV`3pDx~DUyomv z>YWyUr9dt}NebI<=mI?&frfhDRx9(6o+IG89pH=Py=Y-+v8SWTX>mkd>?8EqrslGc zW?Cl33TuV at x$07NoXX0ovWikIIYdfIFeCtoLT~EvqY)<~n`O|D5%Y<&Ce%bfrGT`- zgI^pOhIkE#0h6Y{#^KkmAT|OpM4xY-5 z;3Xo4VbMm&N+luEMhj#Pr6PKnk{DSqbV0}Z2d#toDE}NcH5|O{r7V5WZ>~w^=^0!p zV=yEUL!-j8*tWkAFHuDN+FCM%Vuejs>WGCFE+QE-A{kVZAAdcz!}qloLy$$Z>cO`^ z`5MecPL2&~$jN%ZdcPDj6PIuRk{Mn4bW at T{z5((jSgjPapG%+|^X_WW9 at xm;#FJqb zTMNk*R+}qX_!4zAED)IQrHCKw?d+9Cam1I^HUu)@1whXGm-9XuErmHaGa?gKmy!+O z^P$tK5(;{ZNq3s#>*7-3v~m0czu>l&UO=|swNvXYe1|V45_KBKhJfc7J*|# z^s9RxyVWGJbpd z<_K4pN-DF~Km%(4Sm=UwguN0Gj)r+Aj=8iKf<#HSL1a)2i$MS~U1 znu@@p_3NGa0NZc)!6a5n=g05h1z at Z#BG%##@4E?8YSz^wN0I* zT=B}FNTZU{xNwB7KgsCy9l^Q_(A&Xgp8oN`!E-SFYxPjQNSqSzcyP$Ih7}cmpXHql zai|prm=S~p7R3xQVw-Ic%koZ|SUSn2B{K0%tP>wzpA}Wa!ueX_ at G#h(l}l%aXhZ>I z0N8*Gf8j>Ptc~tDn%HojgY5q~pu3yvn_tx6 z6^lJO+j5A~D{#zD+GAn8H)f#0$S6|ese~3n`LL80NX$=^JU`WebI}`^-KhsIe=*(=DM7a>N0|e>MyVzJXyGvpHUYTg7@>(- zUYn6cQ*P at KIM@~Q`k-MeTVl9Eo2oPFe=TiBHIB1TN5rKK%$0km%LV&7!Z!Hc!NK0kxL%Gum*_VxMs z(J!iMX`#))+1*~=X2k`^fyRN-nH`KpGA at OE@Ou6c$<8=_Qd2bpqx=H9a=TcNF|Fjx z at L-_GJ|f=(Dg+#*M6>(o`Y3F3n&LWxC6kxQf at bS57j!W z+S0!DY^x^DH7mMjzdvlGttj-nQ{S0y13a}2uCD_-ItbIHl1&xs7I-A|OW9LvW`aX0 z`q(6XrwP>nT_>CMwuXiZ(Z}X$TYI1TVVT=jfL#2p`$pDeV%+Zdz3A9Lgo^*X2v=#jt(W-qIRBKaeu+A|qX$%G6+r5U=(Q!AAPp9uy?vAm;Fc0r! zzQH7#PjWwhGfa=GgDUq2pdY7io?O5{AamBo*SolfOtrVRH#d(Hg>Q>*&|HqeLtuZh z7;iMbDJIQ{mqqYDqkneqZXc;l2*G&6$hdKOPb$iaT0S{*i%t25lW={r{o>7xdt($) z?~nS`0+P0p5b;j$$>Rb%L_3^bjQ>Ke?hm|iw`JL3%e}Om9O%cZ^hys2x_1 zfG3o>v=QS4fd)ejukN1^ap#gZrx at UQvubl3Mw}~N7lxurQ3_}h2k2;iLJdRouLTd;@(0Oi7uGEEXbR0d*jP1c8s`eQNsvKL;{SUr( zSS|4!FYA^>J{bwpSd}$Ar5RaDJ{RA;%z1!8&s;U=RdGN?PPBZ8X!k?(xZ6%Bb=Q)$ zmESYYdX42~0K1?n=jYX-V5^&KzH)dF-Lx;fJxz5B;6eE(As(e!e|R7K#kQ-O at uoOZ zh2YX}7!a&_>GJHiENE6(q5qitk^El&6#mxkW##K**VfkC(&JX}E`IaAe;lSm(W7Dw z??hdr)ZI+Ti({n0(xJ5zn~>OXN9f+~#uU-Fu)m~&e^uxc=P3j)3>cIupLL>rAFiZ! zU&%>`R1Ey-c+9;{DBf;1EEda+HfC|NrQ-0mwfi&4H$itC(>J#UopFl>=X-odYI{xg zZe?8xi_sw)<#<{mbo=F7?Ecl;V)a@>S32A4w{P=+@KIuk<*$X2=! zR0)~E;^P at +;faZL+4*$R;&Yo%L}>0alF?$EJDU at c)6Ix3cw;sX%eAewbA8i7x at 4I5 zLfbuS8?2WB4Rqdugl#egw)Bvcv1%CXZQ8;CpV(occ&MG^!cG&PR8kR=vcEi-3PBQ` zL)Eb)I5~x!q#%q3L0>LPB at V?$+D~Nm%xS|ZXXb at kdC8!~-h-hSFhtZG zq$B`&%IL>i4^M{9oPK);e0(&LaruPA5)G7DTXdpHGK2FSV2Wv zOS0~>*!z(1(fcULLihAd5H1dn<|tTpNnAmW at JPt+5%8gg7f6mR;y`$!Xpbg2GGAx1Ui z($atf>Wg0;d$%KQ)9}jmcT+>Hvk7CwbH|AT%9V!oNYWSo^Zj!j62e1c354Fdg z at x`}?JL4S<^XcP;eQxc9#dIM at c~$6%W5-j+x}(O9T-Q97D5m4qt{e>6QBryt6|-lG z(_&tw<4UHC3$-tCO^?U?K74K?0f^j$;cnn5e^M+q at Od(ynygMKOYlsnRx+thP0W?L z-9+m3R at hq;&kmr!PrS8d*TYLoWLP(w*{%jtj(kKA3WoiDQQcWUec?o*PI826>Plfp2bM~ zo<>3$u0v at Jr!Velve&Y!49{N|n0o7cE>RXn%dGktu`q%<5WVe87FZ$Ia^KWl?V`Ud zBO9Bd&U)Cp+#Dd;J()1a&T_R3WM(aJMG1M!sGE=WQTbNh>UFbfNWeyj_d_lbd&zZD zA?R}Adx;rTA^S*rs1oG(4$%^fyj$lAHi3cR%B0ir+7hEE^33ZagA<@UR z5KEtmr7%ki at 9aptH9SQKqp}4coA at 7$&RNd?{<{|S6ebj~sCt6jGf at dxEe55ubb~?( z4(J7GUL}c<8=#-QcT*~|OF@^wK#vV2k;dv;marl&sp8V4GcZi?R_tRYz)6^q+Ssr{ zOieCznWsYZ)g2J`yl56)D(fLo$MlJSb5|V at Bj(1R7QdY<`Ov at NHgnPHp_xKKh%)R| zvwr1DC<}7X!eJPm_|r~5YR?1))3GD>zV)P01}7O)alGUqsxOCjX!z?2Es>AKu(a at c ziDusMN5+A9yQQ!?Z{yRqOI<@JqcwoK3_Tx?09X*(WvDX2`wvrI1v>ZoAygW&@o%TA zNk<9W%g0$h_rnYF#WiGfjQ0U~j-vSnwO7n)?`{3Z`vxppOY$XBbMGrqzF+(;kw5&j zya1qi+qmSMdQXb;ErcVhhR$x}FBnv4W4q!y8!>454L2T|aQ1v5Bnx-=G-aO&j%ujJ zO(ifn2Zm=xo=vOPYs&7kPGOdsaoj6y$Niz^45yRuCt#Y#pVcWv*H*E?me(DwhZ|gZ zvAfULLM=1VM?c?{9E-&i=O0`4t5>m-GlF^JuH`Yg!5yZAkT`0RaZYdP7)+y2Z at OSj zV*%lSE%mHnG`l0|)~x_o?3nG?`WJNIx{&bz(;HTog-^A}XkbNZ!0Gw^i0BYgptT^( z at SydGzdL9m8BDtkjiWViRA+Vt)Uq9S_j)WIWZM*Kd{5e{1aKLNvwf)-Cs+CP^>jZi z2e>;7S6AVrxw&<9doQaN?fzG1X8~2!w)Js at 3ra~T2$CWoAaIiI?(ROop}Xr40wRK> zG}6+IbW1nV0us`pv^0DN at AJLueRq7{7~dIVv(KJuuDRA(doCD<@%ztxJ-lLNnvwHV zbrnd)rKLF;5TIw2_F<_ zN}B`00>|<5a!u${Q}4W9c!wgU5LeDGiOuNTa+y>{Y94>hLE(=S>D(BOZO!oZj_`{( zw~u36q+LYTAprEXzicG_<0)#AC|J^1M752XT9x{NFin`SuH-$Td$@X-Q5BJduY>4C z%tS&)bS2jzA2dVvtG)&qDa+P at a7jNIIZ3p}7KeD$4!H6tS5YZ#Gu%sG})tV~JLOOGrt5oVvrMtZ$y{ z*5iGDfw?!n9G;CT0|Sla!lk8TH%@C-T2|2pF2K#H84%O%+j|#)GTNUBdHJh$muf*?iNo8SJrH^})F%62pBKxqVi(Q7j{Oltu z#pLD($p~ldMyZB7fx at ytlNFOl916qoJ21Wqdt##xk{E8`4LySiq;B%z#40u{3B^i9 zu~^xro0OaAQp?J1EThjLROlV0bOFTp0`Up)HIgS|4MI%OJr at NcKI-Q*EGV~uk&L$5Lyuo{~L6_<25c|SYL;2~1^!C%2xvHm23zEAsD^N at URwb>0_@}%~ z6n+_P48GUb&uTX{=%hb3K3h^9;G}~+$`d&rfJt3#p`3VQ%^k{&LZt*&W4790R8f at C zsqyn~o%U}mi`XD4fHRHanVud*xO33+6v zC$VOe!Z4zcBZ}o0Lf=7dvI6n^bXcP^QcVy`rL1KYj+BEq|2|3eKEuL&g_sleMFY9! z{Qv~#XaX-I#G2fyk0tu)RDt2k1Qk^c%7GsMqQ#0Y9M_Uz_HN#s<(tj#nA^G_EiGdv zthSq_e-uEkuo zlnf}?F}ktg-|06MYC_;+Y$mN|bnU3%O+8s6nIOu#ZeH~E;5>bjm+QOvVDP at QVICn9 zvvif><9r~i6R^u4Z-Uj7&%fylojhGNbgsGdlLiOK$=WpgyW7nNBa`%o^xUVAhgRge z?;1Q$ON`xcOH1mO>x`{TbKF*z*se-;nT*6!oA+ at W zAGEYb<@O%&2Vw>syA#2BFaqXbfQ>gjaQAURoOt3A{@6Qx at 3q5|K$$pC-(tM{R7M&P zegzD;AUv`84h at IZd6z^zUJG|5W5?x1?K&dPEi6Gf1--XN;g)9{H)#~a5iNB}P>#BD zUzn7^9*bmI^Icb-glvPBG1O4lDpIn^a$l2gK$m-Eg*D)_X?}3Zku?(-^@rDU_rz3( zA8ZfLFrLp_*AKWwpHRwEX6KwYXtb#&vQW(rhZUHfDRkhvy&}cWo$jWQPmH4C%bzPe zUNW`~b1bK+A)x`%=o5q};DjCz+}KOO5|irC5G<4nr1prKkoSXUSEoVJ|#a_ at E>f^ht`&$c{;7ewJG~cmiO_flUX at aWI!hJ|$V7tSz zBoSK{^nZwX&X)_s#^i at QVxd>r5A2Gj9#UQIailAMB$4p0?wDtmn|msv$Q3DuJQP0^ zS(ofKF8%TlQ=a#Pi=JS%X3}fP+h2#96t!H;H137LGEmYpH!G?e|6qLj{8rCq#%a z=AJHYBhknysyoP at Slj6iJ9+EFd2zP=%sJwfb>#P2W}nHlDb@^KhIP9Wu5Uvra%9WC z)oZ9?8`t0Jx1YQ`AD^0>IAo|I>Cj!{vr@|IIWHwP+-k!WZw~S`(P#rFV5=XQLA5?T zS6+TyFInRw>nk~2G+wiXX*{yN5qgA^EE4M8!Cm%gY0v$z$-R)IQopCga(O;$zJFe$ z(Rv^hbDiaoNuPd=VvoL2qiNS2%FmX1lo~Xd5|8UuUbUL!&?Xrf1t!eW9!{RA1Qk`w z^>=zpi&?VQW~YxkxIcvpUCBWC_<%|(1RB}86W9~@XWt#=UPt6vw%x6v6KJteqB4T;*5{>P)0rm8RlEd#xIW%&Y)4 at K0={_S^^iC$sUqYb#XEuku_ z;InM78loy!jXweUUv6E-d7JWX+Y|SW2JDi$QMeM21XbH-&E3h;`xiZxDtESu;K_8nDf;GA{lCXJBp6rCuf{O*Xk~b0NLa?i%hBc-xx=ii@?nA+(7p z7h;XJg0HEaArf`t_Qyb!@p%1seFMaOnomn(5~=!HqIzrKm$hLnPnVZL*MVUYa9!qQ z>eb<>-UuJsGc?bq0b#MMIZTCLgo?Rr;y&Xmq961kX`(VQ)7Wx8-dC6NyPMb8b at yGU01512tt zC>uTZt6Bt0qLbkmlb3Oqta>}x2gC3+A#U&nW!y4otmr=8oN-I8YJzek*jei&4?Ou| z{@$Xm{Hn2{hUF!UG(h`c6)Uk;)yBuJJgwxUw%~&}smA*WWi-NT at h*4yu81BIxTA0v z+S?|j at 7k&J59<|?Dpev-YPOSQAS0->=WS at mij;@Ae2;ZgSQHKyTniha1(7fyR#RvE z{0%x;Aq|EOpzpPEaO0J)C%gBU)`0{lKY!KA zi%Cj)DL{qly}_C$xA~fWu-!zI$bndZ+Fp*V3?fa~YDBCYf-vJ zVXvf5b;Q3Lw6W2IQKI)IeE!kVFba>0x%y)69NV447aDH3&99hF8%by*-}_x;jeg)J z`96X5nUm)+Zmm22&X${8?W1^^ZE}EYLiy*SZ4Q9u>~Kzi+0(i1Pa6J+D8StiT?6j$ zc`~Uw1KZtXg?DhFiMk?K(rCE{zSh+QfnUh};A0lNcg8h#Bq>%i+}i5ec+12F3K0=S z(!{LdLn|cfq;Z`qT~-DPCERz<$7nk)?--#f(8r>`DIA?xnb|Rd4oREEI90~5R4iobn3~&;y8*WcPjWKw*8C-UUHNZyQ0}S?KR3- zjVAbi9-6f-Cbr%$i{V|PkmE`aXH=1ozZ>sS)*iDbr at FKFp^XKgW5bmk*0xf zz_>w;Mt1oi;q7_Yx*p!+L&1k at ZFZg|9`J^;s_3gTm79Ene!8}Ya*dS$?$bFHTvj at SQ%+P{x>zZjqoImY=v{~FHO;Xp^h}w=eN}lw zdmwTkbC7)S!n#Q6lXBm>T39MO<0nSJ#y`BzA5g7kTyZxQb<}5a>y&bI;0j(XZ%^Tz zCKmbF`LZ749`4D2H?+41M$wP2^POiB&M*9r8p4w+th~hT2$ncwhS~L2y6Dp*tZ6|P z6-?Z#L}{h7nx<5B7oiK!u%)*3j=!jJQMr0AKVIn|x$a()>^)!F%1}XMOmypCf6S-} zPF$FBRd0x)^ElSAYji%zwbP|bSo}Dt*SnkDDD7}z(m%uZn0c_Ppd_TK24Sl^sl1^3 z3g01r{p#xVDRmp3QHo1HX3MAS1S5KoA-9!u!Xu)IW-~FdakGz at V=0>jA(+Wqa=Ef$ z)f98%2bcnU^LVVOyCOcEP?xc`>$4*vpWTDUGL}SYy=nuq&m$~HxId5%G8ChLhM80 z)+~cBou5~KjCUlD^~k=SON=HErYaQj$7vye^C^fo(-I}f2X$3C>kO at 6!%q` zqasO5PhG+)+xnsYYEAXIc6;$avJd$o-lxZjd+|Kzeq*6^QL7Z1c23#C? zbo47YQD at BuS9?!`m$s5K#h#r!;ZWFC at HDulCA55kE+g?}LJMM&JG|RUZ=(C%ao%}a zTdz;m=-%ozPNVzu>;6JzU&pV`wE&+A*Wvi!z?U9Fjc3 at Wfty)qV z`p4dlqobqwrag4mYER^UUv+v`;YYad9Zl%wD+nu at DVPs6K;kX420Lb9lr_22?dGqD zj0nf{pz2~t9=fV|_TlC*n%AQhd->!Mo*I at otk3WeE|c8kB|HWaTMw{FpvkhUN`-g| zr{SlsO6T%1Yna8rXDP*ciNG{=qC*@OGv(6f8$!TS(c>$Vr#KH&wFm#0h#@;3en+fe zNvu$ZmY7fUcmxbFygM3vJv5%t68HTN{K$p4BZO(0wS-2~`;1ny0_|@tHcs+t>wOje z)%L5^3e}J_YjgbPLCgh?nR2N!Z(=8SCLb<;okU9(UK^0b6_+SZ-3hCX6}D(Ltc(+N zvoR;Pin7jG_*Q8$E9=-{khHrBYG>gg9`5?=v6tZkDJ~jxwyxZ+w)nOev-)L?sG+0Q zUEJgW0g>l`V3Af6CwL5M=)zf~&TiGZd${D&!eZ7GuF8(gpL3eqd(v)Z+V_;Nfs zQ~YB)v~Gx~v_cz$fx;}h9dE97NN_o#S4)(*gl;P4$)1es15r1o7aSaZaRy at bp=BBO zNVv2WQ5aA)l0^cfTbI^h86meDZ~Ie{V}CaWug5(TVwHAqA6dI zfL~JVXaG7V>yij+Gc5^~J#2SUwcPeO7Rdw&!H0>hJ+4{mEh{$)MG@ zm3gu)`JYs$3l3;ki~84`@mZMHR!Q(vdbYXitfmlp9v*rp-)3AYnAtoWW at 8dOc3`rs z_i=P(>8X4;6E7!GxV#p&@j8s~8hsW*3{ouY1P()q6pRiupa0MVovp<5ZX4|GTyjrR zAN$&tm47c}*u7S5ahafsWIMj06qvrkGY-9pLE&kVu8}${OInYH5S}_;n~WX!vS#0S znVlV2S^2L$CDaNeONhx!dMA!lIK`CG3OsCgS0q~GUQ&^>RKi>={y?=c3)S(nBdfdP z+KOPCBe*zWVnwA&`>{>EyQ}uuGkp;4TG+2paLuw$rn%W3w~I>M?0}E=wQui^k-k~~ zk{RAb>Kf%B&kUY3 at QcE+=hfBA!mg|wUX_n?*4I+vAIX-lnGS~r`l}hf&F%;|e&BA- zFByoa7Q9rs5kqr$7Ul`N#^%OdG`C}&ulV2tmm+!eEEXb*A8KTgAcVRl-TvG$)17Qm zu*8KI7g;3;L4&(JLb0(ADU!JVJO_r>*E(S_{fCpe_BmdGGH=35mW_M-u`j`jktQRg zl^EuOenZLtaa0d>T%v4-(i|8D>vm0IroH`&it|s=P>2>2~fTR;MSp+c1If zY-C7yOWaGjJS3b-#-3%fa}2Q-k{YzJ;6$_eWNS;lz(q;bVr-)Mh%yWhD*}5J4xjj# zw3!iwXs1>AI1`fJ8!@4`#63&RDSva00r at ZTntTWov%*Aqf}c)xIj?; z89=$2dq{)msd^C|SsF1$(CPT%UeA16{+Ev(d1aVu zR1{&sfi4#>rD2Xd-MP!ODt_b(4A!jQowMyfidf!y5ukjy8+;yGUf z1bGRl0z7u>5tiPb?%uD$+4asH`ZmHM$R81~<8&?4juBmSeckVkUD|64xGQsatV2Xl zhZ|DPacOtliKh^b6CoS1J9jsfjUsgSOQnZrU1*tL%ybHZAFbR!?rbj(~i>07b(e{5O;}WgRzExpSFcbK=d_Tc7tUc6Li^uCblDiIZteDY%encx^EK_=v#z zhA|h&9Uy0MC80KiFSzaJCON?{F(rJu0x# z-7rq9OV!-|w;~1B^(TzIL?{vOkDIW+l$5xTJ!4$>I+Fuixyge&7gX}3ht~;pcB_S^ zBaAJr2#W*#2*mGBq$#J at sU0Y4+va0^L+`s`G9agT`Qz1$K(Y2_^U+Xz0qEqTt*v^o zi-T_-tMbL^z87!7eEwRlS~%x`iQ<>S&Z{&Giti|L;d$p-gbbsOjDx91K07iI-1nR^ z=bRUaPmX>hJ9{g>8^-s>E{nt5$l?_#2$NE)Z0C@=86K)TYAO26M+F|Oke^5>(eL#+ zLL33(D?aYIX)q(~#OJ3k`+K&N`{!RZ0T0E$;{L!Lu=aW9a7M4+b;V}jmFV0Uw%rnp zSnxXZ3S8^Du^BSA2nyIeUOaAN7?cg74(+w@%<2d}4j9Fh)pxa?dk&fGQm8bC{h zzlz4Y&tl!Q(I83BYP6t2p}@l1>3yghFnm58)!lQ}y|-dqdkq}mqvloofdW25x&C at p z*Strv)gs96byBu_X|{);;HRqhTC{aMxAi_B-pkGC{lYpY{}m0pdGi{5;c1w_oiqds zc5{m44^zFs&qZ)zZ|BtYnDrdY4f8Fl<@yezWL$&RNEc3GQR^olr7hIj@$M1 at L3~)N+ zK2TW*Obl6 at 6CjFNUJR3UN{^e^*uKQn((z__%F$=%DwdKAE_VTwl-trjvgsoDz-6sh zMp#(2;MpO4(}NmCN;0`9b9xk1GGtixE!q~Qq9aT)o78$jpDll0Y`r6AzAKkL*re0I zW_X#H+Mtjsikn(3>S5+))H*g6_XtBUqZJ1wW&H&<^hj2rJ76m)H=xZOzm1_5p>3nk zZ5OQW%^m)tZPOwagMZ|eu{oM6HzzKBAQ6)ZnL;-s;7v{jmE4#DxqXd_ZC_Fo#m?pp zDkTv=%|GzYKVjaVq&*M_f&QCM2mYln_P;sk|A52)LG4BU8MPO-vo`r>&YlzWi?iqa z3EOl0zd(B=rO)xtr2S7|`LC!w at KCjc>p(4Ze-*84_Hj#|C-S z&))BNXd7_fQu0>ldAgU+D-iL}SIWkdncO;6=6RZOrKMqIqFgm?XaiA9( z3R%8)7UlIl>Lew1!2c}F+ayP}GleD%iQ=2Bk=3oG#u}6EJ2}Vfq!}Z*dd5lV-3UIq zi`)(RrW at LdlWx1HowOz2$oVwO&jPu;7Ys-Gy9)gC0urV-Ddf`v8P_{$6y)7IX?uQ` zPwiFR<9x#XHoi~R?~nOs)h&12#ceSgmBlFBIL9Dhtd{?$oP_*`IsbR^{Vx#y|DJ>Y zNZ^A(zY+Lc|Dxu9((_1i{`P!JgtJWGrOC?0+Kje{R6v(EOiy{5zZfm-^b`K#!k9-?O-tKgd{^IO$OT)Gyp#irBf_uEk&F4u6*ziNKI5AUiYUr$&zT=ZD5( zQ?Q5I3K`!Di*){s#ipsHO>OI9ZT;sD05Y~L%+~CgsUwTHGUIPc`WNMokc+dqog=Tf zn7BAnbOZnZkf{RTK)zuY0RTYA>z_7c+b`Q~J3ANh5aUNq9{Df=r0VHccMhZ*vd?WZ z2LyRW_T>N}-H>!N>#I212&6-}>IhM0U8H z4j9>XYX<{<4Ub#_QREX6o{4fJ+qr;1AQ(AAAb^7z0Av6F7#RPuvhI#>Q!D^AkP8bL z>0d8ub|@4Kr8cGh(*}Zo*^xO*fH?lk4+6g3=D&{tVZZ%z{x=&30GV>XY|f4_q#n)j_IVd77M^hA?O;>3vqSEI ze<^{aY)$Q`fq$xi*rY_Mb*OoP5MdBhM3 at 7@CCbhz#32p at 0Rcd$I0OiV2y+UHK>4x$ zZWC{!2ZW$+M Wn4|O0v;jf5pd46qbYcqPSpNgsr_&w) literal 0 HcmV?d00001 diff --git a/koha-tmpl/intranet-tmpl/prog/pdf/layout3pages.odt b/koha-tmpl/intranet-tmpl/prog/pdf/layout3pages.odt new file mode 100644 index 0000000000000000000000000000000000000000..8e9145864faa76c53f672c704a1415fdb7a0a741 GIT binary patch literal 12973 zcma)D1z1%}*QUEm1ZhD~y1NAF4k;xLb%=9-LwA=T-6`GOAs{6w9n#%W(gHu|_0#Kr z at ArI*v(GboX1#0H%Zwmy2nCwA at j9`5T5W)zyG6ETb0d|%~AX`RTBS%}szZtv3|3`@KQqRF4W1xwh z&37{pRwjt8zO5a^K;MSx2M+13%6ljN1G-DxJMt$^9{@12FuF4XwqXL;+1T9I?r3QN z3#BN7c<(e6%>CD${JT4Zccp)tHMRij+Zz3J<{tm2Gyl{GE3lQF)m;bJ{ndzn!ae$j z+N^BACN at Tp-M|$6pl8$N at V0=zqW`>^ngDl$K$nZU5*82UCy{M z1I>y at PEtDrTRz&aQeEu6eCQM3+~KMW*TSWLytLaiZt0*!U`%?3Oq^1C^Uc;Wt$JSP z+fgDS^x;A4#_LB0ITm4T at E+Rf1FPf@1;Cx&=-iQF7=$S0k7&WIRQ;^QBG>}V`_hk< z2Y>)OSVpsF{3>!W9QINV(34uGJ>PtOFFcylON1)IP=MH!e#DUpX at 24P|u?i3T03> zu;%W_ur>`BjVbEw$+H%heZleWuuGD?1ReIZJopnhbv{*h3_XHqa&@)8-cRHh;!>Fh zkIm^8*Tv}9i~HDY*VvnJ8!`wf(4t64_b-{*dc at NMffjg$nud~5M%&t4ZH1}C6vmDD z5+2>^6(SaA>L%*|sxG4F1Z|x>YqC$auKDHuOcEkEzH812uF4>QZKP8>Y5p_I)?iCBi;LWxJO$*O}dila19XTbf)?FMst|iVZsLF`p;Uvl_5*w7T z6DlcXjc;J!Q9872IJxtgB@$iqf8dQF*+ScC5c&cc>sFniZ+U6Kk-jvt5OpL>m_*Sc1)%;xs3Ra zkHJp#FhVJ at dS9YN5Q-2pyP}qQB+6XvNpqIH9p*NqRt_rbWr)eeQ<%91P4=xkWv-5c zZXQ%>xt$@WQM{Bc^(yqzHvE#1sdUO} zcOxa#qQE}ifT%-kq`%%20gkvZIkn5}-=ChW94|o;WN<=>G&4a#W`hMJ*DcnB$-iw~ zW7sbA|0ps!Ij=Rq#&=5(U(2*{byd8!*Xnr)n~M40DJ;uOSWgM`MIx&~!aw#~*WHtRW{tl7?^V8tY5 zt>>kFBj`{3G-n2eHAhTbipVSDI3#~9&+W!&Gf}(aD#AhT(hq;pdqSeh z)7V!R#JRzsNO9<)tEAh_KlQBeTIHObSiwHsP_eI3T!tecg(xeFv25vj~}CZVDqk|aT`T=+B?X{*c6vwh>#6)CK<>lmXO3< zLQVRuOY~DIzXaYyG at TNF?*dJQjXL?WOp>kM$7`pXbUDp+6*>BH1}CT!WVss`xaqu9Q^4>zrZu)M(FjXn5hu4C9xw&gWH7j`{2LM&)-6cUA18 zs*~^q)EqdD7%$EZkCe%(X_fM~l5<4iPDlF5*F|`y%}AHbDBS#>9-YkYXL)DHv9%vN z)sE%K1tfC=FNB0u0Ns%g3WNPR51O|NBDr3p)Dosoua3VF7)tTVq081gKns6Bi z at _a(%G=8lZ{rMNUF%!xL9X`e6gg1G$60z?CYX!fZf#H`)Vf`x$T$Pjq2o)jWEG=8_ za$G5rC7>I-!t>$pgbm)e3|aOV z8Ev{}a0}_NKzGJ*3qg|iyUP4(B46$3BV3iOID{HA>Cf<6#96t*M*F$y>d|4c`3g~< zmyNpPQ;K4;P0zrANa`z(a*p!LQuoRSOQ07WuUUBd(ggq=;Jv(O6UgQ*dOchq%>8S`(V zMcmq&^j!;Jt5POpU~>m{z$Ex_R{t^M2=aRjoa5hzJG6!~NeDXOz3e8Di^X zVFbC~a}8)oh0So{y+3_A-n&j_tO$}o`HC+EmLZgSiW~LpPE^7c7v5T)n}Qn zMiNQBYUr<8_Kci3_W4i8y``QD!+-JmAfG8Uu>1pJOr%)2q#^uxlh1Pa(YG1PvhfBD zza{sUv at fMOqM#2KHuY%e)d-KqUB&5C+VLeQWF8W!EV=Sxl7PF|N#0;Oxk)-D6em2| zBP!UEQXL1e at lx3*K~IWlKb6?<*9QfhJtZZZFPw at S$eYLLSf%-fBzC;ejVZ_Y(V~c9 z)w2F+WD{YtT;E#Kfarsr2PEAwea3o<1MU#BuFcd_L%Kd(^kK!^?o zo-dMH1OT_|s6oz($9A-u6j>!+k5`EC98Hw8gK)KypyfF at h>%c-wBP$s==8>*Z>>vuLKvXxKaGbG~vf at xmLCg zInP50M6ZX9stVh(vLC^J^j~X*dKW>N>GURZk=J{5PN}DS1%AoViv49~8T0~@soAF( zXOt?3-DlUO{Fr?!4`H|R*!#Y;<6*$pYt at d9>W68H_Ejb3%R~IEset8cN{fz#3t8de z_R5g>Hf~LIGZ{enlXP7cIgHvi3uk=jLDJ>&=VL>sNV3Q;R7I%bl?FCAt#ourbW%2b zO`w)VKAWCi5p^cBQjCANxkOuy{}d~>kK at yz*R>;_8!YYep1D*WY#3SXNV!OXRkV2P zJ)76z;n~2X};}a)3aXw zk!-a(L{`~HQ at kCEHyyUf;szLN37OdO?32eiW}ox5J%y4Yoy6RoB8Z6;gjnH+b7ZpZ zeQw);W at wW=_7h(r)Rk%G{dSQc80lE0R9ya+26~-jX8i2W_8O^*bn8!7YpbF!qzu8* z<`m`3%sc5(&r!0g6yrw}IApV?975WqbH!R%)Ug;iWxh=J?$K2Nf%+xXFj at uN{&g|O}S>#RdOvJ`ei-F-REq%W_U zQAoAg^RlE;T$FQ|(1sG;M3XiP%efw at j4Tdg3zE$Z&s;-2-(b1ojw+ at rcoZR8EX+iT zlUZBUn(Xr87FJq{Ov6Bq1U)9+siY!|Ze2Ei8(WWdU3PI^%edW$i#c>J(amMWiax-+ zOY^KIu!|bsPO{Dc#d(>dS(%yF-J^}=>L6rz<;BAErhp11MSOx6xqoR&3KY36^Jv)vAe4B)oGem>U9o zlxKuKy*zg5;?gD at Fpuae#;Jmf^L)PAAco$)$=zI8Iu~~6mdjPkk8v7`E0({9f7NlY z5Q}3=s8Ry}c7o;tQ579dfCc?X?+cZ!)JQZQiN%<5RkOW)(88gZs6A=nY{yn=yb*p9 zQAh9~cxPMGy17YFXYwvN?zen-EowcdLtC=ux19LNU9gO^MoyD6;(bWU)HzbX;2$y3?YeiqG2D(oRf^KDTsmx11G* zaZF4S!{wb?nV)Yv@}$UFFqc*H4t-{vJb at 8Ba1*=s_`1!Qyl3;>Jo at W{q*4IBkAa_x zNi$2*;5t_*_DhK2fZm2bnbUfu6DFqI!MmC;zb?lQ)k`%}dXv;b2&9u?Q{HEvd at A}vtvItrogpKqlF3)lm`S2JdOr{I z>b7eAi^u&+syJ(+g>$!(CQ|)eN$(cT at 6iOCfaKu}I4G$5>wA2~$X5S;9px9g`y#hD zvVq)1SOh3p7?~-_jX(gfArNFDK&htsf`OY-NDze|Y-|h!81eoLx-i^DXY|SMpdbkE zk0Jp|I~x%1_wWoaNZ-;3!fOlQ{XI^@`@1&p_lkbxI9dQf<^q(awzgKhOiT_A4vY?L zj9?oRCKetZ9;WZ5lz&xa2>6elm7R^ncP&Ez(_K*JJ`x0BVqs)q`l);G;s5H?z3%TW zfx+PaRCM2lA5HvT9V;_4JJXMQO7g#Y<+tu*r4;bvz8rtPCvNsw}L$ zcOQ1nztDfz<2MBG{sOSDFfg;Lvas+n-+kElnSK`jsKLqxco$MJWH500C$D}h{Z0M< zd&9=d!NSY()0^+8A4)$^MuvCo2bnMcoB($_L_s#zzuf*K|L at 9%e}x1E6;)Z7CE2*- zSeRA*!2L(%2l7A9|9uD%2(bkM$iEMVt-gVU5d#2h2eK8QWTpI(`8|g9GxP4f`mPB! zxF6R)bFJ>8T|e`F!made^i6E^txSIwu(1DS!vSn#_%oC3XC}b(P9Ja=NBmjB%Fac} z^w$Gu2f52PG%^N)j0}JHasQ4AP)dP}!Q?Fen;Pr?rpETasj=Uy{q-X8-uKL}yZ?0Z z_w0WU*WJe`RZZ0HU215XAtC>&)4=;;$M8x at l@ADWU zF=4Y!^5)th at d!$4Y>{x|cTq!1Vn{fWn`+1$wn&7IsVx={Y?USx zsrxf7G at VnD0jX~TFrc7 at cDBrJ4jXUapu(X&$6B-lyemfUew<{a<|JxL4o}cqa+@#C zwlXeNYcE014h at j|4;H9a(^E`HGxRZi@;}Powtf%_pNnborWkDH%Oc at BK1>_q>xb+^ zP^lGYiB|t{ae!a&EkUu_IB5*K1W=Y67KLebh?#OX+( z$W$E^n>L_d2Nqt*ty3q%H-F9_@@5%iQlBgT0(ks97RK!LA?o-8%C1pHs=1HLE36yj z&~`SZ#1G*#;^JPwttcd}pAa+91XFnfaO2?Q0z at T4L6J%$FUJ^*aC)!Rsu1UypL`0? z1PUx>xIF00Cp59O8?2caJ!$^r at ZiK`%uqO8n?Hf>WIQc&TEV`>bY>pWM3!E;Qs1!K za=1D*;8j!bw6C_Cn_WICT|=`Ymr?gH?vU5*##cJLN>L`=+l!)O^lxY at GfLY7m`+9m z4Ma8MidycMd4X8M at nRSeJRG&ct4x{1$3V;;T`A=j+C7f29O+fCeI}1% zB)uX{?#!ahoO66s6GoE&OeKwLn=}7%SE*WrPz58Kq&@{c&9}rkEf2R!bct`Bsk2KY zkF}AKUPU)nL^-?~#+nk at ZWELvy3Td!u3RUdfAk#O4_&mcdvYU`?imduL*s7Lh~Dbt zf}!`#c$3D1oZfaPdwNMn)$&YAt3N28>_kA2KHT{xp8MG9+6fkogs1m`l>|#80N<0b z(OrVO(u1)xbA=nLVqs^U4X5qBecB8v$H+eApFsO&=L zM+4E9pQpd}cD^;sv%;T60C2}n$vyI2I;tOW7LJe#etJnX(UB#R5VL6fIY9j?iCl*O z+kz~Jd?C&;x6MqrUcRzHF-nzRQJtNpc7JGzPv}IFmtR;cNsRYKhrDky0)_0FzOCL2 z^_9-CP at npdtUFmr2a&^4uW2b3ylixd_AJ*UO~!pH)f7||zC8w|rG!Sl%n2C1-0i4^ zx}3Ll{fW~-)T-VmQAZX{fkkxq2irO;BZ>fYtj!eTg^u~k6D6xvahkwjlFbJrgC%-R z(FFnmZSQ)TF%NU`HUr`YG@{BOP-!G-e3dRLH0un at M>@>=T$&>4U?kfQ$XHW?I^*7&_v>j-*!sV z`=EWtN4Ft`=~B~=2u2USq#&jmH7Z0cXD7Z#7SeIH5uj`6Hdtds9PO-Zk3Qcz0F6N= zSJTxop^#8X{Y304!pl2VH3Uuk4B7;7%`7wOAc>hZ^QFF7~=x^Kr z)STju5~||Qs$1e!v>&R&<@#PwKUU_~s{4QwHID4$7Cn+Ais at eO_l?|&ts|xW^?CCV z6=n4i_vo%eDuU3h^_8B^{^WzNH8j}o<}L!sH{`0J%Yt}p1A+X`W)n-Q1arH?LK7K+c!n<57)-nQ zP{AQWdmxyq2x3C9WM_-ODm#64R$PH at CeJA83) zjFpKIr0ZxJQR%e^^u%RV<^wr#&PRT#JJ0^4#+ppaI;JH;CSzD&`K$D+p%_TUn26uO{YDWuW^oZ z>jRxA@&IR#@?fv^Ma;6LxjYfO30bh*ll6{;pDl#>SM)9I1{MxX&6Yg)YM>aW0+)6#`G5;QY{3S!Bukx~##5+LSs{`jWqXd1y-F{=P(7`XPbk+*}3hBx# zj46(WU9$9xYp+Zn#j`oE6Fk_vm{NWll<7**+Uo${!ENj24t)c!$Gt^MLixU6bY2=51FK$<(G;jH4 z79>Z*^Hn!c{g!5fhf&VB-d#d_eJMl^Q at w7+5WM;J^=5tC0Oz&^|N8dHT7eyg96}X( z^)vPGhJ=t70wK3@*U3WG!-CSWk!pIz&UbZ9>9Yt?dy+Nn>LVx1dp4((ZT;{sDB4qz zct_97S$~1Znf$+-3RJ1EFq776Q zBn_p|uk>)_3=$zZh4kpOuG}H;=RvFTlyH5spp&W&col3@)Ro4 zDNO9GK)N#qmvV_S2jh9!G%#%shnz@{u2J0}9LmLmScMkoij$IT#&O-vnDz4m$_)>v zskcP9&=zV%{J$thne)60Ali!pVv!&`%yvt0;FLEGseU}6XnFNIkykbOIN*iE z*I|`(^x#1~4pxSC#qhh+K9;p{Rp*GD05YcRv9=7o(lK8?PLLMo#NigflEzx$KJ}D< z!{eHT;3p-)2ttvY*-qt6Bj-he3gvC3ebq;m at hq^rQ;{v|V^`nea2JaGm5I$07gm=A zeHm2?7kLDw0%T6(Bs!ewf*rI=yB*4*8HXYhRhRH+vAQMNpLRjBs)HRs4g5aU3Q@(* zM_n~C+u?4D(m|#nWl(W~<+_x4wjWbnonzQs%(zRadLw1lIcJo@(B#DyR;zg%1U at V# zo<8)e<%xJ!vQ|?~a3=56oh`_aN^SluP#I(!Lh{jM>2Pnzo%ACHtuqezqHNbhJNn6F zI)%$M9!#kF$Qd(Q-oasOA&lZ6NVT3^DuHQE*4iUCs-V~(=;Gyt`mC=(q=GIfS0dv@ z=fo}E$s0r|`DgXMnuU^XP2Xyp6Yxzwz}L>P0iJVHAQW2^M{+a!k-t) z`>p5&x7ED4l3;w6;lT0eFC^ZCJ6uu1zJlj4yYa-fTc)RKTRRN9QcKtON-DB({4_OJ zY7YMHs!vui#CRkzEce8%xsS)mCH~2-?S|k1-?{I6VudHr zsE)6j0-`5iGhNh(U+vpd5I)Nk3r*Rmc$qjA8Il at 8K+`YKkoy6L0%?2Ji!Hnm^BV`R zn)D%(2;Q4$bG03(xlPBFElJ8Eexj4-rt9#;;{ZA6EsQO03cjXUn!(Ozf*SgnedG#T zwprqWqc*E4b|`!N+vXIz3(@7bFhHHYNb~U`ht(qNhOHA_3QCo(*38Z^ zy>8Ff*kE~Ea*_5R=qha-o$hl;}?5=&a&N4d0aCzlVu9M{Y1yc74|QbUB;BU z`bZc&>FIJ$wK at m%S~%9WQj4duiag-kmK?X5q0KfNYTJ6a28GrXvmJE at B@4%2>cpnt z_Y)6{w-1tMvu_C!^ZB~%v7$a`v1?t}WTNk$iqNP% zX^&6PtR^&!&or!t-7lG3;kE{BS{?-?YnM4UPD`}kreDMmP)T*J)KO7$174^X%Sxny zl)lpCt7dA|+8`aU3gD#3C`y=KRJp!tN@)!<4#oxBIIUvCy?q6GHa9SFK- z{e2=;C@`;Z0A3=1mXmB)V~1n`ET<;y!E<5~LJhk32BxguAXjhn?L9JXNBC5#XE*ch z6`ZdA6SbM-{tU`8=L(ArWQ1GL`-59JhKlDW=evspmyO%-#wC0n7kdYjLpOdKoQ7v} zu8(;Z9fn6)M~c(}I&Ki};j&rzl at J%qhN?8p!L=6OOjHRwB8Nb!`m#?($ zuE{+gmQUrL5)`!tp&5EbU>S-y!IMI33#gwrG=$S?>m&?&%7K&t*%_iVY$@^{vI-tn zEWL)u7p^q*jau8*r$iz4YSkLoYWN%9R3hB<^kp;XO*BmsI&br%vLkeLqGa%2x@%ar zI5w-6ol7F3i0&mttr=N>6WAv-r~lKQgMIX-@&U$IX?7|KPI(p=ZnG^OC^(x1zCPH3))(bb!|NZRQ>3wv-rE1@#CbH-z3^i?~`$+=ic z-dlN0oL9 at zhgMO$I)e>UY}W|M0VL5?q~-ud4A at Mfgkue!;RC7evHy>%`OuXF<8l{6A=Wt6Jj zTBP8%utL`D#rV-pBoMD?GO}z$a1k{Eh5%w+Dn+*C1 at 90paiC6&s4xP^-76DdtH#5f z?Wof7j%_yd_OTmfm0DXcdpDnZ4d()*Y&W`RpgYiSw zrM?<^+@^@f)B{wp at +%8H{EBpJ#~}8hQ9lvZHIF{Am&@sL`rD04tO5JMZH*MU>xic zwe<03;agQjv-%lTfqlyE9y6EAnYYFDTD?fKl$cw0BG>%xZn{lQ+^Jq=d-0T(TX)>W||DtCPzPzo^lk2o@#a8h5|mlxQF7v at bnddRbxnQR||C zEoA~^sacy at +i^3LJ>T4ylv3bl?~3-Uc{W{Wz at vFT;H%|Oc at 73c^(-I%lXc}fNVogi zmvU{oN|91*k*Q`=J1zT055bePIgHfo6Lvb2>t6gXr|awCBmQ*smg{k}`nW;JxrNEk z^B#=)5+%U!C9#y?pwIBMrDhj*1?|He@?<+? zj$<|gy96kKo#H?psGafgurrRMnH{;t@(823(|0e3Ct3!#I9gr#ovY;Lo(*@NR59{X z#h5V1`5H7N^R9lC at _hCxAhQ8slVxWnO089XDt5wAjE z46+b!IhLa=Z=RjfSehj%>OS!VJ&iISGwIiul<+EXTu+UBYrV&k?6GRO#tAsOk zYv?79aPl=;i^)fGmy%o!5^0DOV}%p?a>Jl#9KS}^vcC^QQwOwN8Gl}ieq)OsCd=cVUg`? z>=w#R522E%HXVkK!{)TjS$)ZlbW5X+p(hc21k70R!X){?pNq&yPFuf-UKgRZ^+UF;N->k> z2iG|oxNU|ZE!pXz*v6wUk8{gww!$0qY*y=%GegtGntCJ;;w at 8n$@qHD82f_;5^<<~ zT-cry>;^XnA-tekOC4Ya2 at rZNPOV+PYr6_#Qi+VCNC4|{e6+a2d2vW~zxGpWOB%u!go5#a&TvX85x+i7-61ltN zpTzFpdFDTA|9xBXlPrGEH2)=jcga8P{0r~=zd3h*Hu6hm?~;ES{lz-}d&m4jLH*H0 zoV%|4)5`BG^nbT=&qMzu(*I=VZ>;oxxAgaR`Tm2YUo7?i)k?!ZSoy_T|930*y!Bsl z at DEo0AB+8mv7b-D@2vFu&FL>;xO+H$XSM$v>YvEpDRcL%^T4Cogr|~ zsQV=ZcelUzbw6?U<@f)M at F#!Z7f$bP&wYPTch4sHiTdg0 at B8wY9Qk6=d)9I5+=ijNE zfjJGNyLsE*1pLe|wbZ#Vl=HOr7Y( zYz$pYMNEzDO-%XtpqyQtObus$4cV>MzXuhU&Iv*7SBFTvO_%6O&hswn-+WlJpplD22VPp{K1NcZXTDIgzTT5 zsn4xFw7awHLI*5cv9D2%EDMGwEz#uG42l)Z37ubG4NDX63?ryCxILaqCuKqc at D{&j z55$kIqN=eXiyNSJYmJtY6wNc%Y_v4lnx+p%jHpV}(bQzHCm=H+bX5eW8f%T#SJ9nO zXU$Qx+d)1z89~O~&>6*yG0>(beKLTcOOVTp9ATJGDhC2oJB=l5HPu989%AxpY>m!Emc>DuhDmM+*l|pyIyWwPQa9O(iix zv^N{kN`A4e&kxWRu1N-ln#yorj(hZ7%Uyk-_JH|x?H+*PFMfI5#rNPjDA?{xTUv~J zBoD{C!PSFL5!y^Z8!Y6)J08KxNT=bh at +tOQ!6qj!f8!h-t(_63{>~N$M0mw>KIgnP zLs7BN5Kk}j1e-4|I%v|<)N4Aw6Y)n6uus^9Ew;MnDpu1UM|o~+I`CmGpDW!_T?7^d zb;=^P_ndVgEgRhANr0_i6FMl%h9jn zpEj}KTm)$7GXYp*oHwr at v4NEwE5I2AYYsM{&7!ZPSp=lNW-aTY5w0e at 2n|?&k_?Ns zzZZn?9sb~l6Earnv1cehNe0}qRS!5{j*Qni!e|^Q=Poz40VZlvkO*v-3Q&;L8ud_}iiF}HjUHaq1?jE;WX7r8Sy*1JfVaxS z1H&KcwY;MbvO@|1Wol>gzpLS|^{;@S{?*MtgPoo6pZ7odSpSdeV*CG5UA77nQ2h)D zoj2;2nii9G32gqefq4P!th<7pZ$c`wkv%uf(am8&JZ5fY=3#0<^zM0LwDjm%OsBME zzh{8$#N2N@>vPD{Nb=^TYhXw^8%OS<;xQH+u{Bq4($D)vj*tIX>MB&9O4+4K9|m(? z9=BLFv8j8LU=9$W`YQUI+{^A(ZB~}0XM#V_L$jZdZ_CIe+M_yjui6hCUlir at vDSTbF6U}^gKJ~N{ z%{F7hY{R*ruY?RBYpa8?t10+QZ1mXLy&)_^vIOwJ*e!-*4X{&3zd9hji19K>Wm{T5 zh_|L}7izULY}q9zew`g`2ZhL5+Sx(w=U|S3teU)Be_#8lYwTokIv-C?a+*(PG3QFi z+(Z!rXNclJ#oAzJtZz5 at Vh}z82i2OIs0+Pb-G^cCMnWL^+E^_#@6T at Zh=z3p#A&rz zUUV6MsNpgY|M|cmJiB%Gws at SK@1YT-a6oXU!37^wIM-ucoDtN;+DUmW3|$o5#eaoe zY_ZG6!5rUMVvJA_C112|f&H3WOkI+v$dmhk-Uw|T3dPUK33zu5V%btoWDZwsj1wxA z6Wk~%K2Ywt at eu-cg*;9LzzOktGzL%*y$DjKP_>FyD`7XmlMx1bcg>-RBV=#`@j*!qGC<0FRWx$|kkDWnV3*OYCc$Q+vs{^Sw;th^(s zC$5Ysl1~`xsq`u9?mOY`vJV=yQP2nm at Q7VscXSRR_$-zaB$fOe8WI5yS7^={IlA9#;%m2K{6tsLJALKX;?}dk7NF~%(y{gjCmgt^HORc+ zOkZ>ZplH}jh<3~#>2Vja!bcMp$ljq0mDxD^YC)M^?Hyd~E{))+uW0Y9QkiQjw8RT?ws&2h+{z9*K<7H49dYR7C;A7|Cprw2XwB z7}8WwLlS?YmWK!hV73CnNI?afHsumgjG|;(vzcI$jNKGM7LxWdlhV*r3Xe>Sgc>MF zb}W#BnOj at Buy=)Jjbh_ECwE<8)KKcB&{TNvP6=7eW7#1kagZ|-X*-5bGK^(=Z-Vq% zq;ybMl9LONxp;qj{!SR$Uxd`5F$Rm7jG4>rO<=}FWcT2zy=yuk5*xVeDY~Vjb z&P?d$O|3UPx-%(TUCeq^uC~QxAF=#!k;qc<^iWLu;0-tmOWogCsU*cj|gP+yd8{Knw1b;BA9LKS9%6R7h)S zdvhU&WFN`E2ZHfxjl$bR7u#kYPxkIH1pxxM50LK3fC3DM|$fChk_(ex)PnVa9EieimhSWT?FNaN8HOzbdHGYD4 zT60oJH!pM!ilJhu5Lrk`6T-+}ujLnjbiVGfyBec!5*=NK!Ed1k(Nbi8*rNp+wh<=3 zj^PG>e+9LSsMm$^n at hQnOaKUYQwoAd1{nX at v4t6V=JVlYduMlgiT^g at NH^Q7MfdBAbTJ0dN3W zWk5+bWoz=t*N%$h-EWP95$`x#FLh5#V(vF!nmH|hXkMr72Vx|IXQ5XsWk{s;U8(Aq zZLWWxvO0`8UW%OR&l0oQU=UA_#0-Hj>*fkCg$%WxqHF#*^F`ARF+d)OG5hei7U7V2 zx#!qwcHTdq<8%~$aT0^YJM>+_<4OT-+H0OpHZ9tnRLeoQBfcW7GvK9G4lX8XfjKO^`^=d%+WP*T*efGM-OM%17nPN?$Z}q} zbm(~UuZjEqJ48`t-E{FZ+9%iJgWSI$0s zld4P<(|a^0SPV2_bhK3yMXbk8vzZZ}rH_3%i`%ouC*;D+OF;&oteZ&^K3Ps)nMO|& z>|WB%q0cwAh}O6KSKd#3W`TM)HI)pyQ*<8#)SRZT(cy17MC9_mRdd~-*0KHT+5+}= zDgj7)_2Ra#lGMxE at EYL*s;5NjmsvLY&&q31vWA0ID;?5`lqu%Yu_=0#M^c7UC2CdS zvrLyXl(FuPhlt?6@=8}KkP0|E%eO8K*sRK+Ygxg+e67m(VZdH9izBWug{$hYIcudD zR*MXZN$`zlE4P4;BT=7+&%OhasgHC{B0Ab9e);+|K8Bia;NetD^D1uWWe4^cJ&WJU z(^lZGFXktN;*>8Q!g$@DhZ!G!e!rFA&U#)+z)$gJfiq$TmC(RJU`%-2V zsUDSjQ^^&g-?_$Do9rG~#{&~p2MF7!96pDm4@&Q=Dl(E9VdrrHmgU6;xo5DJJ{Cxm z at V64}J4YoM`&e?j+0 at x*^|$j*l!uV#hVu~b2erzRz$m_*=8r}a6>mL< zXGsr2A?l;vRS*?>V~o=y3E1U>go?&IWyHpcucKM&qv)fK86tiR at kv=CLk at ZCA5zGq z#v>$8RENK^OvdA&){)GEl4EeA(i;Vc(1f8Hsbry^4E=Fe>?E=x_zXM`C>@<1AGbb= z3w?pe(To*37<&-e`jv!z(5?R{W)$euSML7ak$IWzZd`f>utzxCqF<0(Jk8%Cp=7b#IV|<*)lHUjYGBB|g z{;?JrE+qA40e2a(2o8Uir;v~fmM_m;Ot2BEGZu$TM6`AoK at bn5g1ob&ANfh=k-~!Z za_^j11w97UnrO!3HVHhGml0u3F_!4KuX5~^HkN~k%2{Qiqacg;U@)COZ(@^i>gVzo zKiqXkoGnx+*TDpO3yj-+mA=mFnEbZK1-|?VTU50ka)m30m9e#2EZgCJ3xBJ>($D>d z{P)UDNKQs+S-QKG#p at ZZtE+a7+zlYVP&tmqjnnngt*OGGtle1oVxT0D_pBI+Fa!AnF9YGT8XJzAnsgd)nmbg(*fc>S#2 zDeWPOp7)s7l5~<@$I8XgqugiCLq=kjYxfz6+;E@&j zNbPv#eJMvy4#5elcM!8NY)QP9PxtzzTJlp^@@b`0WT!M4ALfQhWy0M^s>$aI6CZ7E z;@ATdAI$-{NmkrlZ4@`9zc5`8UIe_Uw_G=YenML!6Cc?@(Y=@l3Z}>5Ht>HqZm~r=_ zC{oNy7FnpIp13N at Okdn`wKg zIeUpNzW8ICjOlW}xrq*Zl1$JK)G6qbA>(P8{DVKKy7cauNI7Yc+qZR at S~zyaUDQ%d z?s>_gh-GwK-g}D!VoVZA)3JLJ@}+tmNM!C@=x}QNuoKih1j!2T`QFkdMHd=u5;%Po z6Hd-RZX=m;%o8h9TSi4B8pxWWtY!G9kY^Rs%8^nquDM|%+e!43Q5#e|Alb~4qjaOl zPdx;OgHj9clX$4fO^YOlu~4kC%ZEzQR+dFmGb`5;=>Jqkqj9FJv*O9?iKE2^^wq1WrFFj-ba`S=}ZUnB5T8!Y2G(@5HD_Rjan783Cf* zH$G*%5<80!;bMO}cUq4kt?sR*ZuuB-!5ImN_L}Y)lq64uP4LZ&1!q#xvGhkQnzmKA zO7TUDmaRh6whO$>9hI^4ax?~e;1|v6o#KZmcb!740yti8!Q3`-FtKP^oi#*g64o?} z1)-UoHO^-pD!;`LiCK1i!Y^t)(;+=;R*^)jKv20{1uj`&mY?r;`SN<)+2x$RIQWF*s6A6v)ze*Oik;q9mg=re z(sxap=klAEFqmXLB=%I?8kIj=J+&s*kB9?*6~PHw1U6m^0g%5MfPTFom=?>*mD?X$ z^L{IeZ+E}9z;|gJIdUd0(ZCn9xCe1~*c~Uc at vmb^k(ka&q><9x68%^>9#o^ZdMPQ-DH8 zbz at _doI^}wX2rmhN$3wqdII})j`oLXgPDdAbwhuC#d9U`L(~f22Gg}Lo z3Hl&3(u^p5+i|ET>WX!u- at OeBIrkre7n}72C7?uZP4_DKQ1*pU^BpL#q(W3e6of?w zyn)jLM&?3H2HwC-fl+ly*svg3yk`YuU|X?RAp}sZH7pe94zLSgK>(kU!RTOaQCzrp z9O?vB?ZR>hI=+)GZzyM1&5}xHE$izPn^pPE9rRV;7_7^P z&UxNHN(zAEO4~};t^(UheMZz-0ffM~;<1973I)h_d$H0>bn){w-*4(W>sL;7&2;9cjf)=Fez|_Xdxvx3_M)U9 z-AMyadSPD>-x4ezUYaV%Y0xqBOYkd`bmM5_SmWt at g^)`^`!MaC4z?HQHgIRuOQ8Ws zE}BuWoJ3g-Ms3>`S{U{1p?8CuUc0;3 zy3%@b=v3M~5m$=4YvQj5Tno<-1VcaNtIxf}2Q2G>^c3-fQx`2St|HAbSCm!7PG0O8 zEIhoIewXr<>CaXi1GW~NU>ItOX3WM7iK{5m4#FwYIRgi!gXcVdl)SmktAU&(y(nv^ zeR@)zoGNb4J4I#~PP5HAr|(NsfN$Ye6E|Twi{$syx7`Lnv$rpIgiWuGi`p_`*R3sv z9dP;|uw?ZkEQK@;hpAPuuT5Qr>29-x_ at 2s}*AW)i8TkFMxGGDHPEQ)S5}V|+z&CN8 z%0_RE?sXUizHH&!e}?*%*4$SA%A~qbUoU2lADM{o{XCey at KUc_EK@tRA=5R>***1x ztfv(lQ&&I>>xK7^ol!FYvJn?s6{dQAvUh$M|@FC~hNY1JQW}@Q09EgOXMLsmBef*0MF_lr$EVg z>?!s&r-JFBOi8QsNtQKNyouc!{ZsSfwpPaq=6sZwGM;N at bQEqJQBX5y!T1419fM`X zkFD6Rh}@kB&~odm++m=gZq5_Afb82+5MH$7Cn9%W<>qh# z;CTm1v7&~eKQZ*#^rU<97%IooiAB&w=+a9-6?92dPES?*^nH_Zl~}@m1~HzvoLsp~ zz4+{70&M49>o*}gIW2N*d(S45neSf?{C!z^r_UR=(^HLFQYYE+jx}J2BPGT+cvNzA z8(1tT*RV1^`k#Pf_W?A(=|1Llq3u;{ziPOt#EiOvU&mMdqxFK9^V+T#Eqn_oX6U3z ztCE+N)(U?7I(t4Yg%P_*M+Pqmftc3%e9%eiQFsxbZ72unN_Hfp;MN3b0=7}cT9P!w z`T`mzF{l~DV-LKmIDw3s{Rht@`+-uQ7tr-E5tD1?Zz+0vB at 8+cdNiJ z*q4uamsyYwyED6N{#?C(XVn8L*QM#sH(R!ClB097XxzC=Iy2C(bU(lr@~Y+$EZ>)A zxtIs`j7c^*;5(1ZAzjC-$6X8$Dd#=uP^HlT;H(9&1yR(BIUWzcIkau#C>q)v3kU090?U|E!OZ2};rqz?fK?1Mzbdl{%G=5wlc`$C>Q($XQ z at BPpk?tUsm`uWBGRLki1sL(e_>cj-?0BzeS9rB(17HMpJl01EFe#{ZkOTD#RKMQ+= z4cDgKD?)0POb}5?_hl#{-upt5llUO1SHwz$h`$X*>L$=l7 at e4ZA-Sip9aN+wi_dFR zB8uD^(fmoA*Oxv_3+hQQWF*^@gKUvlC8CWFKq`s5RpnZ&A#u{;B9FIcnD;@tjteQW z46jJYD8+#yC7Q!7vT!E3=Y_;il#@1zCoLk0s*aPx8(3|^pTjg_d*wT;b&=UGCiQl{ zB%lbM1~490xuA`y?IUehZYOvQmr7#{D$7n~NKY^;@}PtajhZK^N(~cZP{HU2n>H8~ zmg|%3pDtxSK8#CrL#k>Z#J_l`D>((}6P=4c2-82*B2UnP;?aRkz6Ki&8trP{D+dtk%F1z_b(Ud9 zkU2{%3(iNkayRBrH%+AtzWp?GU^F z!CbtKP*l53AZ38(gGeF<0{KwazHtE)0b9gH{(Y9a+GkrSTX>*?2XZfVL3v661nD+( z6;$FW*nXG5dqQczWf8m8keVzF^+aXV8W?WY9G6A&A9%%ICqvg}U}(%Bo{-lil>1kb zyR at myk#5L3HLbqC4BWj9Zny|tS7K}Ye%cOR;X}Wz+KCw6syOK|Wg8_|UQ%7JCA-qJ z+T4v7YE6BGM-s!)$l&FzXj6l9dIPCuy*c<0TiFFv-rRHFYST+6-E+Tda~wP?0m(~s zkr=@S1fv2P1eL%ASU6C#;B(;hAgLArTKK}g;6(MT->*hJ-hT}yqSHDgi&w=Y6#NQK z5kJGB{L&+NFbfjX`idN(>iC(_NM?OddN`JqF;oOh&6Nz99}z$9^l^e-M)2AiXARy0 z4;5BD(9edrf|z5k8ByBXGI1G;@PCi64JI|t_wgHyK1y2BxW58>>+V@)eHag<_3Y}q z8e1r?2lltQuC9CQMq>8cs+{YVHCA>y at HukZt*qU18~8*UjRe)#G-2)u^~)$R{IKtr zld#@M@{wYy%u?gaJIqnfQTc94P at Z2fCZEMq@>P{&qkf@~Y(a7kX3G-xHeo#@gbJ;j zT{YUYP$_kR)6I`@E`?qKIh-t!$3(VgPInLBjv@1&$E=5G6|Pxq zDTiT89?w(3h|`_loc`Na6XtE>s)GtxR|Oy2HP|Z!-iPw!Mq;R z!euf@?lUCN0ybxI1d|&g4n4GRa^d3G_D6;DUUys)jNx)fB;H#+;kZ;#;ix_A&5ltl z#c`&H1730Eq60)l|7E~*(R;GT@~5w`hDB(?q4y{z%XOD>r1GFN5ZlF|4{!{*>qW)X zQEW6+07x-%I4Hc|KxzJP7Sl+N76GcS8>0AOPbR7Db=fB4htQq(me#))Ad>0xawwe> zMe3($Yce>r!TyQ!Y~L(}cXS{5R&y7kNn_F2aqc8&-cG!Y at o8PR=j|wCu_E#HvVs5S zWLp38)shD+=NPd5>D|x{{(l at o1YSY->QKyEvh4`2{?&1mew at DhkiJy z;-kGg;Nx!0BS%g??}^~YJnb#`oV-H_cPzV##XKASox7_%UR`i6kKhJ2L;Iw at qcnak zMo0uDFTtM8;~SW+LXGTB0fx=0$M31zjYltzRXkAFJ2p$ffT57;uq5b1JC<=Hg*k{n zaTLU!s*4tqewLTA(mxD$(h1muZ$sRt3J$R}2Z2=j#pTeYb8kE*({fu|5Wqo#2j!-I zXv*^s=A)V8=C+L&u~QoGKB at vWmz6>*29Df%Vy*xs^92wv>uHLNXn(tXabRX=znM}&Emft(?X+K z?V!Tb+`VdPDTiJe#ms54cNV|&MRzZj+4?;9t{1UhP~pZzG#&Px^yI7ZTF|YgYB>HV zbWymexSv~>JE>MDWRQ}te7byfUGXJrO~}5VK%4Wusp+mFm6lJ(pG(&d4M+dE{_cwY znt+B%d0}URV{0$d_xm2^KNumT&wII>`7uqd8Cyy37K1mhvI-}_zagHW|8ujcU(Al2 ze(?e{`bjsx@#@?S%~u_uJNUrYH-h^_>Jt>NL4e+vPYkNuuDR72BP}#7N!zE4F~=zF z&`LCO#!$fi$vG3&d4^fU`jC^F{rI&YlgXXNr73n5Dzfe+-fYob7=zyeRm9m=6o5Lu zndRc4{gsoY6uWdzIWxX at 81pgwrd^O4lBj~b;tV{Es$QAX6S-(w2Mjfnql0h78>;e%)` z&7TozG#ExEE?#G<7iWDk9;Q+Nb#ob}Qe93E~uNH6X;d}1wx~mAeIT#mV_Umn~ z7VV}^UInI3p2|89De4dtLEK|OFt{wLYN at JV69%j6GsNo{xjFfxU9Rjv+YV^5h}E-I*BSnASR-J&nv74Yc0NfNTNd3eX671)?YX+tTm~QcVt+53W&gR|)Wl>Gj)dGl=`O$V)Zgg)-0_ zA?Ivq`8$-;)`XUsosxR3vYan*rbK7_diQ>

x|u(UwF5I{BMTtOwK~k=-I^a%DS&m^_SD?;cQB-q=Bat50mb>u$GYWBKAk28yFKEm!-YMv= zSS|6G2lCc^SdMJ~s$>mDOtWXGX{vYhr$w#Ff65LW+ZlI&JdJg(*-JYc5><2S$k3oWI`cRxx&g at kwqYBffLYnB#7-9x3aiL&UB_h1M#{K zz2<@y!5fg8gIe*H?C8i|@)_@{V=(Mhom)J0x at FMl*45 z=5=S9FAe_YZ6&!>Zv0DHyT1Dp at gMu~)Z(k~Z56R5>DpjFAU9v*#`=WH at Kby&KM3p{ ze!l!3mMd$zCS>Q%@^&vBEiEan&O&Rt=LjoB`*yYHw6X)+`zfmitGo~*K3%BS+iJNR zSoJQHhV at VcERJ^7@!B)8PO*;WoK3~VTDx|kH$$h%6pU4FHSm?@ZlA)ocm|DTR#TT) zcCL{#xRzC}nOa*_{>$vze%tSY6;`#V{NR4H^i5f|d;PTC0 at AHTy$cEGj;@?S&vbky z=R_E;dkE)HX?AI0V=NZy)&;5TVPtPo-e5Dir<=PkE!m1Yrxwyy1wN9W67wDYd;?cq zl1s#ri%T0TK0pWj*K2;K2wLeoDKK`Ya>Mst>j{MbL6i*80J(ns{%X&YlO!75Az!`# zZvDt_Za`KBWYHquLuQA$eay at jW?&zd*ua2+W}hgsjE(RiIl#J z09psZpZ^z{@E<4mk0xYfU}9wcFP at N*;lF`G6%PkfdNF%D7ZFouV<$@o7yG|t^WUbN zp{*&skl??CTE^1I)XC7r(%w$l)XCC}R>{=d)yB{X>K_7a?o7b)*Z3PDBxLWdP0Ps6 zMnKEVz)Zl%z`#nt$-$^gFX>`vV`(gCXKrIkzyL)r=xl6i=R&~2$p}UN at 1Xx0v`ma_ zQ1rrv4icu8<`yph;-Ki2T}*A&2sr+R{2Tr+b#2N- at DGJl`pY%`Cq>H0_}{1UpO7{S z!~X}Ot(!1q7svqf`-Vp}W-C8nmaP&=$jUOF<5Jw%3m_v6&N7H%7TCUL^_tBRd=`D= z7vE6$#JkFdZ;bv|DR!FZiuQpamc3qJYj0CayiD-flehkyK73W=zQP900*tV22jfiP zEA6FhgZ|*T!7wzB$Xz7+u9p{TMQlCf#qsebI*fsNyoe|vj7$EE@w7#!%>0_f&HRFSkGAxQ8vMjKFMEXX$G$NcKg=JN$r%1`o9VA?)GbY1ES$C3+1Ux0SQ!Y|nV1Ne znVAV#85jsySeXCI{^$P>A1CL3_}JLk{$tC`!AZcx&JOi={g3v4ZvVyp8-tbgf9>}# z_Fwy-U-y4$^1o~5uiXDB6N+BNUe(U>-#-Ba{~=8!sQ)R}|KyeFFfY^#X)~UBa($6;``q1 at 4KFlK(B;QR*jzDPo42y%AtDGrJd*(Ve;1-%xtqeZ_Mw^LRQ6f+s!RMv#*d> zT{z41Mq4d4emArFP(5Av7dHq6!FP3IWjBeql0wU!6YC at 7A;T|Oyo?eO*{~xmc!t0A zpBar5r_PfO{ujuLA&Y57xbTnU)tt6TO*?pY_xauw$PxMG|1On7;Ko$0B07HjYKM2r zFi9kbO!v!NO1U0$eZc?h!3kDt3k3Z<^tdMv10c->pgtoDG>P&Km=rkFvI*N6ve5uig#yW*`i;1HDN+6upPXk8I85k=}0Wh7a13#v?1i#8C*`!+Yhc3=}-< z>E3+8etp^0MXV|8~=*tT=a3cK7zLJsX2%*t%t;h5i{w!Do)h8B_);j~=h#Su!%eOW zM*LOMxgks3@^`5ao;Q=w2*!zm8)U<+3A)ruUO{qX74jI@;4B#LA{fj zg^p&OfTS|}*%Ge4-!-w3;lmy6NJ2Xhl at jvJj>^{k?T*&w0aDT3 at xDR3`nJ9LwC~Iv zXb$^7ddz}?c^nGGzWkZ5cMnW!{>g)n!_z8T;=jV=kvMVArDpk-nL1{Tb|$ro(Y4UV zK7d*?s;;t`A@!{AU|8~^VqeIM-SYUZjHD3}kT7q;zk8!d7u1ojl^lFH%8&aL^@WmS zjRecBAr+J{#-j36n6{;Pk3}vC_!ssoAPKOCO9*FYQ@^=6_C>(D6ZS=DlC<7qrh{~1 zLEHGd#9+-Q`X%OeLZw->YH0L{a4_Uofm|am#zK}D*0;;z{){0tH$l#`#}!KjVV`Tx zbcdvOzb_(S)btKdn at gB{&#xWv-IYOT%C(-=xI=b4Q1gD- at TzQu|~RB!JrBh!xDPFsS4X8$Vs7m8Wr4 zMbkPcH&EScVk3X)elM2%Ni%Ao-(pmvAp% zh(R4lxO{M-adV7sC~lB zCu9ODg_#7XIW$5QwLn&Bf$DvSnI30Zl&lUQ<+IC!09vg38xWI2UYWrVPz-Un#GoF? z7+;6<1Y#WH$}P}7u4;z7UCivgJuLt-fl>y`&qcf$? zTG at d$&{~1H7m##_eF_5BpPx$_#aspmqrt8pV-#}eUY_4HNRk)^tFIU+8OnyI)V&pX z7eN47fK&j%03 at 5|iUb>70avFb@(YOvaqQdmhRlyf9=RMSeL$S+oi00Kx#vpZu=6;IopL%W!Yh^$aSpZ z+z4GaRp+LaV_6`4;^f>py2Cv>Ua1FDxy4SOsDzx+wCX2>n0XTE zkH;e;N`jLz`_TabttSAXcv0ZabYlpFK1`X9II6IuRiT-IKP;a at DAkzKWW~(dIu1)x zSDV{>%3bgF_PR$5WmRe^^Ip*CD)GJlre$AZSGA=buc5ZxnfGcf)PP%4Pf1?-XuWAy zgJskIN@$=nyFb#1)N-r7%q?$Hyq?tBLRDP=rg8l#C>@4ry9iP>OA(XH-Zt;zi$ zbWEThTebnWz>Tv7twL1^(9O$w{`};wmo$&Ev|s2f$j6GFaP{?7o7QgTSv~=xYBf>c z9AfO^I+AKN(?!>{GO{CL>l3pLdrjhIAI_;?*biH~w3TaETQ=*fK5 at -UWL>aI%DoU> ziR3M{bbbZjQ-D~i6rZcgaDa!RTg*(@u%d%X_cyQuTcWW<>^#-#aWxk;bzR(Pt{!`O ztKe at tBjb?syRfsSk>>jqN$?(AF~favp7rQsp3S5mwe{vWX zGigA^ZWWM+_NbMbf`!GB$@*CFie_!s8*ZMqlmXMkDZBuqDXa);7)`el82axt5LIr z=(5j~@=nB3*c6d$^zXV7-ThMco>9>uwGd5;`44?jDNmLmU#TEN#5i}YZqs8C8Coup zcXGsQ)1=VkW;iyE%OiFUrS}Mk9b~|f2{EboRwWbV{d!E}OUFZAL_9SAsYAW^hH#I4 zCpI$!pRN)aGY(cv(|!&-gM~c5T)h6f^`^Q&qDuro6Gl2EzM;Gb$RIrvTz!NyN5o-K z3=t$oDkUPI at wWtsmoWIqny}4Q4q7EF^bZj&Y9Pf7wlL#;#JfME$chLPB67xLLdbQ{ z&zgS`LHm{t9NRS!2Fokk!Ab1OUkWXEX8ntd0n4(C0nQc+X>Zi#%l7;Y-mmEreh48{ zSV~xEy&LG!dRQ1*K}NKVL5{rmd%+4G^y|@BQ8->StnoRM62-xbi#WIbeOvQ#-;9gBiNdkZNqi>u5e at kL8#cs^f1)Xr7f-wsVbasQ>ipL0H86 zg!8_suSE(<9(>}gjQQlY&J|oIZ`e)prO3i##bA|k&SZ*%?j>O at Mt67C^Kjnub&71; zx%@emnR6DUN7bd92W63MRVnZk*25cPv323#!B!HxKaaG4Jwc%l zP#zGM_h=1W6E#EJI)$~t8 at I{v>7!FK+v~84rJ*mnrN0ty5l>JXsL!uHbtkE)^U)sL zTkx9D|2EVsEBz at N*Xs4@$@`%WWrwu3zpiS=ST;XgmA$7uf$w?=%`b5MSgzh`sSfM< z_p z1qzLrV$7 at nXaB=tK9g0vfn4vW4`Luf+kFu{GyeJqePJYfw9)-kYStP)fc zdqr>2Y5lSpr=yED62*=oGiZ}TF<*dqGLT6;;=InUx+F9heKOtdrf=6+GriyeX(7`4 zn2z{JvuKm*8Hhm~z_M$M2Gk}0F}gCLJY+tSpAP?Pe07^q3Q*z2jqFAi?@8nwDE{d! zxGv$k530d}RnOON|FZ;3R9H~5?oB_-6~FVeGH~VDrI1a7Vq%7;2B^dBVjg*y0C!vxQBdwpr(EwsEc_Z~`R>?!>h>Ijb>aO$NEOKKw zq!xakAX~uy7Vjcj055$)VkIE-o&o}s`%5A)3iVSi0D7JpNjDEhvX^)~_Rq?n9m!4J z`2i$YN$sM{_!M;vy_93jiY-b72<~^HeZ6=UJxGVN!kc2x9V*9!O?C`u>0YXiWWfrO zwnAn#YCu+Ly)t#I#25*464xnHNRqaE&R>cFCnN;($|WS_omZ~;^Q+R81K^|_M1r|2 zv|R(m*F$xY0c)nuERN{F2oQ%JK(@Zzj`q7cX4*Pz(0YV44*iXA49g#mv5{RDlLC}{ zO<9;T5Y=Y^`Y`$5MzwgU3a0Y{BtYFb{D80*Wod{2C=R4R&mn|C*CO1Z9)|b#7 z>Z>_Z;2`+>D4AXeXoElFoy5_^8j5hR_X92t+Oz+k-p)EIs_uLEVu7U64L%?xF~kfE z-QC?iGz{G#Ac9g7(jlFKbc2B8fONOg(kcC3{C at pCKCyo9TJIn4taTXfKKtx_?mqk6 zfm!#nuk|>bf$MxLV>6B_^2DaDg;|~2{ZJU%8fT$D{${BfEb+#=7^;3Xtk*(S3ulcBGXw at 26| zdg4OPq^qS{giY=y$qF#P1h?hbqWT;^>%Lr$=S!|XEagb|P4SKKn{ZiCeMMXz-Jp_4 z-#ZiJI}!|0q!e35bKFxTCp~Vp)$cxd*o4c}wN3g~cW?#rM07vOflW>ozwLe_y557Q z9odAEWr|zR#R;^%%M#-75FPtp_rD^C;&fDW5I2i at 7iFQn(6E1j;TlZ`d?^|CoNB8 zN3qF7%qg5#O=h;drFjveg3#9JzmXF3s0Jp|-h>k(5eYIBY1Z zTzVHTH))|wwt~FrA%c6tcnaw;)#Bg_ at hlqcOr>_3V^7mJ{9^G at sY2`=C=bYxm{=dt z6mm*&Yg88vb`U`|T&sx_Dp$i-3G;Kj3zWDSnkWlMr5!>!!p0;X?~zF5iGLcP-dSN9 zZrUn{L49^k+d(Nnb at hVCl#6kWerOJxLq at L;HBi1cj;{Jf&{Hk*4W0%l!6he1Iee7S z;g9x!VBhCgQkkVvdkLT29SmX(HMv9dvgEF}npinTN~O_*yp#fB2e{~wTq}jj`i!LN zYy}U!vHK5YhG9}XOYf|P3 at M_>-=@XP$8yMYct|nzh8_3+rdK92+znJWM%Dx=OE;WxQ*JJu at V@Jv|>I?dM5Q zo|I#1e$y7*dZO at BBubJipjyk_$Vsc434_^k?^RK&ZCFhSR)!h^RX{oxrs zu6jP{oBNg*_BJDWJR0vK3a;%#TQx^Vb^N*O2o@$t$GEYdMfN`Mp2W{Z$WSVyR~swh z1tRWpqdB8B-0$_^W3!6vs<3HLdhL#p$ZCum7E2snw6&yGRRk$+b4$jxp>_S}MkEnl z*=$(2SRLSo=5FGzGIBxxg8s$B7Yyiu3?KaGNg5Yj4(R5|oda#YI3<{z&?Q?(?S=M6 zD8Ushfd6bgpLC2g)P|agJ++rb!9&Q5C6LhbGds0*WnieWi1M{Ir9N|oHiKuYOXnM` zEY2s71`8K%4$Cu|zgz;}r at eOfx!Ft^3#=h;aItqemKz|~Vdtx(B53~MWS%jAt?AQ# z at XmHDqkOE%4L!w2+yu9>XE*H>?=|dL>|NQ47{bbHcYR at hrR<$}GUD@>E~SXAWzInA zm9a7Le8`IfZJ8w0YPHy$jOcn{Iq)VUcsm<(H~59)`yjd4tnV(`$?|z)IKewl$i`CB zTaHv8qQ*->&ALMz2o*QEk;U#-M~hy3 at 4k~)m2e`;cOh%?#e5? zs!Q|DHrjLaBb7^&^}Mjp3Td&sie5_zXp)%gj`fcoQQsxFH%fwnY;~{6p9*O#@l!Gq z!+mf6@=xxIs)EPzclwZ6s`&{Pi}X=-F$Z5XN=LkV at O6?ue3^lz9p(8b%hP>tL8pg9 ztM^ESn8T1uhfJMys(ffva_a}izb~>CHzjT?D^2x_=5?R&oa7m^J$r1 at W7?YzGQbXy z?TBQAVWauJoJmw^sBjUvsLvQHS#F2x+j=i@%t=V ze>pCQY+kKFp$c9PFJx_!nDD<=HHOApK3yy4H}mQ2)zbO`TX`_}NUm|tERXp at _zSEC z`7q!k7{z-K|8t7WBWwLf2M%F|y`X>$2XtfXR+(0}00#Ku&Oj_R z5z)&4zj42zfeWV@>Sz;!OI!Vhv9uTikD%sr!3uQcpLF$n(7(+Se_<&t zVt_N`sUec$hK3fGC_i9!2BZqvaopJRfA|u);a7WaAdT zxaC=fA#KPSnS04}yf{}vvHaLU`QB#+CLfdr#n7_AN;_lg>6u5uxXpM$L+eZHS4wth zRE%K|i8=~VKa!ktyLTpVzF+7~2{%(C|Ek91?nBZVobN+VqvF?Rn*rlZc>bI0wR zO4xJ=nSHJ#F7|C`f8Ckm$%=KBU?!nT9Js7KQ_EFTRf(Qwrm!FO04c93Q_fLz3z}R> zli}{b{_2Vz({zaUV{N`0D}%J{!O8X6{2th=hvIcMO&tG>ijXoYdD0KMYwV7%;uU+` z^LQc=tprZ$8PmD>E3I^WV%$j5jrGI{lFe7*$E4>=LZHGC!G zbFfJlcQhO9lN`u55dP{Bxym-5-}WO68RZ~)=#tgWD*Rsk7(XpnYWBd>H%1brCVj0? zQY)`?yFL{0tXz#Q|N3|Zo&m{P2}22gzNn8c{B;$kBlUNsf(&eT6J at qxM&otVM)EGPR*T*KB({w$E zSMr{{yr4S29~FT(WRM8TYAu^;E!x66d3a&QV_+I2634 at +nywXF_eaIEmUSeueNz=EnG5G^*XQP=}Q6gNaZ33=Bi4(}Esq)zcR23GOk^b!@B3+SRG} zZ5WEN^%o1KzE&xcjb2{$Ra0)O7SXg&I zT+KnBBD14&3hYl^%Z+UCTfRQ3}1TxzE7&gx^v$eV5qvK{(U+sV%)glP9aqQYcd8|oz7p3Byr=kODq at a?$GdC!Jx zC6LTJ8 at Q^Z^X$miLW{}0yD(_yuxbZtp+x?wmNa&)a%HXkZBMKxswXv316zIUO1|_* z)H(vC5YA at 9ET(;W`M#?oG~FMg#m_R-lpmI}F(^#wXc8aR``135F)pvt(i6wS z3TU at eJTy+m*UXHQ9%0n#Rl-B$fn?_*qflhV at m&$Iz;)KU|EXGi at yo_2f|Gc(Qj^SA zM2{Nu=@f$MyHW~52!kn8<~L2G?dxdarl{rIZ?7L+QdP|2bzTfQ72myF zb$vS%vn!(HrYvy2$5KOU&hwt at 4B7593H%iy(63+7nRaPZKHO|3H$LXkh&G69Aml<* zcSw;xE8WN#O?>dY&VKEHBz|P6yR~}=rH0+xB*7}1kv^oytL&8x#zUam6}Bt0F)J(U zd?9|qaEsyK(eseX`d}`LJ)lVViuXhQ->$>*$BMhAm?S=G^reJQh#p zJ84zwyD190ADx`*`vX^{?NQM#fok_?z20b0c%3-~&yz1-D~{-|NXIRY+cljJZ>QIL zzP=k25U1C(n_VoeG~+%p%}4S)?7TOktcugyjHA%3y6(l}O~sQ7ua!?%xI4(*^>)Dq z at V6Ka_qN%2EhGuK?!`2FO&ugm+apxZ8ycsB3E_A4wOe1)2Zr>q^&wN;*5!~&(O&g7>6W^V8Em_y z`6H3pg|$4UYy6hnr}_yv3-6__%&1+uLw(OX(j1L2Rb<16{&3=3x!9M({FY}P at GPS( zw2c%YFy*u%K`kqGKu}X(RGxs4-(AR%7tNS8YB8&*DvT|<t~qHFbkIAhAio7c z{uBfDYUWrhDxx31;RY=otM6V9E4I><;@C7BPgooHI8J3y%yRAzet{WJC3z#tjahu^ z?bHq~f{bPkN?u{$F!?W&Fu7Q3lUQlAkB=L4V!;`dt(|8z*E25lia6(Im9mvSu&!81 at CEEHC@wM@ z-i;^n+z^4fs4=O&3}CIk at h#m08*|KVQOPPwJm=IU6^_}_kT;5&lxWqOLP)R6D)$O( zY7SzHTrg#^nu_|0C>uBX80w`Vk65!>70KDXjQYGj%QUUHs at 2Ldr+mR-v^}WYkBuVE z)8dZdE;l6Uu)ukD*ds~E&igF+5j_vMcOVtt)e7IWE-zQR4Z_R)AEZB6H(*T%({qY!6eTM zT{#GZln||Q9i4r$cyDL=?99c#qZ(MI4Hz at O-qtn{7^c=jZ&@&R)J7i)Y2g^4GJTco z%D5GN=wu;sWvZ;7Y&l~#W}~9BpS&`)is5`e_wMO^F6fHMs z at mZ7p`mqk%xqDl+i6zTGl=H`S^1Bs=1tGzSocKRbTa5oeqmngLl4oMP&oyi8{Y}G0 zmr0b%Z}G_TdQm+c{{1APICKyZkg}{%QZhfGWnD65)l~lYJMT3^=_;jV11;2jVeC1n z`n#;t~|JfG5- z>Qseg2nS=Lh}er7849g9V*)UqI@#&UH`t##S9klCd_EF_M(GaT&Bfv4+u~CG!HTw4 z!n3}o$b4nRY-h at F#?0i5ujVz97s1cMUsdEbN5--dxBPbA%mw$%HuBTL!LEL&{{WW$ zI z)Q&vzThlHY5_Wc7dJV3r>)mo`Gbhyck^J|MbPX2jOb;@GqkG^dL&&?HSIzF1%@e!a z*9foa>7BEceOiBh;z)rcS^hKAgWidmnHEfj=xG9#rZ?P4atA%Oju%UfJcsKRkR#K3 z>9&Ym*0qqBq-}kk?Q)?QjPh;Bg_?PF|3;rHw~enx%@le>KzTsugV9JMuj=rlv#Z9^ z$c}Ya^x;%SY4fKl(*zY){G;kiXR$YOw!1zDZD6JTbU55nQ#Y%jQ$nSEqbQhyOAhXH zM6sh8rPAO;hVI8b6_9w)+3*r;H8)u<|RRL8DI&;l4)8xi;O$e!@u>bbkaPsQ5Z6bSih5e1%1(%0ha72#N^MSlckImH1xpXA;)KYUYh6g;mutDqNncQRS}CPlG3 at VCsFQ3r z(DzwgTE>|pl+RY^PS}3*wLYyAs at 3zd(KYYEtK#=%W?F&jJNfv|+8>QQ-;Zg6r|m+= z%*w2oh}E#3p45^tFc}UVo92hqX~;08FlS8^vNE(N!UTriFfu+>nX3!gn=|p2ytCpf zREFqd%Y&G+mtI}b at A)}k&U5)Jwy(XTNNbB+&pR`yPfFI)I5_LYk|FSOI|q~Uc-091 zuzS$c at 7N_zKw92z#Ds3W^zk94!^fDwcHCF=2{ka&A2odO7s|~2Ow>UjeUv3(dpo%) z9P8aCGtl?5g&#|6zO{2$;n#t_n{KC>vQ}%c?RQ)m-|~y#`F6NWnKof|&tU0{8QV85Bi at BLD-T6{*br3fsL8DPZdQ+5oLGk?1RxKEF z*0;uX21ldW8?$m at ozD4L`jtLi<7SDU`!ah=ZG$Cj>3h#eVp=h}7?#_hUnWZdgdUP3 z^kqz|oGA!j-qxA$Fg!)tdO})TUZTSC>B`-_&*KjA2MrBbS0QomlTi1JPSK}7OJj`;C-ga+P+r_WG0 zD_lRrRcwXorM|Y6W2AfSOa1UuHGI<8xLHco;-~6v{e+WX1MQ>kYhDd@?epU^#N^HU zO}NyZQr^Y at cMQiTS9ot{^*AV*+!F~!Zs>c!M_vCaBaXzSfmF`4eLx4)S zMm8MRTvSF8Xnv_4GOG^|G2^!56w}%^3X_N}gO4q{367UOo~vi3Xzb75Kv1Y<>m7U# ziSgPrtubx1Vj~;ro(sxC^>Sa*?mH)n;EY8vAAXk49fskpI=kf}tcT@&=8qwSxy~1yPwmvOeLBX)9kx2DtfaxIDh?muDQ%;friwt*spMMq7nWc7r6!~ z;cI1a*FWpRJ6UE%#%KS!Aj3zc`PwJ2IYO)rqrE-ro(QVFp at nfFMO0U=xczJcrfirz zW(4NPc^Vl3dBSZK5#(U+?-zNwuV}hX!e!;cOHqR1jr*O$KnbQhU*j;twlQubY*m80 zf*%IcNVx5^_ryoYZqHSCIEM6_TisuC?+**^vfqm_X;z!9i zn+dv(4Bjl?kK?B)`xLF!QaO;93gTXh8%43j?I&cYrmyEErt!Mzh-h3;rUDcE=G`9Y z-w;*7qpn*b>csrzn7=Z%E5${vP#}z6H!llpSgIxp#B9V4x0#g at q~n-!wsponv5`gy zriDM8S7NrFEznXNM#XPj zFDVC|_IHyc`{8-`I8Bl4bLK8cHnz4P&8|*BgWa}Z>po`(2D zSn>QQpP1!sA+wDJ=k{gLDzv1uN-ofJXS5<;~DZU$36vp;c@#h((Zgn*TmQ56|1iTkTcKU(^s{wEkSK6_mLcm6v$vST+05E{vzAplX}R7fw1AUPWffGu8P4j_R(H zJiw#kF)KV*5F+x at 1~YlBf7E6NOuLMpE9~6rv`$|~lX at G{sMYeK!3ipeuf*yKoR5^JD zE_Wjs>c at z|ouBB$TG(ABlYhepZf}hL ziLS6hxuAdY9>0|h{~xO0&)e|-L{~)q9bFNI+nD}4x5CBti(BFP39oSeKY=R%^}_k@ zE*KF))KPITfqYBuI0#sbSR-7vDGlQ`2av$G8 z+V_IhPu}AEY$|fCDU|5|+G4(nUANrVRuT3CS}%2?z$#Jh7uMu>+$Gy{&060xcJsvJ zxCcOutTvO1HJk^}&zBeT$Xo4}I6B6AF zSvmitkp3qt{}AvjIEimKmaC{fUF2vM4&j zO;ljcIxN6LJXlm=?#_CD@$k3BQ8Y4#u_zij-hyX8eXuCQoZv2wCNL*T)>{|KEOIbY zOQTz!?Uw2RL&20>9Bg_l5{_^ed%(8}fG-)@IoaQuF!5j!Q2{tMS4$I^vV<^;6s0qO zHu3YbhyW7=JUCJQJfYwA{jUofVCZMA{C}R#&n5Y7I)6{y+vzx={v#x)f5rp|$^Qi9 zcF|=lO`UWoZ$Ug|%AYvXtxyE+0)&_CH%DxLrw&Do05A}44lD)W at jokp%A#NovlBA8 zWes)yW06HuOPkWp#m448KR|$OStC1hIx|Nmab^17*O~1%7Es8=*#hp!D=sE34seJd z5C}+W5I|CaAR-_T8*uzn2K4=s-S$JEKojE!CJ#Kz1ppy`4d(>ZfHAk-oE*SAFqV at I zPy^D=)Wrn$OONB$+^wryH)0^r?J)%M-*#)79cVxw8_);2)xEU|47i;RJJ5G4X9xXq z4 at 5u|c)$#uC^yg#Wn~3%0F9NE<2i_x76hWD|1GlajxaM+08C>;1uXsdMF|0e*};@% zl>d>j0UI3n0J?oq+Wl7s{C=D6f0J=RfH3|=#s=mD0o(R3G7yN1>+gEN>>$7z|3!}t z%*F8!AFQlgf7b&}j1$<*e;Lcl3IyvPGERUk{hJ;e>+Of at U&pesbN$^O8wUpj$j`s% z0WvON2mDP2tn}YyVAg+}2OF3J0_>*0js*j>-alke at IU-QK;Ylv=j><%;H{3gj~Y_3 z^n?LR$)XI01N#S<$L$4F%FYZ<`7^(74 at 4<-D0xBRBH}`#!opB4b`V5Vh at DG_OI#cZ z1wq+F*>97cANBvPa=TGQ;U*#$FcWJh7h6ge5ixcMtGE~&NL*BegN>DwgOim5#Lg-T h5)u>R5ET`@-EL0KMvl%uQ;zL6qfwtd6H^dJ{Xg76qObq} literal 0 HcmV?d00001 -- 1.7.0 From gmcharlt at gmail.com Fri Jul 2 14:48:15 2010 From: gmcharlt at gmail.com (Galen Charlton) Date: Fri, 2 Jul 2010 08:48:15 -0400 Subject: [Koha-patches] [PATCH 4/4] bug 4188: add note about hiding the OrderPdfTemplate syspref In-Reply-To: <1278074895-7443-3-git-send-email-gmcharlt@gmail.com> References: <1278074895-7443-1-git-send-email-gmcharlt@gmail.com> <1278074895-7443-2-git-send-email-gmcharlt@gmail.com> <1278074895-7443-3-git-send-email-gmcharlt@gmail.com> Message-ID: <1278074895-7443-4-git-send-email-gmcharlt@gmail.com> Signed-off-by: Galen Charlton --- .../en/modules/admin/preferences/acquisitions.pref | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/acquisitions.pref b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/acquisitions.pref index a1ea02d..9b10600 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/acquisitions.pref +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/acquisitions.pref @@ -1,5 +1,5 @@ # Broken, omitted: acquisitions, emailPurchaseSuggestions -# Unsure how to format the OrderPdfTemplate field as a browse option +# hiding OrderPdfTemplate for now - see bug 4188 Acquisitions: Policy: - @@ -24,4 +24,4 @@ Acquisitions: - - Use - pref: OrderPdfFormat - - when printing basket groups. \ No newline at end of file + - when printing basket groups. -- 1.7.0 From paul.poulain at biblibre.com Fri Jul 2 15:24:29 2010 From: paul.poulain at biblibre.com (Paul Poulain) Date: Fri, 02 Jul 2010 15:24:29 +0200 Subject: [Koha-patches] [PATCH 3/4] bug 4188: move PDF templates for printed purchase orders In-Reply-To: <1278074895-7443-3-git-send-email-gmcharlt@gmail.com> References: <1278074895-7443-1-git-send-email-gmcharlt@gmail.com> <1278074895-7443-2-git-send-email-gmcharlt@gmail.com> <1278074895-7443-3-git-send-email-gmcharlt@gmail.com> Message-ID: <4C2DE88D.7060207@biblibre.com> Le 02/07/2010 14:48, Galen Charlton a ?crit : > The PDF templates for purchase orders now live in the > directory koha-tmpl/intranet-tmpl/prog/pdf to separate > them from code. As no automatic translation system for > PDF files is currently implemented, I'm keeping them out > of the language subdirectories for now. > > At present, there are two choices of templates for printing > purchase orders (AKA basket groups), controlled by setting > the OrderPdfFormat syspref: > > pdfformat::layout2pages (two-page layout) > pdfformat::layout3pages (three-page layout) > > To customize a template or to add a new one requires two steps: > > * modifying the PDF; note that OpenOffice source files > are included as a way of generating the PDF > * modifying the code in acqui/pdfformat/layout*.pm to > position the order text onto the template > in git.biblibre.com version, the syspref now let you upload the layout (.pdf) May be tricky to add it now (as there's also a change in syspref system), but I think it's the way to go : the layout is language & koha independant, it's provided by the library (the .odt being still in koha repo to have an example) HTH -- Paul POULAIN http://www.biblibre.com Expert en Logiciels Libres pour l'info-doc Tel : (33) 4 91 81 35 08 From nahuel.angelinetti at biblibre.com Fri Jul 2 15:32:21 2010 From: nahuel.angelinetti at biblibre.com (Nahuel ANGELINETTI) Date: Fri, 2 Jul 2010 15:32:21 +0200 Subject: [Koha-patches] [PATCH] (bug #4931) add the ability to choose home or holding branch in stocktaking Message-ID: <1278077541-21128-1-git-send-email-nahuel.angelinetti@biblibre.com> This add radio box in stocktaking to base it on home or holdingbranch --- C4/Items.pm | 12 ++++++++---- .../prog/en/modules/tools/inventory.tmpl | 4 ++++ tools/inventory.pl | 3 ++- 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/C4/Items.pm b/C4/Items.pm index ffdf6dd..077b728 100644 --- a/C4/Items.pm +++ b/C4/Items.pm @@ -1029,7 +1029,7 @@ $statushash requires a hashref that has the authorized values fieldname (intems. =cut sub GetItemsForInventory { - my ( $minlocation, $maxlocation, $location, $itemtype, $ignoreissued, $datelastseen, $branch, $offset, $size, $statushash ) = @_; + my ( $minlocation, $maxlocation, $location, $itemtype, $ignoreissued, $datelastseen, $branchcode, $branch, $offset, $size, $statushash ) = @_; my $dbh = C4::Context->dbh; my ( @bind_params, @where_strings ); @@ -1069,9 +1069,13 @@ END_SQL push @bind_params, $location; } - if ($branch) { - push @where_strings, 'items.homebranch = ?'; - push @bind_params, $branch; + if ( $branchcode ) { + if($branch eq "homebranch"){ + push @where_strings, 'items.homebranch = ?'; + }else{ + push @where_strings, 'items.holdingbranch = ?'; + } + push @bind_params, $branchcode; } if ($itemtype) { diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/inventory.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/inventory.tmpl index 0b35000..36e8cc4 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/inventory.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/inventory.tmpl @@ -76,6 +76,10 @@ $(document).ready(function(){

Select items you want to check
  1. + + Home Branch + Holding Branch +
  2. 's behavior so that Arrived -> Add item and Add item -> Arrived. --- .../prog/en/modules/serials/serials-edit.tmpl | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-edit.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-edit.tmpl index dd73db9..8805654 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-edit.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-edit.tmpl @@ -81,6 +81,9 @@ function HideItems(index,labelindex) { label = document.getElementById(labelindex); label.style.display='block'; } +function setStatus(serialid){ + $("#status"+serialid).val("2").attr("selected","selected"); +} function changeDate(adate) { var elem = document.getElementById("expecteddate"); elem.value = adate; @@ -224,7 +227,7 @@ function CloneSubfield(index){ " onchange="if (this.value==2){unHideItems('items'++,'label'); changeDate('')} else if (this.value==7){changeDate('')} else { HideItems('items'++,'label'); changeDate('')}" > + " onchange="if (this.value==2 || this.value==7){changeDate('')} else {changeDate('')}" > @@ -273,7 +276,7 @@ function CloneSubfield(index){ - " style="color: grey; font-size: 80%; cursor: pointer;" onclick="unHideItems('items','label', '')"> + " style="color: grey; font-size: 80%; cursor: pointer;" onclick="unHideItems('items','label', '');setStatus();"> Click to add item
-
+
@@ -531,6 +542,17 @@ Sub report: "/> @@ -544,7 +566,7 @@ Sub report:
+ -- 1.5.4.5 --0016362845cc19da3c048b5396d9 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
From 4404a9069067f2c937d6dbb78a4b2b3ee3479751 Mo= n Sep 17 00:00:00 2001
From: Amit Gupta <amit.gupta at osslabs.biz>
Date: Wed, 14 Jul 2010 12:1= 3:49 +0530
Subject: [PATCH] Fixes Bug 2969: Report Name should be mandatory for saved = reports

---
=A0installer/data/mysql/kohastructure.sql =A0 =A0 =A0 =A0 =A0 =A0 | =A0 =A0= 2 +-
=A0.../en/modules/reports/guided_reports_start.tmpl =A0 | =A0 26 ++++++++++= ++++++++-
=A02 files changed, 25 insertions(+), 3 deletions(-)

diff --git a/installer/data/mysql/kohastructure.sql b/installer/data/mysql/= kohastructure.sql
index e42cecd..6d712df 100644
--- a/installer/data/mysql/kohastructure.sql
+++ b/installer/data/mysql/kohastructure.sql
@@ -1589,7 +1589,7 @@ CREATE TABLE saved_sql (
=A0 =A0`last_modified` datetime default NULL,
=A0 =A0`savedsql` text,
=A0 =A0`last_run` datetime default NULL,
- =A0 `report_name` varchar(255) default NULL,
+ =A0 `report_name` varchar(255) NOT NULL default '',
=A0 =A0`type` varchar(255) default NULL,
=A0 =A0`notes` text,
=A0 =A0PRIMARY KEY =A0(`id`),
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/reports/guided_reports= _start.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/reports/guided_report= s_start.tmpl
index 7a24859..aa8ce67 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/reports/guided_reports_start.= tmpl
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/reports/guided_reports_start.= tmpl
@@ -406,6 +406,17 @@ NAME=3D"name" -->"><!-- TMPL_V= AR NAME=3D"name"--></label></td><td>
=A0<!-- /TMPL_IF -->

=A0<!-- TMPL_IF NAME=3D"save" -->
+<script type=3D"text/javascript">
+//<![CDATA[
+function check(f) {
+if (f.reportname.value =3D=3D "") {
+ =A0 =A0alert(_("You must specify a Report name."));
+ =A0 =A0return false;
+}
+ =A0 =A0f.submit();
+}
+//]]>
+</script>
=A0<form action=3D"/cgi-bin/koha/reports/guided_reports.pl" method=3D"pos= t">
=A0<input type=3D"hidden" name=3D"sql" value=3D"= ;<!-- TMPL_VAR NAME=3D"sql" ESCAPE=3D"html" -->&q= uot; />
=A0<input type=3D"hidden" name=3D"type" value=3D&quo= t;<!-- TMPL_VAR NAME=3D"type" -->" />
@@ -416,7 +427,7 @@ NAME=3D"name" -->"><!-- TMPL_VA= R NAME=3D"name"--></label></td><td>
=A0 =A0 <li><label for=3D"notes">Notes:</label>= ; <textarea name=3D"notes" id=3D"notes"></text= area></li>
=A0</ol></fieldset>
=A0<fieldset class=3D"action"><input type=3D"hidden= " name=3D"phase" value=3D"Save Report" />
-<input type=3D"submit" name=3D"submit" value=3D&quo= t;Save Report" /></fieldset>
+<input type=3D"button" value=3D"Save" onclick=3D&qu= ot;check(this.form);"/></fieldset>
=A0</form>
=A0<!-- /TMPL_IF -->

@@ -531,6 +542,17 @@ Sub report:<select name=3D"subreport">=
=A0<!-- /TMPL_IF -->

=A0<!-- TMPL_IF NAME=3D"editsql" -->
+<script type=3D"text/javascript">
+//<![CDATA[
+function check(f) {
+if (f.reportname.value =3D=3D "") {
+ =A0 =A0alert(_("You must specify a Report name."));
+ =A0 =A0return false;
+}
+ =A0 =A0f.submit();
+}
+//]]>
+</script>
=A0<form action=3D"/cgi-bin/koha/reports/guided_reports.pl" method=3D"pos= t">
=A0<input type=3D"hidden" name=3D"phase" value=3D&qu= ot;Update SQL" />
=A0<input type=3D"hidden" name=3D"id" value=3D"= <!-- TMPL_VAR NAME=3D"id" -->"/>
@@ -544,7 +566,7 @@ Sub report:<select name=3D"subreport"><= br> =A0</fieldset>

=A0<fieldset class=3D"action">
-<input type=3D"submit" name=3D"submit" value=3D&quo= t;Update SQL" /></fieldset>
+<input type=3D"button" value=3D"Update SQL" onclick= =3D"check(this.form);" /></fieldset>
=A0</form>


--
1.5.4.5



--0016362845cc19da3c048b5396d9-- From M.de.Rooy at rijksmuseum.nl Wed Jul 14 14:19:28 2010 From: M.de.Rooy at rijksmuseum.nl (Marcel de Rooy) Date: Wed, 14 Jul 2010 12:19:28 +0000 Subject: [Koha-patches] [PATCH] Bug 4866 for master (Enable Change event for item plugins) Message-ID: <32857065C79E3F4E8FDFBB0CAC6897F702912A24@S-MAIL-1A.rijksmuseum.intra> --- cataloguing/additem.pl | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/cataloguing/additem.pl b/cataloguing/additem.pl index ea4daf9..df08c0e 100755 --- a/cataloguing/additem.pl +++ b/cataloguing/additem.pl @@ -523,8 +523,10 @@ foreach my $tag (sort keys %{$tagslib}) { if (do $plugin) { my $extended_param = plugin_parameters( $dbh, $temp, $tagslib, $subfield_data{id}, \@loop_data ); my ( $function_name, $javascript ) = plugin_javascript( $dbh, $temp, $tagslib, $subfield_data{id}, \@loop_data ); + my $change= index($javascript, 'function Change')>-1?"return Change$function_name($subfield_data{random}, '$subfield_data{id}');": 'return 1;'; #enhancement 4866 $subfield_data{marc_value} = qq[ ... $javascript]; -- 1.6.0.6 From oleonard at myacpl.org Wed Jul 14 15:56:39 2010 From: oleonard at myacpl.org (Owen Leonard) Date: Wed, 14 Jul 2010 09:56:39 -0400 Subject: [Koha-patches] [PATCH] Fix for Bug 4999, OPAC error pages have incorrect markup structure Message-ID: <1279115799-20008-1-git-send-email-oleonard@myacpl.org> No strings have been harmed in the making of this patch. --- .../opac-tmpl/prog/en/modules/errors/400.tmpl | 31 ++++++++++--------- .../opac-tmpl/prog/en/modules/errors/401.tmpl | 31 ++++++++++--------- .../opac-tmpl/prog/en/modules/errors/402.tmpl | 31 ++++++++++--------- .../opac-tmpl/prog/en/modules/errors/403.tmpl | 31 ++++++++++--------- .../opac-tmpl/prog/en/modules/errors/404.tmpl | 31 ++++++++++--------- .../opac-tmpl/prog/en/modules/errors/500.tmpl | 31 ++++++++++--------- 6 files changed, 96 insertions(+), 90 deletions(-) diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/errors/400.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/errors/400.tmpl index 49fd9e6..e7ec2f2 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/errors/400.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/errors/400.tmpl @@ -1,14 +1,14 @@ Koha Online Catalog › An Error Has Occurred - + +
+
- -
-
-
-
+
+
+

An Error has Occurred

Error 400

-
-
-
-
- - - - - +
+
+ +
+
+ +
+
+
+ diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/errors/401.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/errors/401.tmpl index 73ed72b..cd97560 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/errors/401.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/errors/401.tmpl @@ -1,14 +1,14 @@ Koha Online Catalog › An Error Has Occurred - + +
+
- -
-
-
-
+
+
+

An Error has Occurred

Error 401

-
-
-
-
- - - - - +
+
+ +
+
+ +
+
+
+ diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/errors/402.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/errors/402.tmpl index 13eb795..0035266 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/errors/402.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/errors/402.tmpl @@ -1,14 +1,14 @@ Koha Online Catalog › An Error Has Occurred - + +
+
- -
-
-
-
+
+
+

An Error has Occurred

Error 402

-
-
-
-
- - - - - +
+
+ +
+
+ +
+
+
+ diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/errors/403.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/errors/403.tmpl index 81b15da..f099511 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/errors/403.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/errors/403.tmpl @@ -1,14 +1,14 @@ Koha Online Catalog › An Error Has Occurred - + +
+
- -
-
-
-
+
+
+

An Error has Occurred

Error 403

-
-
-
-
- - - - - +
+
+ +
+
+ +
+
+
+ diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/errors/404.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/errors/404.tmpl index bb07e53..0f7472e 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/errors/404.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/errors/404.tmpl @@ -1,14 +1,14 @@ Koha Online Catalog › An Error Has Occurred - + +
+
- -
-
-
-
+
+
+

An Error has Occurred

Error 404

-
-
-
-
- - - - - +
+
+ +
+
+ +
+
+
+ diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/errors/500.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/errors/500.tmpl index f96e407..d45c5db 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/errors/500.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/errors/500.tmpl @@ -1,14 +1,14 @@ Koha Online Catalog › An Error Has Occurred - + +
+
- -
-
-
-
+
+
+

An Error has Occurred

Error 500

-
-
-
-
- - - - - +
+
+ +
+
+ +
+
+
+ -- 1.7.0.4 From oleonard at myacpl.org Wed Jul 14 16:25:47 2010 From: oleonard at myacpl.org (Owen Leonard) Date: Wed, 14 Jul 2010 10:25:47 -0400 Subject: [Koha-patches] [PATCH] Begin fix for Bug 3652 - XSS vulnerabilities Message-ID: <1279117547-20186-1-git-send-email-oleonard@myacpl.org> - Setting default_escape => "HTML" in C4::Output In the OPAC: - Removing redundant "ESCAPE='HTML'" from the templates - Adding "ESCAPE='0'" where necessary: -- Variables like OpacNav which output HTML or JS -- Instances of CGI::scrolling_list variables --- C4/Output.pm | 1 + .../opac-tmpl/prog/en/includes/doc-head-close.inc | 4 +- .../opac-tmpl/prog/en/includes/doc-head-open.inc | 6 ++- koha-tmpl/opac-tmpl/prog/en/includes/masthead.inc | 4 +- .../opac-tmpl/prog/en/includes/navigation.inc | 2 +- .../opac-tmpl/prog/en/includes/opac-bottom.inc | 6 +- koha-tmpl/opac-tmpl/prog/en/modules/ilsdi.tmpl | 2 +- .../opac-tmpl/prog/en/modules/opac-ISBDdetail.tmpl | 2 +- .../opac-tmpl/prog/en/modules/opac-MARCdetail.tmpl | 2 +- .../opac-tmpl/prog/en/modules/opac-account.tmpl | 2 +- .../prog/en/modules/opac-addbybiblionumber.tmpl | 4 +- .../opac-tmpl/prog/en/modules/opac-basket.tmpl | 14 +++--- .../opac-tmpl/prog/en/modules/opac-browser.tmpl | 10 ++-- .../opac-tmpl/prog/en/modules/opac-detail.tmpl | 48 ++++++++-------- koha-tmpl/opac-tmpl/prog/en/modules/opac-main.tmpl | 2 +- .../opac-tmpl/prog/en/modules/opac-mymessages.tmpl | 10 ++-- .../opac-tmpl/prog/en/modules/opac-opensearch.tmpl | 56 ++++++++++---------- .../prog/en/modules/opac-readingrecord.tmpl | 8 ++-- .../opac-tmpl/prog/en/modules/opac-reserve.tmpl | 4 +- .../prog/en/modules/opac-results-grouped.tmpl | 2 +- .../opac-tmpl/prog/en/modules/opac-results.tmpl | 18 +++--- .../opac-tmpl/prog/en/modules/opac-review.tmpl | 2 +- .../prog/en/modules/opac-search-history.tmpl | 4 +- .../opac-tmpl/prog/en/modules/opac-sendbasket.tmpl | 2 +- .../opac-tmpl/prog/en/modules/opac-shelves.tmpl | 22 ++++---- .../opac-tmpl/prog/en/modules/opac-showmarc.tmpl | 2 +- .../prog/en/modules/opac-showreviews.tmpl | 2 +- .../prog/en/modules/opac-suggestions.tmpl | 2 +- koha-tmpl/opac-tmpl/prog/en/modules/opac-tags.tmpl | 6 +- .../prog/en/modules/opac-tags_subject.tmpl | 2 +- .../opac-tmpl/prog/en/modules/opac-topissues.tmpl | 2 +- 31 files changed, 129 insertions(+), 124 deletions(-) diff --git a/C4/Output.pm b/C4/Output.pm index 9f5ed5e..1c2e8d5 100644 --- a/C4/Output.pm +++ b/C4/Output.pm @@ -98,6 +98,7 @@ sub gettemplate { my $template = HTML::Template::Pro->new( filename => $filename, die_on_bad_params => 1, + default_escape => 'html', global_vars => 1, case_sensitive => 1, loop_context_vars => 1, # enable: __first__, __last__, __inner__, __odd__, __counter__ diff --git a/koha-tmpl/opac-tmpl/prog/en/includes/doc-head-close.inc b/koha-tmpl/opac-tmpl/prog/en/includes/doc-head-close.inc index fe7e7db..d3e85d3 100644 --- a/koha-tmpl/opac-tmpl/prog/en/includes/doc-head-close.inc +++ b/koha-tmpl/opac-tmpl/prog/en/includes/doc-head-close.inc @@ -12,7 +12,7 @@ /css/print.css" /> /lib/jquery/plugins/ui.tabs.css" /> - + @@ -57,7 +57,7 @@ $(window).load(function() { verify_images(); }); - + //]]> diff --git a/koha-tmpl/opac-tmpl/prog/en/includes/doc-head-open.inc b/koha-tmpl/opac-tmpl/prog/en/includes/doc-head-open.inc index 7af0218..c3f4adf 100644 --- a/koha-tmpl/opac-tmpl/prog/en/includes/doc-head-open.inc +++ b/koha-tmpl/opac-tmpl/prog/en/includes/doc-head-open.inc @@ -1,5 +1,9 @@ -" xml:lang="" dir="" xmlns="http://www.w3.org/1999/xhtml"> + +" xml:lang="" dir="" xmlns="http://www.w3.org/1999/xhtml"> + +" xml:lang="" xmlns="http://www.w3.org/1999/xhtml"> + diff --git a/koha-tmpl/opac-tmpl/prog/en/includes/masthead.inc b/koha-tmpl/opac-tmpl/prog/en/includes/masthead.inc index 878a412..2830905 100644 --- a/koha-tmpl/opac-tmpl/prog/en/includes/masthead.inc +++ b/koha-tmpl/opac-tmpl/prog/en/includes/masthead.inc @@ -15,7 +15,7 @@ <!-- /TMPL_IF --> </div> <!-- TMPL_IF NAME="opacheader" --> - <!-- TMPL_VAR NAME="opacheader" --> + <!-- TMPL_VAR NAME="opacheader" ESCAPE="0" --> <!-- /TMPL_IF --> <div id="opac-main-search" class="yui-g"> <!-- TMPL_IF NAME="opacsmallimage" --> @@ -78,7 +78,7 @@ <select name="limit" id="masthead_search" class="left" style="max-width:10em;width:10em;"> <option value="">All Libraries</option> <!-- TMPL_LOOP NAME="BranchesLoop" --> - <option <!-- TMPL_IF NAME="selected" -->SELECTED<!-- /TMPL_IF --> value="branch:<!-- TMPL_VAR NAME='value' -->"><!-- TMPL_VAR NAME='branchname' --></option> + <option <!-- TMPL_IF NAME="selected" -->SELECTED<!-- /TMPL_IF --> value="branch:<!-- TMPL_VAR NAME="value" -->"><!-- TMPL_VAR NAME="branchname" --></option> <!-- /TMPL_LOOP --> </select> <!-- TMPL_ELSE --> diff --git a/koha-tmpl/opac-tmpl/prog/en/includes/navigation.inc b/koha-tmpl/opac-tmpl/prog/en/includes/navigation.inc index 78841ce..9167e7a 100644 --- a/koha-tmpl/opac-tmpl/prog/en/includes/navigation.inc +++ b/koha-tmpl/opac-tmpl/prog/en/includes/navigation.inc @@ -1 +1 @@ -<!-- TMPL_VAR NAME="OpacNav" --> \ No newline at end of file +<!-- TMPL_VAR NAME="OpacNav" ESCAPE="0" --> \ No newline at end of file diff --git a/koha-tmpl/opac-tmpl/prog/en/includes/opac-bottom.inc b/koha-tmpl/opac-tmpl/prog/en/includes/opac-bottom.inc index 94a86e9..db2b02f 100644 --- a/koha-tmpl/opac-tmpl/prog/en/includes/opac-bottom.inc +++ b/koha-tmpl/opac-tmpl/prog/en/includes/opac-bottom.inc @@ -1,7 +1,7 @@ <!-- TMPL_IF NAME="opaccredits" --> <div class="ft"> - <!-- TMPL_VAR NAME="opaccredits" --> + <!-- TMPL_VAR NAME="opaccredits" ESCAPE="0" --> </div> <!-- /TMPL_IF --> </div> @@ -12,7 +12,7 @@ <!-- TMPL_LOOP NAME="languages_loop" --> <!-- TMPL_IF NAME="group_enabled" --> <!-- TMPL_IF NAME="plural" --> - <a id="show<!-- TMPL_VAR NAME="rfc4646_subtag" -->" class="sublangs more" href="#"><!-- TMPL_IF NAME="native_description" --><!-- TMPL_VAR NAME="native_description" --><!-- TMPL_ELSE --><!-- TMPL_VAR NAME="rfc4646_subtag" --><!-- /TMPL_IF --></a> + <a id="show<!-- TMPL_VAR NAME="rfc4646_subtag" -->" class="sublangs more" href="#"><!-- TMPL_IF NAME="native_description" --><!-- TMPL_VAR NAME="native_description" ESCAPE="0" --><!-- TMPL_ELSE --><!-- TMPL_VAR NAME="rfc4646_subtag" --><!-- /TMPL_IF --></a> <div id="sub<!-- TMPL_VAR NAME="rfc4646_subtag" -->"> <div class="bd"><ul> <!-- TMPL_LOOP NAME="sublanguages_loop" --> @@ -20,7 +20,7 @@ <!-- TMPL_IF NAME="sublanguage_current" --> <li> <!-- TMPL_VAR NAME="native_description" --> <!-- TMPL_VAR NAME="script_description" --> <!-- TMPL_VAR NAME="region_description" --> <!-- TMPL_VAR NAME="variant_description" --> (<!-- TMPL_VAR NAME="rfc4646_subtag" -->)</li> <!-- TMPL_ELSE --> - <li><a href="/cgi-bin/koha/opac-changelanguage.pl?language=<!-- TMPL_VAR NAME="rfc4646_subtag" -->"> <!-- TMPL_VAR NAME="native_description" --> <!-- TMPL_VAR NAME="script_description" --> <!-- TMPL_VAR NAME="region_description" --> <!-- TMPL_VAR NAME="variant_description" --> (<!-- TMPL_VAR NAME="rfc4646_subtag" -->)</a></li> + <li><a href="/cgi-bin/koha/opac-changelanguage.pl?language=<!-- TMPL_VAR NAME="rfc4646_subtag" -->"> <!-- TMPL_VAR NAME="native_description" ESCAPE="0" --> <!-- TMPL_VAR NAME="script_description" ESCAPE="0" --> <!-- TMPL_VAR NAME="region_description" ESCAPE="0" --> <!-- TMPL_VAR NAME="variant_description" ESCAPE="0" --> (<!-- TMPL_VAR NAME="rfc4646_subtag" -->)</a></li> <!-- /TMPL_IF --> <!-- /TMPL_IF --> <!-- /TMPL_LOOP --> diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/ilsdi.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/ilsdi.tmpl index dfe1495..2a78374 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/ilsdi.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/ilsdi.tmpl @@ -1,4 +1,4 @@ -<!-- TMPL_INCLUDE NAME="doc-head-open.inc" --><!-- TMPL_VAR NAME="LibraryNameTitle" DEFAULT="Koha Online" --> › ILS-DI +<!-- TMPL_INCLUDE name="doc-head-open.inc" --><!-- TMPL_IF NAME="LibraryNameTitle" --><!-- TMPL_VAR NAME="LibraryNameTitle" --><!-- TMPL_ELSE -->Koha Online<!-- /TMPL_IF --> Catalog › ILS-DI <!-- TMPL_INCLUDE NAME="doc-head-close.inc" --> </head> <body> diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-ISBDdetail.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/opac-ISBDdetail.tmpl index 039e2ea..e90b0b2 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-ISBDdetail.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-ISBDdetail.tmpl @@ -37,7 +37,7 @@ <span class="view"><a id="MARCview" href="/cgi-bin/koha/opac-MARCdetail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->">MARC View</a></span> <!-- /TMPL_IF --> <span class="view"><span id="ISBDview">ISBD View</span></span> </div> - <div id="isbdcontents"><!-- TMPL_VAR name="ISBD" --></div> + <div id="isbdcontents"><!-- TMPL_VAR name="ISBD" ESCAPE="0" --></div> </div> </div> diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-MARCdetail.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/opac-MARCdetail.tmpl index 319d0d7..26119ca 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-MARCdetail.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-MARCdetail.tmpl @@ -148,7 +148,7 @@ </tr> <!-- TMPL_LOOP name="item_loop" --> <tr> - <!-- TMPL_VAR name="item_value" --> + <!-- TMPL_VAR name="item_value" ESCAPE="0" --> </tr> <!-- /TMPL_LOOP --> </table><!-- TMPL_ELSE --> diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-account.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/opac-account.tmpl index 0b7f220..81888ee 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-account.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-account.tmpl @@ -37,7 +37,7 @@ <!-- TMPL_IF NAME="odd" --><tr class="highlight"><!-- TMPL_ELSE --><tr><!-- /TMPL_IF --> <td><!-- TMPL_VAR NAME="date" --></td> <td><!-- TMPL_VAR NAME="description" --> - <!-- TMPL_IF NAME="title" --><!-- TMPL_VAR NAME="title" escape="html" --><!-- /TMPL_IF --></td> + <!-- TMPL_IF NAME="title" --><!-- TMPL_VAR NAME="title" --><!-- /TMPL_IF --></td> <!-- TMPL_IF NAME="amountcredit" --><td class="credit"><!-- TMPL_ELSE --><td class="debit"><!-- /TMPL_IF --><!-- TMPL_VAR NAME="amount" --></td> <!-- TMPL_IF NAME="amountoutstandingcredit" --><td class="credit"><!-- TMPL_ELSE --><td class="debit"><!-- /TMPL_IF --><!-- TMPL_VAR NAME="amountoutstanding" --></td> </tr> diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-addbybiblionumber.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/opac-addbybiblionumber.tmpl index f85d914..d57d9c0 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-addbybiblionumber.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-addbybiblionumber.tmpl @@ -17,7 +17,7 @@ <!-- /TMPL_IF --> <ul> <!-- TMPL_LOOP NAME="biblios"--> - <li> <span class="title"><!-- TMPL_VAR NAME="title" ESCAPE="html"--></span> + <li> <span class="title"><!-- TMPL_VAR NAME="title"--></span> <!-- TMPL_IF NAME="author"--><span class="author"> <!-- TMPL_VAR NAME="author"--> </span><!-- /TMPL_IF --> </li> <!-- /TMPL_LOOP --> @@ -25,7 +25,7 @@ <!-- TMPL_IF NAME="CGIvirtualshelves"--> <form name="f1" action="/cgi-bin/koha/opac-addbybiblionumber.pl" method="post"> <fieldset class="rows"><legend>Select a List</legend> - <ol><li> <label for="shelfnumber">Add to list:</label> <!-- TMPL_VAR NAME="CGIvirtualshelves" --></li></ol> + <ol><li> <label for="shelfnumber">Add to list:</label> <!-- TMPL_VAR NAME="CGIvirtualshelves" ESCAPE="0" --></li></ol> <!-- TMPL_LOOP NAME="biblios" --> <input type="hidden" name="biblionumber" value="<!-- TMPL_VAR NAME="biblionumber" -->" /><!-- /TMPL_LOOP --> <input type="hidden" name="modifyshelfcontents" value="1" /></fieldset> <fieldset class="action"><input type="submit" value="Save" class="submit" /> <a class="close cancel" href="#">Cancel</a></fieldset> diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-basket.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/opac-basket.tmpl index e314342..0d46c1e 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-basket.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-basket.tmpl @@ -161,14 +161,14 @@ function tagAdded() { <!-- TMPL_LOOP NAME="BIBLIO_RESULTS" --> <h3> <!-- TMPL_IF NAME="print_basket" --> - <!-- TMPL_VAR NAME="title" escape="html" --> - <!-- TMPL_IF name="subtitle" --> <!-- TMPL_LOOP NAME="subtitle" --><!-- TMPL_VAR NAME="subfield" escape="html" --><!-- /TMPL_LOOP --><!-- /TMPL_IF --> - <!-- TMPL_IF name="author" --> <!-- TMPL_VAR NAME="author" escape="html" --><!-- /TMPL_IF --> + <!-- TMPL_VAR NAME="title" --> + <!-- TMPL_IF name="subtitle" --> <!-- TMPL_LOOP NAME="subtitle" --><!-- TMPL_VAR NAME="subfield" --><!-- /TMPL_LOOP --><!-- /TMPL_IF --> + <!-- TMPL_IF name="author" --> <!-- TMPL_VAR NAME="author" --><!-- /TMPL_IF --> <!-- TMPL_ELSE --> <input type="checkbox" value="<!-- TMPL_VAR NAME="biblionumber" -->" name="bib<!-- TMPL_VAR NAME="biblionumber" -->" id="bib<!-- TMPL_VAR NAME="biblionumber" -->" onclick="selRecord(value,checked)" /> - <!-- TMPL_VAR NAME="title" escape="html" --> - <!-- TMPL_IF name="subtitle" --> <!-- TMPL_LOOP NAME="subtitle" --><!-- TMPL_VAR NAME="subfield" escape="html" --><!-- /TMPL_LOOP --><!-- /TMPL_IF --> - <!-- TMPL_IF name="author" --> <!-- TMPL_VAR NAME="author" escape="html"--><!-- /TMPL_IF --> + <!-- TMPL_VAR NAME="title" --> + <!-- TMPL_IF name="subtitle" --> <!-- TMPL_LOOP NAME="subtitle" --><!-- TMPL_VAR NAME="subfield" --><!-- /TMPL_LOOP --><!-- /TMPL_IF --> + <!-- TMPL_IF name="author" --> <!-- TMPL_VAR NAME="author"--><!-- /TMPL_IF --> <!-- /TMPL_IF --> </h3> <!-- COinS / OpenURL --> @@ -352,7 +352,7 @@ function tagAdded() { </td> <!-- /TMPL_UNLESS --> <td> <a href="#" onclick="openBiblio('<!-- TMPL_VAR name="dest" -->',<!-- TMPL_VAR name="biblionumber" -->)"> - <!-- TMPL_VAR NAME="title" escape="html" --><!-- TMPL_IF name="subtitle" --> <!-- TMPL_LOOP NAME="subtitle" --><!-- TMPL_VAR NAME="subfield" escape="html" --><!-- /TMPL_LOOP --><!-- /TMPL_IF --> + <!-- TMPL_VAR NAME="title" --><!-- TMPL_IF name="subtitle" --> <!-- TMPL_LOOP NAME="subtitle" --><!-- TMPL_VAR NAME="subfield" --><!-- /TMPL_LOOP --><!-- /TMPL_IF --> </a> <!-- COinS / OpenURL --> <span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.au=<!-- TMPL_VAR NAME="author" -->&rft.btitle=<!-- TMPL_VAR NAME="title" ESCAPE="url" -->&rft.date=<!-- TMPL_VAR NAME="publicationyear" -->&rft.tpages=<!-- TMPL_VAR NAME="size" -->&rft.isbn=<!-- TMPL_VAR NAME="isbn" ESCAPE="url" -->&rft.aucorp=&rft.place=<!-- TMPL_VAR NAME="place" -->&rft.pub=<!-- TMPL_VAR NAME="publisher" ESCAPE="url" -->&rft.edition=<!-- TMPL_VAR NAME="edition" -->&rft.series=<!-- TMPL_VAR NAME="series" -->&rft.genre="></span> diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-browser.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/opac-browser.tmpl index 66f2a66..048f514 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-browser.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-browser.tmpl @@ -1,4 +1,4 @@ -<!-- TMPL_INCLUDE NAME="doc-head-open.inc" --><!-- TMPL_IF NAME="LibraryNameTitle" --><!-- TMPL_VAR NAME="LibraryNameTitle" --><!-- TMPL_ELSE -->Koha Online<!-- /TMPL_IF --> Catalog › ISBD +<!-- TMPL_INCLUDE NAME="doc-head-open.inc" --><!-- TMPL_IF NAME="LibraryNameTitle" --><!-- TMPL_VAR NAME="LibraryNameTitle" --><!-- TMPL_ELSE -->Koha Online<!-- /TMPL_IF --> Catalog › Browse by Hierarchy <!-- TMPL_INCLUDE NAME="doc-head-close.inc" --> </head> <body id="opac-browser"> @@ -18,7 +18,7 @@ <li style="list-style-type: none;"><ul> <!-- TMPL_LOOP name="HIERARCHY_LOOP" --> <li> - <a href="opac-browser.pl?level=<!-- TMPL_VAR name="level"-->&filter=<!-- TMPL_VAR name="classification" ESCAPE="uri" -->"><!-- TMPL_VAR name="description" ESCAPE="html" --></a> + <a href="opac-browser.pl?level=<!-- TMPL_VAR name="level"-->&filter=<!-- TMPL_VAR name="classification" ESCAPE="uri" -->"><!-- TMPL_VAR name="description" --></a> </li> <li style="list-style-type: none;"><ul> <!-- /TMPL_LOOP --> @@ -27,9 +27,9 @@ <td width="33%"> <p> <!-- TMPL_IF name="endnode" --> - <a href="opac-search.pl?q=Dewey-classification:<!-- TMPL_VAR name="classification" ESCAPE="uri" -->"><!-- TMPL_VAR name="description" ESCAPE="html" --></a> + <a href="opac-search.pl?q=Dewey-classification:<!-- TMPL_VAR name="classification" ESCAPE="uri" -->"><!-- TMPL_VAR name="description" --></a> <!-- TMPL_ELSE --> - <a href="opac-browser.pl?level=<!-- TMPL_VAR name="level"-->&filter=<!-- TMPL_VAR name="classification" ESCAPE="uri" -->"><!-- TMPL_VAR name="description" ESCAPE="html" --></a> + <a href="opac-browser.pl?level=<!-- TMPL_VAR name="level"-->&filter=<!-- TMPL_VAR name="classification" ESCAPE="uri" -->"><!-- TMPL_VAR name="description" --></a> <!-- /TMPL_IF --></p> <p style="font-size:0.75em"><i>(<!-- TMPL_VAR name="number"--> biblios)</i></p> </td> @@ -41,7 +41,7 @@ <!-- /TMPL_LOOP --> </ul></li></ul> <!-- TMPL_ELSE --> - <div class="warning">The browser table is empty. this feature is not fully set-up. See the <a href="http://wiki.koha.org/doku.php?id=opacbrowser">Koha Wiki</a> for more information on what it does and how to configure it.</div> + <div class="dialog message">The browser table is empty. this feature is not fully set-up. See the <a href="http://wiki.koha.org/doku.php?id=opacbrowser">Koha Wiki</a> for more information on what it does and how to configure it.</div> <!-- /TMPL_IF --> </div></div> </div> diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-detail.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/opac-detail.tmpl index b1fdf84..118c5c4 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-detail.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-detail.tmpl @@ -1,4 +1,4 @@ -<!-- TMPL_INCLUDE NAME="doc-head-open.inc" --><!-- TMPL_IF NAME="LibraryNameTitle" --><!-- TMPL_VAR NAME="LibraryNameTitle" --><!-- TMPL_ELSE -->Koha Online<!-- /TMPL_IF --> Catalog › Details for: <!-- TMPL_VAR NAME="title" escape="html" --><!-- TMPL_LOOP NAME="subtitle" -->, <!-- TMPL_VAR NAME="subfield" --><!-- /TMPL_LOOP --> +<!-- TMPL_INCLUDE NAME="doc-head-open.inc" --><!-- TMPL_IF NAME="LibraryNameTitle" --><!-- TMPL_VAR NAME="LibraryNameTitle" --><!-- TMPL_ELSE -->Koha Online<!-- /TMPL_IF --> Catalog › Details for: <!-- TMPL_VAR NAME="title" --><!-- TMPL_LOOP NAME="subtitle" -->, <!-- TMPL_VAR NAME="subfield" --><!-- /TMPL_LOOP --> <!-- TMPL_INCLUDE NAME="doc-head-close.inc" --> <script type="text/javascript" src="<!-- TMPL_VAR name="themelang" -->/lib/jquery/plugins/jquery.tablesorter.min.js"></script> <script type="text/JavaScript" language="JavaScript"> @@ -80,7 +80,7 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <!-- TMPL_ELSE --><span class="no-image">No cover image available</span><!-- /TMPL_IF --><!-- /TMPL_IF --><!-- /TMPL_IF --> <!-- TMPL_IF NAME="GoogleJackets" --><div style="block" title="<!-- TMPL_VAR NAME="biblionumber" ESCAPE="URL" -->" class="<!-- TMPL_VAR NAME="normalized_isbn" -->" id="gbs-thumbnail-preview"></div><!-- /TMPL_IF --> - <!-- TMPL_IF NAME="BakerTaylorEnabled" --><!-- TMPL_IF NAME="normalized_isbn" --><!-- TMPL_IF NAME="OPACURLOpenInNewWindow" --><a href="https://<!-- TMPL_VAR NAME="BakerTaylorBookstoreURL" ESCAPE="HTML" --><!-- TMPL_VAR NAME="normalized_isbn" -->" target="_blank"><img alt="See Baker & Taylor" src="<!-- TMPL_VAR NAME="BakerTaylorImageURL" ESCAPE="HTML" --><!-- TMPL_VAR NAME="normalized_isbn" -->" /></a><!-- TMPL_ELSE --><a href="https://<!-- TMPL_VAR NAME="BakerTaylorBookstoreURL" ESCAPE="HTML" --><!-- TMPL_VAR NAME="normalized_isbn" -->"><img alt="See Baker & Taylor" src="<!-- TMPL_VAR NAME="BakerTaylorImageURL" ESCAPE="HTML" --><!-- TMPL_VAR NAME="normalized_isbn" -->" /></a><!-- /TMPL_IF --><!-- /TMPL_IF --><!-- /TMPL_IF --> + <!-- TMPL_IF NAME="BakerTaylorEnabled" --><!-- TMPL_IF NAME="normalized_isbn" --><!-- TMPL_IF NAME="OPACURLOpenInNewWindow" --><a href="https://<!-- TMPL_VAR NAME="BakerTaylorBookstoreURL" --><!-- TMPL_VAR NAME="normalized_isbn" -->" target="_blank"><img alt="See Baker & Taylor" src="<!-- TMPL_VAR NAME="BakerTaylorImageURL" --><!-- TMPL_VAR NAME="normalized_isbn" -->" /></a><!-- TMPL_ELSE --><a href="https://<!-- TMPL_VAR NAME="BakerTaylorBookstoreURL" --><!-- TMPL_VAR NAME="normalized_isbn" -->"><img alt="See Baker & Taylor" src="<!-- TMPL_VAR NAME="BakerTaylorImageURL" --><!-- TMPL_VAR NAME="normalized_isbn" -->" /></a><!-- /TMPL_IF --><!-- /TMPL_IF --><!-- /TMPL_IF --> </div> <abbr class="unapi-id" title="koha:biblionumber:<!-- TMPL_VAR NAME="biblionumber" -->"><!-- unAPI --></abbr> @@ -90,10 +90,10 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <!-- /TMPL_IF --> <!-- TMPL_IF NAME="OPACXSLTDetailsDisplay" --> - <!-- TMPL_VAR NAME="XSLTBloc" --> + <!-- TMPL_VAR NAME="XSLTBloc" ESCAPE="0" --> <!-- TMPL_ELSE --> - <h1><!-- TMPL_VAR NAME="title" escape="html" --><!-- TMPL_IF NAME="subtitle" --> <span class="subtitle"><!-- TMPL_LOOP NAME="subtitle" --><!-- TMPL_VAR NAME="subfield" --> <!-- /TMPL_LOOP --></span><!-- /TMPL_IF --></h1> - <!-- TMPL_IF NAME="author" --><h5 class="author">by <a href="/cgi-bin/koha/opac-search.pl?q=au:<!-- TMPL_VAR NAME="author" ESCAPE="URL" -->"><!-- TMPL_VAR NAME="author" ESCAPE="HTML" --></a></h5><!-- /TMPL_IF --> + <h1><!-- TMPL_VAR NAME="title" --><!-- TMPL_IF NAME="subtitle" --> <span class="subtitle"><!-- TMPL_LOOP NAME="subtitle" --><!-- TMPL_VAR NAME="subfield" --> <!-- /TMPL_LOOP --></span><!-- /TMPL_IF --></h1> + <!-- TMPL_IF NAME="author" --><h5 class="author">by <a href="/cgi-bin/koha/opac-search.pl?q=au:<!-- TMPL_VAR NAME="author" ESCAPE="URL" -->"><!-- TMPL_VAR NAME="author" --></a></h5><!-- /TMPL_IF --> <div id="views"><span class="view"><span id="Normalview">Normal View</span></span> <span class="view"><a id="MARCview" href="/cgi-bin/koha/opac-MARCdetail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->">MARC View</a></span> <!-- TMPL_IF NAME="ISBD" --><span class="view"><a id="ISBDview" href="/cgi-bin/koha/opac-ISBDdetail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->">ISBD View</a></span><!-- /TMPL_IF --> </div> @@ -133,7 +133,7 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <!-- TMPL_IF name="publishercode" --> <span class="results_summary"><span class="label">Published by :</span> <a href="/cgi-bin/koha/opac-search.pl?q=pb:<!-- TMPL_VAR NAME="publishercode" ESCAPE="URL" --> "> - <!-- TMPL_VAR NAME="publishercode" ESCAPE="HTML" --> + <!-- TMPL_VAR NAME="publishercode" --> </a> <!-- TMPL_IF name="place" -->(<!-- TMPL_VAR NAME="place"-->)<!--/TMPL_IF--> <!-- TMPL_IF NAME="publicationyear" -->, <!-- TMPL_VAR NAME="publicationyear" --><!-- /TMPL_IF --> </span> <!-- /TMPL_IF --> @@ -228,7 +228,7 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <!-- TMPL_IF NAME="GetShelves" --> <span class="results_summary"><span class="label">List(s) this item appears in: </span> <!-- TMPL_LOOP NAME="GetShelves" --> - <a href="/cgi-bin/koha/opac-shelves.pl?viewshelf=<!-- TMPL_VAR NAME="shelfnumber" -->&sortfield=title"><!-- TMPL_VAR NAME="shelfname" --></a> + <a href="/cgi-bin/koha/opac-shelves.pl?viewshelf=<!-- TMPL_VAR NAME="shelfnumber" -->&sortfield=title"><!-- TMPL_VAR NAME="shelfname" --></a> <!-- TMPL_IF NAME="__LAST__" --><!-- TMPL_ELSE -->|<!-- /TMPL_IF --> <!-- /TMPL_LOOP --> </span> @@ -239,7 +239,7 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <!-- TMPL_IF NAME="TagLoop" --> <span class="label">Tags from this library:</span> <ul><!-- TMPL_LOOP NAME="TagLoop" --> - <li><a href="/cgi-bin/koha/opac-search.pl?tag=<!-- TMPL_VAR NAME="term" ESCAPE="URL" -->&q=<!-- TMPL_VAR NAME="term" ESCAPE="URL" -->"><!-- TMPL_VAR NAME="term" ESCAPE="HTML" --></a> <span class="weight">(<!-- TMPL_VAR NAME="weight_total" -->)</span></li> + <li><a href="/cgi-bin/koha/opac-search.pl?tag=<!-- TMPL_VAR NAME="term" ESCAPE="URL" -->&q=<!-- TMPL_VAR NAME="term" ESCAPE="URL" -->"><!-- TMPL_VAR NAME="term" --></a> <span class="weight">(<!-- TMPL_VAR NAME="weight_total" -->)</span></li> <!-- /TMPL_LOOP --> </ul><!-- TMPL_ELSE --><span class="label">Tags from this library:</span><div>No tags from this library for this title.</div> <!-- /TMPL_IF --> @@ -302,7 +302,7 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <!-- TMPL_IF NAME="BakerTaylorContentURL" --> <span class="results_summary"> - <span class="label">Enhanced Content:</span><!-- TMPL_IF NAME="OPACURLOpenInNewWindow" --><a href="<!-- TMPL_VAR NAME="BakerTaylorContentURL" ESCAPE="HTML" -->" target="_blank">Content Cafe</a><!-- TMPL_ELSE --><a href="<!-- TMPL_VAR NAME="BakerTaylorContentURL" ESCAPE="HTML" -->">Content Cafe</a><!-- /TMPL_IF --> + <span class="label">Enhanced Content:</span><!-- TMPL_IF NAME="OPACURLOpenInNewWindow" --><a href="<!-- TMPL_VAR NAME="BakerTaylorContentURL" -->" target="_blank">Content Cafe</a><!-- TMPL_ELSE --><a href="<!-- TMPL_VAR NAME="BakerTaylorContentURL" -->">Content Cafe</a><!-- /TMPL_IF --> </span> <!-- /TMPL_IF --> </div> @@ -433,7 +433,7 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <!-- TMPL_ELSE --><span class="no-image">No cover image available</span><!-- /TMPL_IF --><!-- /TMPL_IF --><!-- /TMPL_IF --> <!-- TMPL_IF NAME="GoogleJackets" --><!-- TMPL_IF NAME="browser_normalized_isbn" --><div style="block" title="<!-- TMPL_VAR NAME="biblionumber" ESCAPE="URL" -->" class="<!-- TMPL_VAR name="browser_normalized_isbn" -->" id="gbs-thumbnail-preview<!--TMPL_VAR NAME="__counter__"-->"></div><!-- TMPL_ELSE --><span class="no-image">No cover image available</span><!-- /TMPL_IF --><!-- /TMPL_IF --> <!-- TMPL_IF NAME="BakerTaylorEnabled" --><!-- TMPL_IF NAME="browser_normalized_isbn" --> - <img alt="See Baker & Taylor" src="<!-- TMPL_VAR NAME="BakerTaylorImageURL" ESCAPE="HTML" --><!-- TMPL_VAR NAME="browser_normalized_isbn" -->" /><!-- TMPL_ELSE --><span class="no-image">No cover image available</span><!-- /TMPL_IF --><!-- /TMPL_IF --> + <img alt="See Baker & Taylor" src="<!-- TMPL_VAR NAME="BakerTaylorImageURL" --><!-- TMPL_VAR NAME="browser_normalized_isbn" -->" /><!-- TMPL_ELSE --><span class="no-image">No cover image available</span><!-- /TMPL_IF --><!-- /TMPL_IF --> </a></td> <!-- /TMPL_LOOP --> @@ -452,7 +452,7 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <!-- TMPL_IF NAME="GoogleJackets" --><!-- TMPL_IF NAME="browser_normalized_isbn" --><div style="block" title="<!-- TMPL_VAR NAME="biblionumber" ESCAPE="URL" -->" class="<!-- TMPL_VAR name="browser_normalized_isbn" -->" id="gbs-thumbnail-preview<!--TMPL_VAR NAME="__counter__"-->"></div><!-- TMPL_ELSE --><span class="no-image">No cover image available</span><!-- /TMPL_IF --><!-- /TMPL_IF --> <!-- TMPL_IF NAME="BakerTaylorEnabled" --><!-- TMPL_IF NAME="browser_normalized_isbn" --> - <img alt="See Baker & Taylor" src="<!-- TMPL_VAR NAME="BakerTaylorImageURL" ESCAPE="HTML" --><!-- TMPL_VAR NAME="browser_normalized_isbn" -->" /><!-- TMPL_ELSE --><span class="no-image">No cover image available</span><!-- /TMPL_IF --><!-- /TMPL_IF --> + <img alt="See Baker & Taylor" src="<!-- TMPL_VAR NAME="BakerTaylorImageURL" --><!-- TMPL_VAR NAME="browser_normalized_isbn" -->" /><!-- TMPL_ELSE --><span class="no-image">No cover image available</span><!-- /TMPL_IF --><!-- /TMPL_IF --> </a></td> <!-- /TMPL_LOOP --> @@ -461,11 +461,11 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <tr> <!-- TMPL_LOOP NAME="PREVIOUS_SHELF_BROWSE" --> -<td class="top"><!-- TMPL_VAR NAME="itemcallnumber" --><a href="/cgi-bin/koha/opac-detail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->&shelfbrowse_itemnumber=<!-- TMPL_VAR NAME="itemnumber" -->#shelfbrowser"><!-- TMPL_VAR NAME="title" escape="html" --></a></td> +<td class="top"><!-- TMPL_VAR NAME="itemcallnumber" --><a href="/cgi-bin/koha/opac-detail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->&shelfbrowse_itemnumber=<!-- TMPL_VAR NAME="itemnumber" -->#shelfbrowser"><!-- TMPL_VAR NAME="title" --></a></td> <!-- /TMPL_LOOP --> <!-- TMPL_LOOP NAME="NEXT_SHELF_BROWSE" --> - <td class="top"><!-- TMPL_VAR NAME="itemcallnumber" --><a href="/cgi-bin/koha/opac-detail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->&shelfbrowse_itemnumber=<!-- TMPL_VAR NAME="itemnumber" -->#shelfbrowser"><!-- TMPL_VAR NAME="title" escape="html" --></a></td> + <td class="top"><!-- TMPL_VAR NAME="itemcallnumber" --><a href="/cgi-bin/koha/opac-detail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->&shelfbrowse_itemnumber=<!-- TMPL_VAR NAME="itemnumber" -->#shelfbrowser"><!-- TMPL_VAR NAME="title" --></a></td> <!-- /TMPL_LOOP --> </tr> </table> @@ -483,7 +483,7 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <!-- TMPL_LOOP NAME="AMAZON_EDITORIAL_REVIEWS" --> <!-- TMPL_IF NAME="Content" --> <h4>From <!-- TMPL_VAR NAME="Source" -->:</h4> - <div><!-- TMPL_VAR NAME="Content" --></div> + <div><!-- TMPL_VAR NAME="Content" ESCAPE="0" --></div> <!-- /TMPL_IF --> <!-- /TMPL_LOOP --> <!-- /TMPL_IF--> @@ -492,7 +492,7 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <!-- TMPL_IF NAME="SyndeticsSummary" --> <!-- TMPL_IF NAME="SYNDETICS_SUMMARY" --> <h4>Enhanced Descriptions from Syndetics:</h4> - <p><!-- TMPL_VAR NAME="SYNDETICS_SUMMARY" --></p> + <p><!-- TMPL_VAR NAME="SYNDETICS_SUMMARY" ESCAPE="0" --></p> <!-- /TMPL_IF --> <!-- /TMPL_IF --> <!-- /TMPL_IF --> @@ -530,7 +530,7 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <div id="excerpt"> <div class="content_set"> <h3>Excerpt provided by Syndetics</h3> -<!-- TMPL_VAR NAME="SYNDETICS_EXCERPT" --> +<!-- TMPL_VAR NAME="SYNDETICS_EXCERPT" ESCAPE="0" --> </div> </div> <!-- /TMPL_IF --><!-- /TMPL_IF --> @@ -545,7 +545,7 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <!-- TMPL_LOOP NAME="reviews" --> <!-- TMPL_IF NAME="content" --> - <!-- TMPL_VAR NAME="content" --> + <!-- TMPL_VAR NAME="content" ESCAPE="0" --> <!-- /TMPL_IF --> <!-- /TMPL_LOOP --> @@ -561,7 +561,7 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <h3>Author Notes provided by Syndetics</h3> <!-- TMPL_LOOP NAME="SYNDETICS_ANOTES" --> <!-- TMPL_IF NAME="content" --> - <!-- TMPL_VAR NAME="content" --> + <!-- TMPL_VAR NAME="content" ESCAPE="0" --> <!-- /TMPL_IF --> <!-- /TMPL_LOOP --> </div> @@ -716,8 +716,8 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <!-- TMPL_ELSE --><span class="no-image">No cover image available</span><!-- /TMPL_IF --><!-- /TMPL_IF --><!-- /TMPL_IF --> </td> -<td><!-- TMPL_VAR NAME="description" --></td><td><a href="/cgi-bin/koha/opac-detail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->"><!-- TMPL_VAR NAME="title" escape="html" --></a><!-- TMPL_IF NAME="author" --> by <!-- TMPL_VAR NAME="author" ESCAPE="HTML" --><!-- /TMPL_IF --><!-- TMPL_IF NAME="copyrightdate" --> ©<!-- TMPL_VAR NAME="copyrightdate" --><!-- /TMPL_IF --><!-- TMPL_IF name="publishercode" --> - <p><!-- TMPL_VAR NAME="publishercode" ESCAPE="HTML" --> +<td><!-- TMPL_VAR NAME="description" --></td><td><a href="/cgi-bin/koha/opac-detail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->"><!-- TMPL_VAR NAME="title" --></a><!-- TMPL_IF NAME="author" --> by <!-- TMPL_VAR NAME="author" --><!-- /TMPL_IF --><!-- TMPL_IF NAME="copyrightdate" --> ©<!-- TMPL_VAR NAME="copyrightdate" --><!-- /TMPL_IF --><!-- TMPL_IF name="publishercode" --> + <p><!-- TMPL_VAR NAME="publishercode" --> <!-- TMPL_IF name="place" -->(<!-- TMPL_VAR NAME="place"-->)<!--/TMPL_IF--> <!-- TMPL_IF NAME="publicationyear" -->, <!-- TMPL_VAR NAME="publicationyear" --><!-- /TMPL_IF --> <!-- TMPL_IF NAME="pages" --><!-- TMPL_VAR NAME="pages" --> <!-- TMPL_VAR NAME="illus" --> <!-- TMPL_VAR NAME="size" --></p><!-- /TMPL_IF --> <!-- /TMPL_IF --></td> @@ -744,7 +744,7 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <img border="0" src="https://secure.syndetics.com/index.aspx?isbn=<!-- TMPL_VAR NAME="browser_normalized_isbn" -->/SC.GIF&client=<!-- TMPL_VAR NAME="SyndeticsClientCode" --><!-- TMPL_IF NAME="browser_normalized_upc" -->&upc=<!-- TMPL_VAR NAME="browser_normalized_upc" --><!-- /TMPL_IF --><!-- TMPL_IF NAME="browser_normalized_oclc" -->&oclc=<!-- TMPL_VAR NAME="browser_normalized_oclc" --><!-- /TMPL_IF -->&type=xw10" alt="" /> <!-- TMPL_ELSE --><img border="0" src="http://www.syndetics.com/index.aspx?isbn=<!-- TMPL_VAR NAME="browser_normalized_isbn" -->/SC.GIF&client=<!-- TMPL_VAR NAME="SyndeticsClientCode" --><!-- TMPL_IF NAME="browser_normalized_upc" -->&upc=<!-- TMPL_VAR NAME="browser_normalized_upc" --><!-- /TMPL_IF --><!-- TMPL_IF NAME="browser_normalized_oclc" -->&oclc=<!-- TMPL_VAR NAME="browser_normalized_oclc" --><!-- /TMPL_IF -->&type=xw10" alt="" /><!-- /TMPL_IF --> <!-- TMPL_ELSE --><span class="no-image">No cover image available</span><!-- /TMPL_IF --><!-- /TMPL_IF --><!-- /TMPL_IF --> -<a href="/cgi-bin/koha/opac-detail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->"><!-- TMPL_VAR NAME="title" ESCAPE="HTML" --></a> </td> +<a href="/cgi-bin/koha/opac-detail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->"><!-- TMPL_VAR NAME="title" --></a> </td> <!-- /TMPL_LOOP --> <!-- /TMPL_LOOP --> </tr></table> @@ -760,9 +760,9 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <!-- TMPL_LOOP NAME="AMAZON_CUSTOMER_REVIEWS" --> <div class="content_set"> - <div class="clearfix" style="margin: .5em 0;"><h4 style="float: left;"><!-- TMPL_VAR NAME="Summary" ESCAPE="HTML" --></h4> <span class="starMT" style="float: left;"><span class="starFull" style="float: left; width:<!-- TMPL_VAR EXPR="Rating * 10" -->px"></span></span> </div> <!-- TMPL_VAR NAME="Date" --> + <div class="clearfix" style="margin: .5em 0;"><h4 style="float: left;"><!-- TMPL_VAR NAME="Summary" --></h4> <span class="starMT" style="float: left;"><span class="starFull" style="float: left; width:<!-- TMPL_VAR EXPR="Rating * 10" -->px"></span></span> </div> <!-- TMPL_VAR NAME="Date" --> <!-- TMPL_IF NAME="Content" --> - <p style="margin-left: .2em;"><!-- TMPL_VAR NAME="Content" ESCAPE="HTML" --></p> + <p style="margin-left: .2em;"><!-- TMPL_VAR NAME="Content" ESCAPE="0" --></p> <!-- /TMPL_IF --> </div> <!-- /TMPL_LOOP --> @@ -814,7 +814,7 @@ YAHOO.util.Event.onContentReady("furtherm", function () { <h4>Search for this title in:</h4> <ul class="first-of-type"> -<!-- TMPL_VAR NAME="OPACSearchForTitleIn" --> +<!-- TMPL_VAR NAME="OPACSearchForTitleIn" ESCAPE="0" --> </ul> </div> diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-main.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/opac-main.tmpl index d1c5b3a..5d9eae4 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-main.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-main.tmpl @@ -35,7 +35,7 @@ </div> <!-- /TMPL_IF --> - <!-- TMPL_IF NAME="OpacMainUserBlock" --><div id="opacmainuserblock" class="container"><!-- TMPL_VAR NAME="OpacMainUserBlock" --></div><!-- /TMPL_IF --> + <!-- TMPL_IF NAME="OpacMainUserBlock" --><div id="opacmainuserblock" class="container"><!-- TMPL_VAR NAME="OpacMainUserBlock" ESCAPE="0" --></div><!-- /TMPL_IF --> </div> diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-mymessages.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/opac-mymessages.tmpl index 78d496d..6e102e9 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-mymessages.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-mymessages.tmpl @@ -13,11 +13,11 @@ <webMaster></webMaster> <!-- TMPL_LOOP NAME="message_list" --> <item> - <title><!-- TMPL_VAR ESCAPE=HTML NAME="subject" --> - - - - + <!-- TMPL_VAR NAME="subject" --> + + + + diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-opensearch.tmpl b/koha-tmpl/opac-tmpl/prog/en/modules/opac-opensearch.tmpl index 05b4221..a416aef 100644 --- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-opensearch.tmpl +++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-opensearch.tmpl @@ -1,10 +1,10 @@ - Search - Search the - koha opac - + Search + Search the + koha opac + /cgi-bin/koha/opac-search.pl?q={searchTerms}&pw={startPage?}&format=rss2"/> @@ -16,10 +16,10 @@ xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"> - <![CDATA[<!-- TMPL_VAR NAME="LibraryName" ESCAPE="html" --> Search <!-- TMPL_IF NAME="query_desc" -->for '<!-- TMPL_VAR NAME="query_desc" ESCAPE="html" -->'<!-- /TMPL_IF --><!-- TMPL_IF NAME="limit_desc" --> with limit(s): '<!-- TMPL_VAR NAME="limit_desc" ESCAPE="html" -->'<!-- /TMPL_IF -->]]> - /cgi-bin/koha/opac-search.pl?&format=rss2 - /cgi-bin/koha/opac-search.pl?&format=rss2" /> - for '' with limit(s): '' at ]]> + <![CDATA[<!-- TMPL_VAR NAME="LibraryName" --> Search <!-- TMPL_IF NAME="query_desc" -->for '<!-- TMPL_VAR NAME="query_desc" -->'<!-- /TMPL_IF --><!-- TMPL_IF NAME="limit_desc" --> with limit(s): '<!-- TMPL_VAR NAME="limit_desc" -->'<!-- /TMPL_IF -->]]> + /cgi-bin/koha/opac-search.pl?&format=rss2 + /cgi-bin/koha/opac-search.pl?&format=rss2" /> + for '' with limit(s): '' at ]]> @@ -28,11 +28,11 @@ 20
-- 1.7.0.4 From colin.campbell at ptfs-europe.com Thu Jul 15 17:59:17 2010 From: colin.campbell at ptfs-europe.com (Colin Campbell) Date: Thu, 15 Jul 2010 16:59:17 +0100 Subject: [Koha-patches] [PATCH] Bug 5011 install debian graphicsmagick not imagemagick Message-ID: <1279209557-4281-1-git-send-email-colin.campbell@ptfs-europe.com> Scripts in install-misc were installing Image Magick not Graphics::Magick the actual Koha dependency --- install_misc/apt-get-debian-lenny.sh | 2 +- install_misc/debian.packages | 2 +- install_misc/install_koha_on_fresh_debian | 2 +- install_misc/ubuntu.packages | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/install_misc/apt-get-debian-lenny.sh b/install_misc/apt-get-debian-lenny.sh index eb3aa70..48c53e4 100755 --- a/install_misc/apt-get-debian-lenny.sh +++ b/install_misc/apt-get-debian-lenny.sh @@ -52,7 +52,7 @@ libidzebra-2.0-mod-grs-regx \ libidzebra-2.0-mod-grs-xml \ libidzebra-2.0-mod-text \ libidzebra-2.0-modules \ -libimage-magick-perl \ +libgraphics-magick-perl \ libjson-perl \ libjson-xs-perl \ liblingua-ispell-perl \ diff --git a/install_misc/debian.packages b/install_misc/debian.packages index 11dfeb4..5ff782f 100644 --- a/install_misc/debian.packages +++ b/install_misc/debian.packages @@ -38,7 +38,7 @@ libidzebra-2.0-mod-grs-regx install libidzebra-2.0-mod-grs-xml install libidzebra-2.0-mod-text install libidzebra-2.0-modules install -libimage-magick-perl install +libgraphics-magick-perl install libjson-perl install liblingua-ispell-perl install liblingua-stem-perl install diff --git a/install_misc/install_koha_on_fresh_debian b/install_misc/install_koha_on_fresh_debian index 3595bf5..f20127b 100644 --- a/install_misc/install_koha_on_fresh_debian +++ b/install_misc/install_koha_on_fresh_debian @@ -467,7 +467,7 @@ libxslt1-dev libyaml-syck-perl libhtml-template-pro-perl libdbd-mysql-perl/testing -libimage-magick-perl +libgraphics-magick-perl liblist-moreutils-perl libtext-iconv-perl/testing libalgorithm-checkdigits-perl diff --git a/install_misc/ubuntu.packages b/install_misc/ubuntu.packages index 818358a..56430bf 100644 --- a/install_misc/ubuntu.packages +++ b/install_misc/ubuntu.packages @@ -14,7 +14,7 @@ libdate-calc-perl install libdate-manip-perl install libdate-ical-perl install libdatetime-format-mail-perl install -libimage-magick-perl install +libgraphics-magick-perl install libmail-sendmail-perl install liblingua-ispell-perl install liblingua-stem-perl install -- 1.7.1.1 From oleonard at myacpl.org Thu Jul 15 18:32:12 2010 From: oleonard at myacpl.org (Owen Leonard) Date: Thu, 15 Jul 2010 12:32:12 -0400 Subject: [Koha-patches] [PATCH] Fix for Bug 5013 "New patron" menu button broken on patron select screen Message-ID: <1279211532-23632-1-git-send-email-oleonard@myacpl.org> --- .../prog/en/includes/patron-toolbar.inc | 2 +- members/members-home.pl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/patron-toolbar.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/patron-toolbar.inc index d7c87c4..c508af0 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/patron-toolbar.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/patron-toolbar.inc @@ -23,7 +23,7 @@ var newmenu = [ - + { text: "", url: "/cgi-bin/koha/members/memberentry.pl?op=add&categorycode=" }, diff --git a/members/members-home.pl b/members/members-home.pl index e497f4a..04fc557 100755 --- a/members/members-home.pl +++ b/members/members-home.pl @@ -54,7 +54,7 @@ if($quicksearch){ my @categories=C4::Category->all; $template->param( branchloop=>(defined $branch?GetBranchesLoop($branch):GetBranchesLoop()), - categoryloop=>\@categories, + categories=>\@categories, ); $template->param( "AddPatronLists_".C4::Context->preference("AddPatronLists")=> "1", -- 1.7.0.4 From ebin.joseph at osslabs.biz Thu Jul 15 13:18:03 2010 From: ebin.joseph at osslabs.biz (Ebin Joseph) Date: Thu, 15 Jul 2010 16:48:03 +0530 Subject: [Koha-patches] [PATCH] Fixes Bug 4851 Batch delete shouldn't show delete button if no items were found In-Reply-To: References: Message-ID: <1279192683-4598-1-git-send-email-ebin.joseph@osslabs.biz> --- .../prog/en/modules/tools/batchMod-del.tmpl | 19 ++++++++++++++++--- 1 files changed, 16 insertions(+), 3 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-del.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-del.tmpl index c6f82b9..0d35e62 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-del.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-del.tmpl @@ -124,19 +124,32 @@
" /> -

This will delete all thethe selected items.

+ +

There are no matching items

+ +

This will delete all thethe selected items.

+
Job progress:
0%
- + + + + + + + + + Cancel
- + +

item(s) deleted.

-- 1.6.4.2 From gmcharlt at gmail.com Fri Jul 16 05:25:14 2010 From: gmcharlt at gmail.com (Galen Charlton) Date: Thu, 15 Jul 2010 23:25:14 -0400 Subject: [Koha-patches] [PATCH] Begin fix for Bug 3652 - XSS vulnerabilities In-Reply-To: <1279117547-20186-1-git-send-email-oleonard@myacpl.org> References: <1279117547-20186-1-git-send-email-oleonard@myacpl.org> Message-ID: Hi, On Wed, Jul 14, 2010 at 10:25 AM, Owen Leonard wrote: > - Setting default_escape => "HTML" in C4::Output > > In the OPAC: > - Removing redundant "ESCAPE='HTML'" from the templates > - Adding "ESCAPE='0'" where necessary: > ?-- Variables like OpacNav which output HTML or JS > ?-- Instances of CGI::scrolling_list variables Pushed to topic branch new/bug3652 - testing encouraged. Regards, Galen -- Galen Charlton gmcharlt at gmail.com From colin.campbell at ptfs-europe.com Fri Jul 16 13:55:19 2010 From: colin.campbell at ptfs-europe.com (Colin Campbell) Date: Fri, 16 Jul 2010 12:55:19 +0100 Subject: [Koha-patches] [PATCH] Bug 5021 Formatting of undefined serials dates Message-ID: <1279281319-4318-1-git-send-email-colin.campbell@ptfs-europe.com> Routine was checking undefinedness but such dates were normalized on retrieval to 0000-00-00 Also planned/received date should also be checked --- C4/Serials.pm | 17 ++++++++++------- 1 files changed, 10 insertions(+), 7 deletions(-) diff --git a/C4/Serials.pm b/C4/Serials.pm index 35cc5be..032246c 100644 --- a/C4/Serials.pm +++ b/C4/Serials.pm @@ -405,14 +405,17 @@ sub PrepareSerialsData { my $first; my $previousnote = ""; - foreach my $subs (@$lines) { - $subs->{'publisheddate'} = ( - $subs->{'publisheddate'} - ? format_date( $subs->{'publisheddate'} ) - : "XXX" - ); + foreach my $subs (@{$lines}) { + for my $datefield ( qw(publisheddate planneddate) ) { + # handle both undef and undef returned as 0000-00-00 + if (!defined $subs->{$datefield} or $subs->{$datefield}=~m/^00/) { + $subs->{$datefield} = 'XXX'; + } + else { + $subs->{$datefield} = format_date( $subs->{$datefield} ); + } + } $subs->{'branchname'} = GetBranchName( $subs->{'branchcode'} ); - $subs->{'planneddate'} = format_date( $subs->{'planneddate'} ); $subs->{ "status" . $subs->{'status'} } = 1; $subs->{"checked"} = $subs->{'status'} =~ /1|3|4|7/; -- 1.7.1.1 From colin.campbell at ptfs-europe.com Fri Jul 16 15:24:46 2010 From: colin.campbell at ptfs-europe.com (Colin Campbell) Date: Fri, 16 Jul 2010 14:24:46 +0100 Subject: [Koha-patches] [PATCH] Bug 5026 Undefined dates formatted poorly in serials-edit Message-ID: <1279286686-4799-1-git-send-email-colin.campbell@ptfs-europe.com> Makes behaviour consistent with serials-collectiona --- serials/serials-edit.pl | 10 ++++++++-- 1 files changed, 8 insertions(+), 2 deletions(-) diff --git a/serials/serials-edit.pl b/serials/serials-edit.pl index dee624c..8ce3dcb 100755 --- a/serials/serials-edit.pl +++ b/serials/serials-edit.pl @@ -133,8 +133,14 @@ foreach my $tmpserialid (@serialids) { && !$processedserialid{$tmpserialid} ) { my $data = GetSerialInformation($tmpserialid); - $data->{publisheddate} = format_date( $data->{publisheddate} ); - $data->{planneddate} = format_date( $data->{planneddate} ); + for my $date ( qw(publisheddate planneddate)) { + if ($data->{$date} ) { + $data->{$date} = format_date( $data->{$date} ); + } + else { + $data->{$date} = 'XXX'; + } + } $data->{arriveddate}=$today->output('syspref'); $data->{'editdisable'} = ( ( -- 1.7.1.1 From oleonard at myacpl.org Fri Jul 16 16:44:38 2010 From: oleonard at myacpl.org (Owen Leonard) Date: Fri, 16 Jul 2010 10:44:38 -0400 Subject: [Koha-patches] [PATCH] Correcting URL typo in link back to labels home page Message-ID: <1279291478-26014-1-git-send-email-oleonard@myacpl.org> --- .../prog/en/modules/labels/label-edit-batch.tmpl | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/labels/label-edit-batch.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/labels/label-edit-batch.tmpl index d132619..df1f556 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/labels/label-edit-batch.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/labels/label-edit-batch.tmpl @@ -9,7 +9,7 @@ -- 1.7.0.4 From colin.campbell at ptfs-europe.com Fri Jul 16 17:40:33 2010 From: colin.campbell at ptfs-europe.com (Colin Campbell) Date: Fri, 16 Jul 2010 16:40:33 +0100 Subject: [Koha-patches] [PATCH] Bug 5026 Undefined dates formatted poorly in serials-edit Message-ID: <1279294833-5417-1-git-send-email-colin.campbell@ptfs-europe.com> Don't display junk in empty fields Don't generate errors Merged some changes to make variable names moremeaningful in loops ( within loops) --- C4/Serials.pm | 13 +++++- serials/serials-edit.pl | 100 ++++++++++++++++++++++++++--------------------- 2 files changed, 65 insertions(+), 48 deletions(-) diff --git a/C4/Serials.pm b/C4/Serials.pm index 032246c..ddf20f7 100644 --- a/C4/Serials.pm +++ b/C4/Serials.pm @@ -712,9 +712,16 @@ sub GetSerials2 { my @serials; while ( my $line = $sth->fetchrow_hashref ) { - $line->{ "status" . $line->{status} } = 1; # fills a "statusX" value, used for template status select list - $line->{"planneddate"} = format_date( $line->{"planneddate"} ); - $line->{"publisheddate"} = format_date( $line->{"publisheddate"} ); + $line->{ "status" . $line->{status} } = 1; # fills a "statusX" value, used for template status select list + # Format dates for display + for my $datefield ( qw( planneddate publisheddate ) ) { + if ($line->{$datefield} =~m/^00/) { + $line->{$datefield} = q{}; + } + else { + $line->{"planneddate"} = format_date( $line->{$datefield} ); + } + } push @serials, $line; } return @serials; diff --git a/serials/serials-edit.pl b/serials/serials-edit.pl index dee624c..698ac8e 100755 --- a/serials/serials-edit.pl +++ b/serials/serials-edit.pl @@ -90,33 +90,29 @@ my @errseq; # If user comes from subscription details unless (@serialids) { - foreach my $subscriptionid (@subscriptionids) { - my $serstatus = $query->param('serstatus'); - if ($serstatus) { + my $serstatus = $query->param('serstatus'); + if ($serstatus) { + foreach my $subscriptionid (@subscriptionids) { my @tmpser = GetSerials2( $subscriptionid, $serstatus ); - foreach (@tmpser) { - push @serialids, $_->{'serialid'}; - } + @serialids = map { $_->{serialid} } @tmpser; } } } -unless ( scalar(@serialids) ) { +unless ( @serialids ) { my $string = - "serials-collection.pl?subscriptionid=" . join( ",", @subscriptionids ); - $string =~ s/,$//; - + 'serials-collection.pl?subscriptionid=' . join ',', @subscriptionids; print $query->redirect($string); } my ( $template, $loggedinuser, $cookie ) = get_template_and_user( { - template_name => "serials/serials-edit.tmpl", - query => $query, - type => "intranet", - authnotrequired => 0, - flagsrequired => {serials => 'receive_serials'}, - debug => 1, + template_name => 'serials/serials-edit.tmpl', + query => $query, + type => 'intranet', + authnotrequired => 0, + flagsrequired => { serials => 1 }, + debug => 1, } ); @@ -124,30 +120,37 @@ my @serialdatalist; my %processedserialid; my $today = C4::Dates->new(); -foreach my $tmpserialid (@serialids) { +foreach my $serialid (@serialids) { #filtering serialid for duplication #NEW serial should appear only once and are created afterwards - if ( defined($tmpserialid) - && $tmpserialid =~ /^[0-9]+$/ - && !$processedserialid{$tmpserialid} ) + if ( $serialid + && $serialid =~ /^[0-9]+$/ + && !$processedserialid{$serialid} ) { - my $data = GetSerialInformation($tmpserialid); - $data->{publisheddate} = format_date( $data->{publisheddate} ); - $data->{planneddate} = format_date( $data->{planneddate} ); - $data->{arriveddate}=$today->output('syspref'); - $data->{'editdisable'} = ( + my $serinfo = GetSerialInformation($serialid); #TODO duplicates work done by GetSerials2 above + for my $d ( qw( publisheddate planneddate )){ + if ( $serinfo->{$d} =~m/^00/ ) { + $serinfo->{$d} = q{}; + } + else { + $serinfo->{$d} = format_date( $serinfo->{$d} ); + } + } + $serinfo->{arriveddate}=$today->output('syspref'); + + $serinfo->{'editdisable'} = ( ( - HasSubscriptionExpired( $data->{subscriptionid} ) - && $data->{'status1'} + HasSubscriptionExpired( $serinfo->{subscriptionid} ) + && $serinfo->{'status1'} ) - || $data->{'cannotedit'} + || $serinfo->{'cannotedit'} ); - push @serialdatalist, $data; - $processedserialid{$tmpserialid} = 1; + push @serialdatalist, $serinfo; + $processedserialid{$serialid} = 1; } } -my $bibdata = GetBiblioData( $serialdatalist[0]->{'biblionumber'} ); +my $biblio = GetBiblioData( $serialdatalist[0]->{'biblionumber'} ); my @newserialloop; my @subscriptionloop; @@ -157,8 +160,7 @@ my %processedsubscriptionid; foreach my $subscriptionid (@subscriptionids) { #Do not process subscriptionid twice if it was already processed. - if ( defined($subscriptionid) - && !$processedsubscriptionid{$subscriptionid} ) + if ( $subscriptionid && !$processedsubscriptionid{$subscriptionid} ) { my $cell; if ( $serialdatalist[0]->{'serialsadditems'} ) { @@ -170,8 +172,8 @@ foreach my $subscriptionid (@subscriptionids) { $cell->{serialsadditems} = 1; } $cell->{'subscriptionid'} = $subscriptionid; - $cell->{'itemid'} = "NNEW"; - $cell->{'serialid'} = "NEW"; + $cell->{'itemid'} = 'NNEW'; + $cell->{'serialid'} = 'NEW'; $cell->{'issuesatonce'} = 1; push @newserialloop, $cell; push @subscriptionloop, @@ -190,8 +192,16 @@ if ( $op and $op eq 'serialchangestatus' ) { my $newserial; for ( my $i = 0 ; $i <= $#serialids ; $i++ ) { + my ($plan_date, $pub_date); + + if (defined $planneddates[$i] && $planneddates[$i] ne 'XXX') { + $plan_date = format_date_in_iso( $planneddates[$i] ); + } + if (defined $publisheddates[$i] && $publisheddates[$i] ne 'XXX') { + $pub_date = format_date_in_iso( $publisheddates[$i] ); + } - if ( $serialids[$i] && $serialids[$i] eq "NEW" ) { + if ( $serialids[$i] && $serialids[$i] eq 'NEW' ) { if ( $serialseqs[$i] ) { #IF newserial was provided a name Then we have to create a newSerial @@ -201,8 +211,8 @@ if ( $op and $op eq 'serialchangestatus' ) { $subscriptionids[$i], $serialdatalist[0]->{'biblionumber'}, $status[$i], - format_date_in_iso( $planneddates[$i] ), - format_date_in_iso( $publisheddates[$i] ), + $plan_date, + $pub_date, $notes[$i] ); } @@ -211,8 +221,8 @@ if ( $op and $op eq 'serialchangestatus' ) { ModSerialStatus( $serialids[$i], $serialseqs[$i], - format_date_in_iso( $planneddates[$i] ), - format_date_in_iso( $publisheddates[$i] ), + $plan_date, + $pub_date, $status[$i], $notes[$i] ); @@ -291,14 +301,14 @@ if ( $op and $op eq 'serialchangestatus' ) { $serialdatalist[0]->{'biblionumber'} ) ); - if ( C4::Context->preference("autoBarcode") eq + if ( C4::Context->preference('autoBarcode') eq 'incremental' ) { if ( !$bib_record->field($barcodetagfield) ->subfield($barcodetagsubfield) ) { my $sth_barcode = $dbh->prepare( - "select max(abs(barcode)) from items"); + 'select max(abs(barcode)) from items'); $sth_barcode->execute; my ($newbarcode) = $sth_barcode->fetchrow; @@ -356,8 +366,8 @@ if ( $op and $op eq 'serialchangestatus' ) { } } else { - my $redirect = "serials-collection.pl?"; - $redirect .= join( '&', map { "subscriptionid=" . $_ } sort @subscriptionids );# ID The sort necessary + my $redirect = 'serials-collection.pl?'; + $redirect .= join( '&', map { 'subscriptionid=' . $_ } @subscriptionids ); print $query->redirect($redirect); } } @@ -365,7 +375,7 @@ my $default_bib_view = get_default_view(); $template->param( serialsadditems => $serialdatalist[0]->{'serialsadditems'}, - bibliotitle => $bibdata->{'title'}, + bibliotitle => $biblio->{'title'}, biblionumber => $serialdatalist[0]->{'biblionumber'}, serialslist => \@serialdatalist, default_bib_view => $default_bib_view, -- 1.7.1.1 From oleonard at myacpl.org Fri Jul 16 17:43:09 2010 From: oleonard at myacpl.org (Owen Leonard) Date: Fri, 16 Jul 2010 11:43:09 -0400 Subject: [Koha-patches] [PATCH] Follow-up fix for Bug 5013, "New patron" menu button broken Message-ID: <1279294989-26546-1-git-send-email-oleonard@myacpl.org> Menu was working on members-home.pl but not on members.pl --- members/member.pl | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/members/member.pl b/members/member.pl index 3b1b98e..dde29eb 100755 --- a/members/member.pl +++ b/members/member.pl @@ -157,7 +157,7 @@ $template->param( ); $template->param( branchloop=>$branches, - categoryloop=>\@categories, + categories=>\@categories, ); -- 1.7.0.4 From oleonard at myacpl.org Fri Jul 16 21:33:51 2010 From: oleonard at myacpl.org (Owen Leonard) Date: Fri, 16 Jul 2010 15:33:51 -0400 Subject: [Koha-patches] [PATCH] Further fixes for Bug 3652 - XSS vulnerabilities Message-ID: <1279308831-29687-1-git-send-email-oleonard@myacpl.org> Applying "ESCAPE='0'" where necessary in the staff client --- .../prog/en/includes/auth-finder-search.inc | 6 ++-- .../prog/en/includes/doc-head-close.inc | 2 +- .../prog/en/includes/doc-head-open.inc | 6 ++++- .../intranet-tmpl/prog/en/includes/header.inc | 2 +- .../prog/en/includes/intranet-bottom.inc | 10 ++++---- .../prog/en/modules/acqui/neworderbiblio.tmpl | 4 +- .../prog/en/modules/acqui/neworderempty.tmpl | 12 +++++----- .../prog/en/modules/acqui/newordersuggestion.tmpl | 2 +- .../prog/en/modules/acqui/z3950_search.tmpl | 4 +- .../prog/en/modules/admin/aqbudgetperiods.tmpl | 2 +- .../prog/en/modules/admin/aqbudgets.tmpl | 4 +- .../prog/en/modules/admin/aqplan.tmpl | 8 +++--- .../en/modules/admin/auth_subfields_structure.tmpl | 18 ++++++++-------- .../prog/en/modules/admin/authorised_values.tmpl | 2 +- .../prog/en/modules/admin/classsources.tmpl | 5 +-- .../en/modules/admin/item_circulation_alerts.tmpl | 4 +- .../prog/en/modules/admin/koha2marclinks.tmpl | 22 ++++++++++---------- .../en/modules/admin/marc_subfields_structure.tmpl | 16 +++++++------- .../prog/en/modules/admin/matching-rules.tmpl | 2 +- .../prog/en/modules/admin/patron-attr-types.tmpl | 2 +- koha-tmpl/intranet-tmpl/prog/en/modules/auth.tmpl | 2 +- .../prog/en/modules/authorities/authorities.tmpl | 2 +- .../modules/authorities/searchresultlist-auth.tmpl | 2 +- .../en/modules/authorities/searchresultlist.tmpl | 2 +- .../prog/en/modules/basket/basket.tmpl | 6 ++-- .../prog/en/modules/basket/sendbasket.tmpl | 2 +- .../prog/en/modules/basket/sendbasketform.tmpl | 2 +- .../prog/en/modules/catalogue/ISBDdetail.tmpl | 2 +- .../prog/en/modules/catalogue/MARCdetail.tmpl | 4 +- .../prog/en/modules/catalogue/detail.tmpl | 20 +++++++++--------- .../en/modules/catalogue/labeledMARCdetail.tmpl | 2 +- .../prog/en/modules/cataloguing/addbiblio.tmpl | 2 +- .../prog/en/modules/cataloguing/additem.tmpl | 4 +- .../prog/en/modules/circ/circulation.tmpl | 10 ++++---- .../prog/en/modules/intranet-main.tmpl | 4 +- .../prog/en/modules/labels/label-edit-batch.tmpl | 2 +- .../prog/en/modules/labels/label-home.tmpl | 4 +- .../prog/en/modules/labels/spinelabel-print.tmpl | 2 +- .../prog/en/modules/members/borrowers_details.tmpl | 4 ++- .../prog/en/modules/members/member.tmpl | 2 +- .../prog/en/modules/members/memberentrygen.tmpl | 6 ++-- .../en/modules/reports/acquisitions_stats.tmpl | 14 ++++++------ .../prog/en/modules/reports/bor_issues_top.tmpl | 2 +- .../prog/en/modules/reports/borrowers_out.tmpl | 4 +- .../prog/en/modules/reports/borrowers_stats.tmpl | 4 +- .../prog/en/modules/reports/cat_issues_top.tmpl | 4 +- .../prog/en/modules/reports/catalogue_out.tmpl | 4 +- .../prog/en/modules/reports/catalogue_stats.tmpl | 4 +- .../prog/en/modules/reports/issues_avg_stats.tmpl | 16 +++++++------- .../reports/issues_by_borrower_category.tmpl | 2 +- .../prog/en/modules/reports/issues_stats.tmpl | 4 +- .../prog/en/modules/reports/itemtypes.tmpl | 2 +- .../prog/en/modules/reports/serials_stats.tmpl | 4 +- .../prog/en/modules/reserve/request.tmpl | 4 +- 54 files changed, 146 insertions(+), 141 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/auth-finder-search.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/auth-finder-search.inc index 8a725f0..aa7c69b 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/auth-finder-search.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/auth-finder-search.inc @@ -18,7 +18,7 @@ - " /> + " />
  • @@ -30,7 +30,7 @@ - " /> + " />
  • @@ -42,7 +42,7 @@ - " /> + " />
  • diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/doc-head-close.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/doc-head-close.inc index 1970440..f17bc29 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/doc-head-close.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/doc-head-close.inc @@ -75,7 +75,7 @@ diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/doc-head-open.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/doc-head-open.inc index df2dc01..d7b838d 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/doc-head-open.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/doc-head-open.inc @@ -1,4 +1,8 @@ -" xml:lang="" dir="" xmlns="http://www.w3.org/1999/xhtml"> + +" xml:lang="" dir="" xmlns="http://www.w3.org/1999/xhtml"> + +" xml:lang="" xmlns="http://www.w3.org/1999/xhtml"> + diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/header.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/header.inc index 95ce8dd..3e3ab36 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/header.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/header.inc @@ -9,7 +9,7 @@
  • Cart
  • - +
  • More
    diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/intranet-bottom.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/intranet-bottom.inc index 78334b2..71eff05 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/intranet-bottom.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/intranet-bottom.inc @@ -7,14 +7,14 @@ -
  • ()
    +
  • ()
      -
    • ()
    • +
    • ()
    • -
    • "> ()
    • +
    • "> ()
    • @@ -24,9 +24,9 @@ -
    • +
    • -
    • ">
    • +
    • ">
    • diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderbiblio.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderbiblio.tmpl index e8ef0eb..f6e5d10 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderbiblio.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderbiblio.tmpl @@ -20,7 +20,7 @@ results found - +

      No results found

      @@ -48,7 +48,7 @@ -

      +

      by ,

      - diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderempty.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderempty.tmpl index 603d517..70697de 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderempty.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderempty.tmpl @@ -140,10 +140,10 @@ ff.submit();

      1. Title - " /> + " /> - " /> + " />
      2. @@ -206,8 +206,8 @@ ff.submit();
        1. "> - - + + " /> " /> @@ -340,7 +340,7 @@ ff.submit(); - + " /> @@ -350,7 +350,7 @@ ff.submit(); - + " /> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/newordersuggestion.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/newordersuggestion.tmpl index e18b89f..bb1d0ad 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/newordersuggestion.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/newordersuggestion.tmpl @@ -27,7 +27,7 @@ -

          -

          +

          -

          copy. year: volume: diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/z3950_search.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/z3950_search.tmpl index f9f96ae..74cfc1e 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/z3950_search.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/z3950_search.tmpl @@ -47,7 +47,7 @@ $.tablesorter.addParser({

          -
          1. " />
          2. +
            1. " />
            2. " />
          @@ -115,7 +115,7 @@ $.tablesorter.addParser({ - + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/aqbudgetperiods.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/aqbudgetperiods.tmpl index 204574b..15355c5 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/aqbudgetperiods.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/aqbudgetperiods.tmpl @@ -292,7 +292,7 @@ -
          +
          diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/aqbudgets.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/aqbudgets.tmpl index ce4d7da..620b86d 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/aqbudgets.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/aqbudgets.tmpl @@ -241,7 +241,7 @@

          Currency =

          -
          +
          @@ -315,7 +315,7 @@
        2. - +
        3. diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/aqplan.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/aqplan.tmpl index 627b3f7..2a46c4e 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/aqplan.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/aqplan.tmpl @@ -104,7 +104,7 @@ YAHOO.util.Event.onAvailable("popmenu", function () { - + @@ -176,7 +176,7 @@ YAHOO.util.Event.onAvailable("popmenu", function () { - +   @@ -279,8 +279,8 @@ YAHOO.util.Event.onAvailable("popmenu", function () {
          1. -     + +     " /> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/auth_subfields_structure.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/auth_subfields_structure.tmpl index 1b431ec..64d2a29 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/auth_subfields_structure.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/auth_subfields_structure.tmpl @@ -75,34 +75,34 @@ function displayMoreConstraint(numlayer){
              -
            1.  
            2. +
            3.  
            4. " />
            5. -
            6.  
            7. -
            8.  
            9. +
            10.  
            11. +
            12.  
            13. " type="text" name="liblibrarian" value="" size="40" maxlength="80" />
            14. " name="libopac" value="" size="40" maxlength="80" />
            15. -
            16. (ignore means that the subfield does not display in the record editor)
            17. +
            18. (ignore means that the subfield does not display in the record editor)
            19. Display
                -
              1. +
              2. ">Intranet: --> ">Editor: (see online help) -->
            20. -
            21. (if checked, it means that the subfield is a URL and can be clicked)
            22. +
            23. (if checked, it means that the subfield is a URL and can be clicked)
            24. Help input
                -
              1. -
              2. -
              3. +
              4. +
              5. +
            25. diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_values.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_values.tmpl index 367930a..f0db677 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_values.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_values.tmpl @@ -174,7 +174,7 @@
    -
    +

    An authorized value attached to patrons, that can be used for stats purposes

    diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/classsources.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/classsources.tmpl index 2460c92..2c4953e 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/classsources.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/classsources.tmpl @@ -274,9 +274,8 @@ $(document).ready(function() { -
    +
    -

    Classification Filing Rules

    Added filing rule @@ -310,7 +309,7 @@ $(document).ready(function() { -
    +
    diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/item_circulation_alerts.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/item_circulation_alerts.tmpl index 48dd3ad..d2ffbaf 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/item_circulation_alerts.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/item_circulation_alerts.tmpl @@ -157,7 +157,7 @@ $(function(){   - + @@ -181,7 +181,7 @@ $(function(){   - + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/koha2marclinks.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/koha2marclinks.tmpl index b8f664a..c1e3103 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/koha2marclinks.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/koha2marclinks.tmpl @@ -33,7 +33,7 @@ " /> " /> - +
  • @@ -42,7 +42,7 @@ " /> - + " />
  • @@ -53,7 +53,7 @@ " /> " /> - +
  • @@ -63,7 +63,7 @@ " /> " /> - +
  • @@ -73,7 +73,7 @@ " /> " /> - +
  • @@ -83,7 +83,7 @@ " /> " /> - +
  • @@ -93,7 +93,7 @@ " /> " /> - +
  • @@ -103,7 +103,7 @@ " /> " /> - +
  • @@ -113,7 +113,7 @@ " /> " /> - +
  • @@ -123,7 +123,7 @@ " /> " /> - +
  • @@ -144,7 +144,7 @@

    Koha to MARC Mapping

    " method="post"> -

    +

    diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/marc_subfields_structure.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/marc_subfields_structure.tmpl index 2ea58de..9fdf064 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/marc_subfields_structure.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/marc_subfields_structure.tmpl @@ -98,9 +98,9 @@
  • " type="text" name="liblibrarian" value="" size="40" maxlength="80" />
  • " name="libopac" value="" size="40" maxlength="80" />
  • -
  • -
  • -
  • (ignore means that the subfield does not display in the record editor)
  • +
  • +
  • +
  • (ignore means that the subfield does not display in the record editor)
  • @@ -111,17 +111,17 @@
    1. " value="" />
    2. " name="hidden" value="" size="2" /> (see online help)
    3. -
    4. (if checked, it means that the subfield is a URL and can be clicked)
    5. +
    6. (if checked, it means that the subfield is a URL and can be clicked)
    7. " name="link" value="" size="10" maxlength="80" /> (e.g., Title or Local-Number) Warning: This value should not change after data has been added to your catalog
    8. -
    9. +
    Other Options: (choose one)
      -
    1. -
    2. -
    3. +
    4. +
    5. +

    diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/matching-rules.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/matching-rules.tmpl index bfa2ed9..df77592 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/matching-rules.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/matching-rules.tmpl @@ -572,7 +572,7 @@ function CheckRuleForm(f) {

    There are no saved matching rules.

    -
    +
    diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/patron-attr-types.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/patron-attr-types.tmpl index 27c82c5..d899cad 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/patron-attr-types.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/patron-attr-types.tmpl @@ -224,7 +224,7 @@ this feature on.

    There are no saved patron attribute types.

    -
    +
    diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/auth.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/auth.tmpl index fe2cd96..5d8b767 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/auth.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/auth.tmpl @@ -39,7 +39,7 @@
    " method="post" name="loginform" id="loginform"> - " value="" /> + " value="" />

    " size="20" tabindex="1" /> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/authorities.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/authorities.tmpl index cadea08..877de7b 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/authorities.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/authorities.tmpl @@ -705,7 +705,7 @@ function searchauthority() { - + Clone diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist-auth.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist-auth.tmpl index e327451..80c7657 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist-auth.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist-auth.tmpl @@ -93,7 +93,7 @@ function jumpfull(page) - &authtypecode=&=&op=do_search&type=intranet&index=&tagid=&orderby="> + &authtypecode=&=&op=do_search&type=intranet&index=&tagid=&orderby="> >>

    diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist.tmpl index 01667e5..6c7ccf6 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/authorities/searchresultlist.tmpl @@ -79,7 +79,7 @@ function searchauthority() {
    -
    +
    No results found diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/basket/basket.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/basket/basket.tmpl index 9257162..cf293c1 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/basket/basket.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/basket/basket.tmpl @@ -131,12 +131,12 @@ function placeHold () {

    - + " name="bib" id="bib" onclick="selRecord(value,checked)" /> - + @@ -316,7 +316,7 @@ function placeHold () { ',)"> - +

    - diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/basket/sendbasket.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/basket/sendbasket.tmpl index 033c4d2..fdff85e 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/basket/sendbasket.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/basket/sendbasket.tmpl @@ -15,7 +15,7 @@ Reference Manager or ProCite. --------------------------------------------- - + Author(s): ; ; diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/basket/sendbasketform.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/basket/sendbasketform.tmpl index 9caef3c..26c5e7c 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/basket/sendbasketform.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/basket/sendbasketform.tmpl @@ -1,4 +1,4 @@ -Koha Online Catalog › Sending Your Cart +<!-- TMPL_IF NAME="LibraryNameTitle" --><!-- TMPL_VAR NAME="LibraryNameTitle" --><!-- TMPL_ELSE -->Koha Online<!-- /TMPL_IF --> Catalog › Sending Your Cart<title> <!-- TMPL_INCLUDE NAME="doc-head-close.inc" --> </head> <body style="padding: 1em;" id="sendbasket"> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/ISBDdetail.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/ISBDdetail.tmpl index 1516268..1fc87dc 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/ISBDdetail.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/ISBDdetail.tmpl @@ -17,7 +17,7 @@ <!-- TMPL_INCLUDE NAME="cat-toolbar.inc" --> <div id="catalogue_ISBDdetail"> - <!-- TMPL_VAR NAME="ISBD" --> + <!-- TMPL_VAR NAME="ISBD" ESCAPE="0" --> </div> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/MARCdetail.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/MARCdetail.tmpl index b5dd80b..134c485 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/MARCdetail.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/MARCdetail.tmpl @@ -36,7 +36,7 @@ function Changefwk(FwkList) { <!-- /TMPL_UNLESS --> - <p><b>With Framework :<!--TMPL_VAR Name="framework" --></b></p> + <p><b>With Framework :<!--TMPL_VAR Name="framework" ESCAPE="0" --></b></p> <div id="bibliotabs" class="toptabs numbered"> <ul> @@ -386,7 +386,7 @@ function Changefwk(FwkList) { </tr> <!-- TMPL_LOOP NAME="item_loop" --> <tr> - <!-- TMPL_VAR NAME="item_value" --> + <!-- TMPL_VAR NAME="item_value" ESCAPE="0" --> </tr> <!-- /TMPL_LOOP --> </table> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tmpl index 1861028..6dcf229 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tmpl @@ -1,5 +1,5 @@ <!-- TMPL_INCLUDE NAME="doc-head-open.inc" --> -<title>Koha › Catalog › Details for <!-- TMPL_VAR NAME="title" escape="html" --> <!-- TMPL_LOOP NAME="subtitle" --> <!-- TMPL_VAR NAME="subfield" --><!-- /TMPL_LOOP --> +Koha › Catalog › Details for <!-- TMPL_VAR NAME="title" --> <!-- TMPL_LOOP NAME="subtitle" --> <!-- TMPL_VAR NAME="subfield" --><!-- /TMPL_LOOP --> -- 1.7.0.4 From oleonard at myacpl.org Tue Jul 20 16:30:09 2010 From: oleonard at myacpl.org (Owen Leonard) Date: Tue, 20 Jul 2010 10:30:09 -0400 Subject: [Koha-patches] [PATCH] Fixes Bug 4851 Batch delete shouldn't show delete button if no items were found In-Reply-To: <1279192683-4598-1-git-send-email-ebin.joseph@osslabs.biz> References: <1279192683-4598-1-git-send-email-ebin.joseph@osslabs.biz> Message-ID: I found that this patch also hides the delete button if items *are* found. -- Owen -- Web Developer Athens County Public Libraries http://www.myacpl.org From colin.campbell at ptfs-europe.com Tue Jul 20 17:57:15 2010 From: colin.campbell at ptfs-europe.com (Colin Campbell) Date: Tue, 20 Jul 2010 16:57:15 +0100 Subject: [Koha-patches] [PATCH] Bug 5023 Remove unused Serials Modules Message-ID: <1279641435-5851-1-git-send-email-colin.campbell@ptfs-europe.com> Modules possibly added in error Neither is called elsewhere in the system --- C4/Serials/Frequency.pm | 142 ------------------------------------------- C4/Serials/NumberPattern.pm | 129 --------------------------------------- 2 files changed, 0 insertions(+), 271 deletions(-) delete mode 100644 C4/Serials/Frequency.pm delete mode 100644 C4/Serials/NumberPattern.pm diff --git a/C4/Serials/Frequency.pm b/C4/Serials/Frequency.pm deleted file mode 100644 index e4bc341..0000000 --- a/C4/Serials/Frequency.pm +++ /dev/null @@ -1,142 +0,0 @@ -package C4::Frequency; - -# Copyright 2000-2002 Biblibre SARL -# -# This file is part of Koha. -# -# Koha is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or (at your option) any later -# version. -# -# Koha is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with Koha; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - -use strict; -#use warnings; FIXME - Bug 2505 -use C4::Context; -use C4::SQLHelper qw<:all>; -use C4::Debug; - -use vars qw($VERSION @ISA @EXPORT); - -BEGIN { - # set the version for version checking - $VERSION = 3.01; - require Exporter; - @ISA = qw(Exporter); - @EXPORT = qw( - - &GetFrequencies - &GetFrequency - &new - &all - &AddFrequency - &ModFrequency - &DelFrequency - - ); -} - -# ------------------------------------------------------------------- -my %count_issues_a_year=( - day=>365, - week=>52, - month=>12, - quarter=>4, - year=>1 -); - -sub new { - my ($class, $opts) = @_; - bless $opts => $class; -} - - -sub AddFrequency { - my ($class,$frequency) = @_; - return InsertInTable("subscription_frequency",$frequency); -} - -sub GetExpectedissuesayear { - my ($class,$unit,$issuesperunit,$unitperissues) = @_; - return Int($count_issues_a_year{$unit}/$issuesperunit)*$unitperissues; -} - -# ------------------------------------------------------------------- -sub ModFrequency { - my ($class,$frequency) = @_; - return UpdateInTable("subscription_frequency",$frequency); -} - -# ------------------------------------------------------------------- -sub DelFrequency { - my ($class,$frequency) = @_; - return DeleteInTable("subscription_frequency",$frequency); -} - -sub all { - my ($class) = @_; - my $dbh = C4::Context->dbh; - return map { $class->new($_) } @{$dbh->selectall_arrayref( - # The subscription_frequency table is small enough for - # `SELECT *` to be harmless. - "SELECT * FROM subscription_frequency ORDER BY description", - { Slice => {} }, - )}; -} - -=head3 GetFrequency - -=over 4 - -&GetFrequency($freq_id); - -gets frequency where $freq_id is the identifier - -=back - -=cut - -# ------------------------------------------------------------------- -sub GetFrequency { - my ($freq_id) = @_; - return undef unless $freq_id; - my $results= SearchInTable("subscription_frequency",{frequency_id=>$freq_id}, undef, undef,undef, undef, "wide"); - return undef unless ($results); - return $$results[0]; -} - -=head3 GetFrequencies - -=over 4 - -&GetFrequencies($filter, $order_by); - -gets frequencies restricted on filters - -=back - -=cut - -# ------------------------------------------------------------------- -sub GetFrequencies { - my ($filters,$orderby) = @_; - return SearchInTable("subscription_frequency",$filters, $orderby, undef,undef, undef, "wide"); -} - -END { } # module clean-up code here (global destructor) - -1; -__END__ - -=head1 AUTHOR - -Koha Development Team - -=cut diff --git a/C4/Serials/NumberPattern.pm b/C4/Serials/NumberPattern.pm deleted file mode 100644 index 0d46545..0000000 --- a/C4/Serials/NumberPattern.pm +++ /dev/null @@ -1,129 +0,0 @@ -package C4::Numberpattern; - -# Copyright 2000-2002 Biblibre SARL -# -# This file is part of Koha. -# -# Koha is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or (at your option) any later -# version. -# -# Koha is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with Koha; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - -use strict; -#use warnings; FIXME - Bug 2505 -use C4::Context; -use C4::SQLHelper qw<:all>; -use C4::Debug; - -use vars qw($VERSION @ISA @EXPORT); - -BEGIN { - # set the version for version checking - $VERSION = 3.01; - require Exporter; - @ISA = qw(Exporter); - @EXPORT = qw( - - &GetNumberpatterns - &GetNumberpattern - &new - &all - &AddNumberpattern - &ModNumberpattern - &DelNumberpattern - - ); -} - -# ------------------------------------------------------------------- -sub new { - my ($class, $opts) = @_; - bless $opts => $class; -} - - -sub AddNumberpattern { - my ($class,$numberpattern) = @_; - return InsertInTable("subscription_numberpattern",$numberpattern); -} - -# ------------------------------------------------------------------- -sub ModNumberpattern { - my ($class,$numberpattern) = @_; - return UpdateInTable("subscription_numberpattern",$numberpattern); -} - -# ------------------------------------------------------------------- -sub DelNumberpattern { - my ($class,$numberpattern) = @_; - return DeleteInTable("subscription_numberpattern",$numberpattern); -} - -sub all { - my ($class) = @_; - my $dbh = C4::Context->dbh; - return map { $class->new($_) } @{$dbh->selectall_arrayref( - # The subscription_numberpattern table is small enough for - # `SELECT *` to be harmless. - "SELECT * FROM subscription_numberpattern ORDER BY description", - { Slice => {} }, - )}; -} - -=head3 GetNumberpattern - -=over 4 - -&GetNumberpattern($freq_id); - -gets numberpattern where $freq_id is the identifier - -=back - -=cut - -# ------------------------------------------------------------------- -sub GetNumberpattern { - my ($numpattern_id) = @_; - return undef unless $num_patternid; - my $results= SearchInTable("subscription_numberpattern",{numberpattern_id=>$freq_id}, undef, undef,undef, undef, "wide"); - return undef unless ($results); - return $$results[0]; -} - -=head3 GetFrequencies - -=over 4 - -&GetFrequencies($filter, $order_by); - -gets frequencies restricted on filters - -=back - -=cut - -# ------------------------------------------------------------------- -sub GetNumberPatterns { - my ($filters,$orderby) = @_; - return SearchInTable("subscription_numberpattern",$filters, $orderby, undef,undef, undef, "wide"); -} - -END { } # module clean-up code here (global destructor) - -1; -__END__ - -=head1 AUTHOR - -Koha Development Team - -=cut -- 1.7.1.1 From oleonard at myacpl.org Tue Jul 20 18:00:16 2010 From: oleonard at myacpl.org (Owen Leonard) Date: Tue, 20 Jul 2010 12:00:16 -0400 Subject: [Koha-patches] [PATCH] Fix for Bug 4851 - Batch delete shouldn't show delete button if no items were found Message-ID: <1279641616-5283-1-git-send-email-oleonard@myacpl.org> - Adding template flag to indicate valid results (hidden or not) - Clarifying warning messages based on various outcomes --- .../prog/en/modules/tools/batchMod-del.tmpl | 22 ++++++++++++------- tools/batchMod.pl | 2 + 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-del.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-del.tmpl index c6f82b9..441f4c5 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-del.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-del.tmpl @@ -52,7 +52,9 @@ -

    Warning, the following barcodes were not found :

    +
    +

    Warning, the following barcodes were not found:

    Warning: no barcodes were found

    +
    @@ -66,7 +68,7 @@
    -

    The following barcodes were found:

    +

    The following barcodes were found:

    @@ -77,7 +79,7 @@ - +
    @@ -111,17 +113,16 @@ - - + -

    Too many items (): not displaying each one individually.

    +

    Too many items () to display individually.

    " /> - +
    " />

    This will delete all thethe selected items.

    @@ -131,10 +132,15 @@
    Job progress:
    0%
    - + + + Cancel + +

    Return to batch item deletion

    + diff --git a/tools/batchMod.pl b/tools/batchMod.pl index f5138d1..1f4b519 100755 --- a/tools/batchMod.pl +++ b/tools/batchMod.pl @@ -209,6 +209,8 @@ if ($op eq "show"){ } } + # Flag to tell the template there are valid results, hidden or not + if(scalar(@itemnumbers) > 0){ $template->param("itemresults" => 1); } # Only display the items if there are no more than 1000 if (scalar(@itemnumbers) <= 1000) { $items_display_hashref=BuildItemsData(@itemnumbers); -- 1.7.0.4 From oleonard at myacpl.org Tue Jul 20 20:37:07 2010 From: oleonard at myacpl.org (Owen Leonard) Date: Tue, 20 Jul 2010 14:37:07 -0400 Subject: [Koha-patches] [PATCH] Fix for Bug 4996 - Untranslatable strings in budget/fund toolbar Message-ID: <1279651027-11644-1-git-send-email-oleonard@myacpl.org> --- .../prog/en/includes/budgets-admin-toolbar.inc | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/budgets-admin-toolbar.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/budgets-admin-toolbar.inc index c3ec018..e6ccde3 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/budgets-admin-toolbar.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/budgets-admin-toolbar.inc @@ -21,7 +21,7 @@ var budgets_menu = [ { text: _("New budget"), url: "/cgi-bin/koha/admin/aqbudgetperiods.pl?op=add_form" }, - { text: _("New fund for ''"), url: "/cgi-bin/koha/admin/aqbudgets.pl?op=add_form&budget_period_id=" + { text: _("New fund for") + " ''", url: "/cgi-bin/koha/admin/aqbudgets.pl?op=add_form&budget_period_id=" , disabled:true, disabled:true } @@ -32,8 +32,8 @@ var periods_menu = [ - { text: _("Edit budget ''"), url: "/cgi-bin/koha/admin/aqbudgetperiods.pl?op=add_form&budget_period_id=" }, - { text: _("Duplicate budget ''") } + { text: _("Edit budget") + " ''", url: "/cgi-bin/koha/admin/aqbudgetperiods.pl?op=add_form&budget_period_id=" }, + { text: _("Duplicate budget") + " ''" } ] -- 1.7.0.4 From chrisc at catalyst.net.nz Tue Jul 20 21:35:38 2010 From: chrisc at catalyst.net.nz (Chris Cormack) Date: Wed, 21 Jul 2010 07:35:38 +1200 Subject: [Koha-patches] [PATCH] Fix typo in z3950 search in acquisitions Message-ID: <1279654538-20131-1-git-send-email-chrisc@catalyst.net.nz> From: Chris Cormack Signed-off-by: Chris Cormack --- acqui/z3950_search.pl | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/acqui/z3950_search.pl b/acqui/z3950_search.pl index 1238e16..444c893 100755 --- a/acqui/z3950_search.pl +++ b/acqui/z3950_search.pl @@ -97,7 +97,7 @@ foreach my $thisframeworkcode ( keys %$frameworks ) { if ( $row{'value'} eq $frameworkcode){ $row{'active'} = 'true'; } - push @frameworkcodeloop, $row; + push @frameworkcodeloop, \%row; } $template->param( frameworkcode => $frameworkcode, -- 1.7.0.4 From chrisc at catalyst.net.nz Wed Jul 21 04:00:57 2010 From: chrisc at catalyst.net.nz (Chris Cormack) Date: Wed, 21 Jul 2010 14:00:57 +1200 Subject: [Koha-patches] [PATCH] Make the item details link to the item's invoice. Message-ID: <1279677657-18656-1-git-send-email-chrisc@catalyst.net.nz> From: Robin Sheat The 'accession date' field is now a link to the invoice for that item. Signed-off-by: Chris Cormack --- catalogue/moredetail.pl | 3 +++ .../prog/en/modules/catalogue/moredetail.tmpl | 2 +- 2 files changed, 4 insertions(+), 1 deletions(-) diff --git a/catalogue/moredetail.pl b/catalogue/moredetail.pl index d790c41..0ea110f 100755 --- a/catalogue/moredetail.pl +++ b/catalogue/moredetail.pl @@ -96,9 +96,12 @@ foreach my $item (@items){ $item->{'copyvol'} = $item->{'copynumber'}; my $order = GetOrderFromItemnumber( $item->{'itemnumber'} ); + my $basket = GetBasket( $order->{'basketno'} ); + $item->{'supplierid'} = $basket->{'booksellerid'}; $item->{'ordernumber'} = $order->{'ordernumber'}; $item->{'basketno'} = $order->{'basketno'}; $item->{'booksellerinvoicenumber'} = $order->{'booksellerinvoicenumber'}; + $item->{'datereceived'} = $order->{'datereceived'}; if ($item->{notforloantext} or $item->{itemlost} or $item->{damaged} or $item->{wthdrawn}) { $item->{status_advisory} = 1; diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/moredetail.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/moredetail.tmpl index 8577193..c7e01b5 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/moredetail.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/moredetail.tmpl @@ -148,7 +148,7 @@ Accession Date: - "> + &invoice=&datereceived="> -- 1.7.0.4 From chrisc at catalyst.net.nz Wed Jul 21 04:26:53 2010 From: chrisc at catalyst.net.nz (Chris Cormack) Date: Wed, 21 Jul 2010 14:26:53 +1200 Subject: [Koha-patches] [PATCH] bug 5045 - Help works even when the referrer is being stripped Message-ID: <1279679213-25384-1-git-send-email-chrisc@catalyst.net.nz> From: Robin Sheat This fix puts the URL of the source page as a parameter to help.pl, which will override the referrer value, if it's provided. This deals with people sitting behind proxies that strip the referrer information out. Signed-off-by: Chris Cormack --- .../intranet-tmpl/prog/en/includes/header.inc | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/header.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/header.inc index 95ce8dd..95c8109 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/header.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/header.inc @@ -66,6 +66,6 @@ You are not logged in | - [ ? ] + [ ? ] -- 1.7.0.4 From chrisc at catalyst.net.nz Wed Jul 21 04:58:37 2010 From: chrisc at catalyst.net.nz (Chris Cormack) Date: Wed, 21 Jul 2010 14:58:37 +1200 Subject: [Koha-patches] [PATCH] Bug 5046 - fix the zebra authorities configuration Message-ID: <1279681117-870-1-git-send-email-chrisc@catalyst.net.nz> From: Robin Sheat Signed-off-by: Chris Cormack --- debian/templates/zebra-authorities-site.cfg.in | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/debian/templates/zebra-authorities-site.cfg.in b/debian/templates/zebra-authorities-site.cfg.in index 301e5e6..01cd347 100644 --- a/debian/templates/zebra-authorities-site.cfg.in +++ b/debian/templates/zebra-authorities-site.cfg.in @@ -46,8 +46,8 @@ lockDir: /var/lock/koha/__KOHASITE__/authorities perm.anonymous:ar perm.kohauser:rw passwd: /etc/koha/sites/__KOHASITE__/zebra.passwd -register: /var/lib/koha/__KOHASITE__/biblios/register:4G -shadow: /var/lib/koha/__KOHASITE__/biblios/shadow:1G +register: /var/lib/koha/__KOHASITE__/authorities/register:4G +shadow: /var/lib/koha/__KOHASITE__/authorities/shadow:1G # Temp File area for result sets setTmpDir: /var/lib/koha/__KOHASITE__/authorities/tmp -- 1.7.0.4 From nahuel.angelinetti at biblibre.com Wed Jul 21 09:34:48 2010 From: nahuel.angelinetti at biblibre.com (Nahuel ANGELINETTI) Date: Wed, 21 Jul 2010 09:34:48 +0200 Subject: [Koha-patches] [PATCH] [followup](bug #5042) forgotten fix on rss icon Message-ID: <1279697688-5592-1-git-send-email-nahuel.angelinetti@biblibre.com> this fix the rss image link, that was forgotten in previous patch. --- koha-tmpl/opac-tmpl/prog/en/includes/masthead.inc | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/koha-tmpl/opac-tmpl/prog/en/includes/masthead.inc b/koha-tmpl/opac-tmpl/prog/en/includes/masthead.inc index 74c716e..403f0fa 100644 --- a/koha-tmpl/opac-tmpl/prog/en/includes/masthead.inc +++ b/koha-tmpl/opac-tmpl/prog/en/includes/masthead.inc @@ -142,7 +142,7 @@ - + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-edit.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-edit.tmpl index 7793f04..19fb453 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-edit.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-edit.tmpl @@ -102,7 +102,7 @@ -- 1.7.0.4 From paul.poulain at biblibre.com Sat Jul 24 06:17:22 2010 From: paul.poulain at biblibre.com (Paul Poulain) Date: Sat, 24 Jul 2010 06:17:22 +0200 Subject: [Koha-patches] [PATCH] Fix for Bug 2170, Adding 'edititems' user-permission In-Reply-To: <1279911674-29190-1-git-send-email-oleonard@myacpl.org> References: <1279911674-29190-1-git-send-email-oleonard@myacpl.org> Message-ID: <4C4A6952.1000006@biblibre.com> Le 23/07/2010 21:01, Owen Leonard a ?crit : > This patch follows up on the addition of the 'edititems' > permission by adding a check of the new permission to places > in the interface which link to the edit item screen. > > diff --git a/koha-tmpl/intranet-tmpl/prog/en/css/staff-global.css b/koha-tmpl/intranet-tmpl/prog/en/css/staff-global.css > index 13ac2c7..1e1a502 100644 > --- a/koha-tmpl/intranet-tmpl/prog/en/css/staff-global.css > +++ b/koha-tmpl/intranet-tmpl/prog/en/css/staff-global.css > @@ -432,6 +432,9 @@ ul.toolbar { > padding-left : 0; > } > > +ul.toolbar button { > + padding-bottom : 2px; > +} > .yui-menu-button { > > } > @@ -916,7 +919,8 @@ fieldset.rows .inputnote { > background-repeat : no-repeat; > } > > -#placehold a { > +#placehold a, > +#placehold button { > padding-left : 34px; > background-image: url("../../img/toolbar-hold.gif"); > background-position : center left; > mmm... not sure this part of the patch is related to the comment of the patch -- Paul POULAIN http://www.biblibre.com Expert en Logiciels Libres pour l'info-doc Tel : (33) 4 91 81 35 08 From oleonard at myacpl.org Sat Jul 24 18:37:03 2010 From: oleonard at myacpl.org (Owen Leonard) Date: Sat, 24 Jul 2010 12:37:03 -0400 Subject: [Koha-patches] [PATCH] Fix for Bug 2170, Adding 'edititems' user-permission In-Reply-To: <4C4A6952.1000006@biblibre.com> References: <1279911674-29190-1-git-send-email-oleonard@myacpl.org> <4C4A6952.1000006@biblibre.com> Message-ID: > mmm... not sure this part of the patch is related to the comment of the > patch It is, because the addition of the edititem preference required a complete reorganization of the catalog toolbar, necessitating changes in the HTML structure of some of the toolbar buttons. The CSS changes match the markup changes. -- Owen On Sat, Jul 24, 2010 at 12:17 AM, Paul Poulain wrote: > Le 23/07/2010 21:01, Owen Leonard a ?crit : >> This patch follows up on the addition of the 'edititems' >> permission by adding a check of the new permission to places >> in the interface which link to the edit item screen. >> >> diff --git a/koha-tmpl/intranet-tmpl/prog/en/css/staff-global.css b/koha-tmpl/intranet-tmpl/prog/en/css/staff-global.css >> index 13ac2c7..1e1a502 100644 >> --- a/koha-tmpl/intranet-tmpl/prog/en/css/staff-global.css >> +++ b/koha-tmpl/intranet-tmpl/prog/en/css/staff-global.css >> @@ -432,6 +432,9 @@ ul.toolbar { >> ? ? ? padding-left : 0; >> ?} >> >> +ul.toolbar button { >> + ? ? padding-bottom : 2px; >> +} >> ?.yui-menu-button ?{ >> >> ?} >> @@ -916,7 +919,8 @@ fieldset.rows .inputnote { >> ? ? ? background-repeat : no-repeat; >> ?} >> >> -#placehold a { >> +#placehold a, >> +#placehold button { >> ? ? ? padding-left : 34px; >> ? ? ? background-image: url("../../img/toolbar-hold.gif"); >> ? ? ? background-position : center left; >> > mmm... not sure this part of the patch is related to the comment of the > patch From chrisc at catalyst.net.nz Mon Jul 26 00:13:35 2010 From: chrisc at catalyst.net.nz (Chris Cormack) Date: Mon, 26 Jul 2010 10:13:35 +1200 Subject: [Koha-patches] [PATCH] Squashed commit of the following: Message-ID: <1280096015-30914-1-git-send-email-chrisc@catalyst.net.nz> commit d6a7c8f1fdebe4e9693651efbafa53ae582c4830 Author: Chris Cormack Date: Mon Jul 26 10:06:37 2010 +1200 Silencing more warns commit cc0c8262973536c870593bcf9f33dcd8e871f9b5 Author: Chris Cormack Date: Mon Jul 26 10:04:10 2010 +1200 Silencing noisy warns in reserve/request.pl --- reserve/request.pl | 21 +++++++++------------ 1 files changed, 9 insertions(+), 12 deletions(-) diff --git a/reserve/request.pl b/reserve/request.pl index 859a65b..a24d276 100755 --- a/reserve/request.pl +++ b/reserve/request.pl @@ -91,22 +91,20 @@ my $warnings; my $messages; my $date = C4::Dates->today('iso'); -my $action = $input->param('action'); +my $action = $input->param('action') || ''; if ( $action eq 'move' ) { my $where = $input->param('where'); - my $borrowernumber = $input->param('borrowernumber'); - my $biblionumber = $input->param('biblionumber'); - + my $borrowernumber = $input->param('borrowernumber') || ''; + my $biblionumber = $input->param('biblionumber') || ''; AlterPriority( $where, $borrowernumber, $biblionumber ); - } elsif ( $action eq 'cancel' ) { - my $borrowernumber = $input->param('borrowernumber'); - my $biblionumber = $input->param('biblionumber'); + my $borrowernumber = $input->param('borrowernumber') || ''; + my $biblionumber = $input->param('biblionumber') || ''; CancelReserve( $biblionumber, '', $borrowernumber ); } elsif ( $action eq 'setLowestPriority' ) { - my $borrowernumber = $input->param('borrowernumber'); - my $biblionumber = $input->param('biblionumber'); + my $borrowernumber = $input->param('borrowernumber') || ''; + my $biblionumber = $input->param('biblionumber') || ''; ToggleLowestPriority( $borrowernumber, $biblionumber ); } @@ -320,12 +318,11 @@ foreach my $biblionumber (@biblionumbers) { my $num_available = 0; my $num_override = 0; - $biblioitem->{description} = - $itemtypes->{ $biblioitem->{itemtype} }{description}; + $biblioitem->{description} = $itemtypes->{ $biblioitem->{itemtype} }{description} if $biblioitem->{itemtype}; $biblioloopiter{description} = $biblioitem->{description}; $biblioloopiter{itypename} = $biblioitem->{description}; $biblioloopiter{imageurl} = - getitemtypeimagelocation('intranet', $itemtypes->{$biblioitem->{itemtype}}{imageurl}); + getitemtypeimagelocation('intranet', $itemtypes->{$biblioitem->{itemtype}}{imageurl} ) if $biblioitem->{itemtype}; foreach my $itemnumber ( @{ $itemnumbers_of_biblioitem{$biblioitemnumber} } ) { my $item = $iteminfos_of->{$itemnumber}; -- 1.7.0.4 From katrin.fischer at bsz-bw.de Mon Jul 26 13:49:37 2010 From: katrin.fischer at bsz-bw.de (Katrin Fischer) Date: Mon, 26 Jul 2010 13:49:37 +0200 Subject: [Koha-patches] [PATCH] BUG 5058: small layout correction of vendor form Message-ID: <1280144977-9053-1-git-send-email-katrin.fischer@bsz-bw.de> From: Katrin Fischer --- .../prog/en/modules/acqui/supplier.tmpl | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/supplier.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/supplier.tmpl index 83b8631..5528a8d 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/supplier.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/supplier.tmpl @@ -135,8 +135,8 @@ if (f.company.value == "") {
    1. - " /> %
    2. -
    3. "/>%
    4. + " /> % +
    5. "/> %
    -- 1.6.3.3 From katrin.fischer at bsz-bw.de Mon Jul 26 13:45:30 2010 From: katrin.fischer at bsz-bw.de (Katrin Fischer) Date: Mon, 26 Jul 2010 13:45:30 +0200 Subject: [Koha-patches] [PATCH] Bug 5059: Inconsistent use of ordering price and list price in vendor form Message-ID: <1280144730-13719-1-git-send-email-katrin.fischer@bsz-bw.de> From: Katrin Fischer Changes Ordering price to List price and make spelling more consistent. --- .../prog/en/modules/acqui/supplier.tmpl | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/supplier.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/supplier.tmpl index 83b8631..9d1ae18 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/supplier.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/supplier.tmpl @@ -57,7 +57,7 @@ if (f.company.value == "") {
    Contact details -
    1. +
      1. " />
      2. " />
      3. @@ -86,7 +86,7 @@ if (f.company.value == "") {
        -
      1. +
      2. -
      3. +
      4. -
      5. +
      6. @@ -187,8 +187,8 @@ if (f.company.value == "") { Inactive

        -

        List Prices are:

        -

        Invoice Prices are:

        +

        List prices are:

        +

        Invoice prices are:

        Tax Number Registered: YesNo

        List Item Price Includes Tax: -- 1.6.3.3 From f.demians at tamil.fr Mon Jul 26 16:37:03 2010 From: f.demians at tamil.fr (=?iso-8859-1?Q?Fr=E9d=E9ric?= Demians) Date: Mon, 26 Jul 2010 16:37:03 +0200 Subject: [Koha-patches] Request to Pull Message-ID: <20100726143703.GA23826@ns207124.ovh.net> The following changes since commit ec3913e1aabe28bc5dd43c3af401a7e2bf80f677: Bug 3756 Don't display as local AutoSelfCheckID syspref and others (2010-07-26 16:18:37 +0200) are available in the git repository at: git://git.tamil.fr/git/koha origin/new/bug3756_reenable_local_sysprefs From colin.campbell at ptfs-europe.com Mon Jul 26 17:56:04 2010 From: colin.campbell at ptfs-europe.com (Colin Campbell) Date: Mon, 26 Jul 2010 16:56:04 +0100 Subject: [Koha-patches] [PATCH] Bug5063: C4::Bookseller Changes Message-ID: <1280159764-4743-1-git-send-email-colin.campbell@ptfs-europe.com> Merge unfao changes to C4::Bookseller Enable warnings in Bookseller.pm Some cleanups in Bookseller code Do not export everything by default Display vendors more rationally Was displaying by id make it name as the searchstring is for all embedded substrings Have removed "if mysql" logic as we want to deal with this by abstracting the DB interaction and it makes cleaner code until then Sponsered by UN FAO, Rome --- C4/Bookseller.pm | 172 ++++++++++++++++------------------------ acqui/basket.pl | 2 +- acqui/booksellers.pl | 2 +- acqui/lateorders.pl | 4 +- acqui/neworderbiblio.pl | 2 +- acqui/neworderempty.pl | 2 +- acqui/newordersuggestion.pl | 2 +- acqui/orderreceive.pl | 2 +- acqui/parcel.pl | 2 +- acqui/parcels.pl | 2 +- acqui/supplier.pl | 2 +- acqui/updatesupplier.pl | 3 +- serials/acqui-search-result.pl | 2 +- serials/claims.pl | 2 +- t/db_dependent/Acquisition.t | 2 +- t/lib/KohaTest.pm | 2 +- 16 files changed, 84 insertions(+), 121 deletions(-) diff --git a/C4/Bookseller.pm b/C4/Bookseller.pm index 8d60938..8b5c3d0 100644 --- a/C4/Bookseller.pm +++ b/C4/Bookseller.pm @@ -1,6 +1,7 @@ package C4::Bookseller; # Copyright 2000-2002 Katipo Communications +# Copyright 2010 PTFS Europe # # This file is part of Koha. # @@ -18,23 +19,18 @@ package C4::Bookseller; # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. use strict; -#use warnings; FIXME - Bug 2505 - -use vars qw($VERSION @ISA @EXPORT); - -BEGIN { - # set the version for version checking - $VERSION = 3.01; - require Exporter; - @ISA = qw(Exporter); - @EXPORT = qw( - &GetBookSeller &GetBooksellersWithLateOrders &GetBookSellerFromId - &ModBookseller - &DelBookseller - &AddBookseller - ); -} +use warnings; + +use base qw( Exporter ); +# set the version for version checking +our $VERSION = 4.01; +our @EXPORT_OK = qw( + GetBookSeller GetBooksellersWithLateOrders GetBookSellerFromId + ModBookseller + DelBookseller + AddBookseller +); =head1 NAME @@ -54,92 +50,67 @@ a bookseller. =head2 GetBookSeller - at results = &GetBookSeller($searchstring); + at results = GetBookSeller($searchstring); Looks up a book seller. C<$searchstring> may be either a book seller ID, or a string to look for in the book seller's name. -C<@results> is an array of references-to-hash, whose keys are the fields of of the +C<@results> is an array of hash_refs whose keys are the fields of of the aqbooksellers table in the Koha database. =cut -# FIXME: This function is badly named. It should be something like -# SearchBookSellersByName. It is NOT a singular return value. +sub GetBookSeller { + my $searchstring = shift; + $searchstring = q{%} . $searchstring . q{%}; + my $query = +'select aqbooksellers.*, count(*) as basketcount from aqbooksellers left join aqbasket ' + . 'on aqbasket.booksellerid = aqbooksellers.id where name lIke ? group by aqbooksellers.id order by name'; + + my $dbh = C4::Context->dbh; + my $sth = $dbh->prepare($query); + $sth->execute($searchstring); + my $resultset_ref = $sth->fetchall_arrayref( {} ); + return @{$resultset_ref}; +} -sub GetBookSeller($) { - my ($searchstring) = @_; +sub GetBookSellerFromId { + my $id = shift or return; my $dbh = C4::Context->dbh; - my $query = "SELECT * FROM aqbooksellers WHERE name LIKE ?"; - my $sth =$dbh->prepare($query); - $sth->execute( "%$searchstring%" ); - my @results; - # count how many baskets this bookseller has. - # if it has none, the bookseller can be deleted - my $sth2 = $dbh->prepare("SELECT count(*) FROM aqbasket WHERE booksellerid=?"); - while ( my $data = $sth->fetchrow_hashref ) { - $sth2->execute($data->{id}); - $data->{basketcount} = $sth2->fetchrow(); - push( @results, $data ); + my $vendor = + $dbh->selectrow_hashref( 'SELECT * FROM aqbooksellers WHERE id = ?', + {}, $id ); + if ($vendor) { + ( $vendor->{basketcount} ) = $dbh->selectrow_array( + 'SELECT count(*) FROM aqbasket where booksellerid = ?', + {}, $id ); } - $sth->finish; - return @results ; + return $vendor; } - -sub GetBookSellerFromId($) { - my $id = shift or return; - my $dbh = C4::Context->dbh(); - my $query = "SELECT * FROM aqbooksellers WHERE id = ?"; - my $sth =$dbh->prepare($query); - $sth->execute( $id ); - if (my $data = $sth->fetchrow_hashref()){ - my $sth2 = $dbh->prepare("SELECT count(*) FROM aqbasket WHERE booksellerid=?"); - $sth2->execute($id); - $data->{basketcount}=$sth2->fetchrow(); - return $data; - } - return; -} #-----------------------------------------------------------------# =head2 GetBooksellersWithLateOrders -%results = &GetBooksellersWithLateOrders; +%results = GetBooksellersWithLateOrders($delay); Searches for suppliers with late orders. =cut sub GetBooksellersWithLateOrders { - my ($delay,$branch) = @_; # FIXME: Branch argument unused. + my $delay = shift; my $dbh = C4::Context->dbh; -# FIXME NOT quite sure that this operation is valid for DBMs different from Mysql, HOPING so -# should be tested with other DBMs - - my $strsth; - my $dbdriver = C4::Context->config("db_scheme") || "mysql"; - if ( $dbdriver eq "mysql" ) { - $strsth = " - SELECT DISTINCT aqbasket.booksellerid, aqbooksellers.name - FROM aqorders LEFT JOIN aqbasket ON aqorders.basketno=aqbasket.basketno - LEFT JOIN aqbooksellers ON aqbasket.booksellerid = aqbooksellers.id - WHERE (closedate < DATE_SUB(CURDATE( ),INTERVAL $delay DAY) - AND (datereceived = '' OR datereceived IS NULL)) - "; - } - else { - $strsth = " - SELECT DISTINCT aqbasket.booksellerid, aqbooksellers.name - FROM aqorders LEFT JOIN aqbasket ON aqorders.basketno=aqbasket.basketno - LEFT JOIN aqbooksellers ON aqbasket.aqbooksellerid = aqbooksellers.id - WHERE (closedate < (CURDATE( )-(INTERVAL $delay DAY))) - AND (datereceived = '' OR datereceived IS NULL)) - "; - } + # TODO delay should be verified + my $query_string = + "SELECT DISTINCT aqbasket.booksellerid, aqbooksellers.name + FROM aqorders LEFT JOIN aqbasket ON aqorders.basketno=aqbasket.basketno + LEFT JOIN aqbooksellers ON aqbasket.booksellerid = aqbooksellers.id + WHERE (closedate < DATE_SUB(CURDATE( ),INTERVAL $delay DAY) + AND (datereceived = '' OR datereceived IS NULL))"; - my $sth = $dbh->prepare($strsth); + my $sth = $dbh->prepare($query_string); $sth->execute; my %supplierlist; while ( my ( $id, $name ) = $sth->fetchrow ) { @@ -165,8 +136,8 @@ Returns the ID of the newly-created bookseller. sub AddBookseller { my ($data) = @_; - my $dbh = C4::Context->dbh; - my $query = " + my $dbh = C4::Context->dbh; + my $query = q| INSERT INTO aqbooksellers ( name, address1, address2, address3, address4, @@ -176,8 +147,8 @@ sub AddBookseller { listincgst,invoiceincgst, discount, notes ) - VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?) - "; + VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?) | + ; my $sth = $dbh->prepare($query); $sth->execute( $data->{'name'}, $data->{'address1'}, @@ -195,21 +166,14 @@ sub AddBookseller { ); # return the id of this new supplier - # FIXME: no protection against simultaneous addition: max(id) might be wrong! - $query = " - SELECT max(id) - FROM aqbooksellers - "; - $sth = $dbh->prepare($query); - $sth->execute; - return scalar($sth->fetchrow); + return $dbh->{'mysql_insertid'}; } #-----------------------------------------------------------------# =head2 ModBookseller -&ModBookseller($bookseller); +ModBookseller($bookseller); Updates the information for a given bookseller. C<$bookseller> is a reference-to-hash whose keys are the fields of the aqbooksellers table @@ -225,17 +189,15 @@ C<&ModBookseller> with the result. sub ModBookseller { my ($data) = @_; my $dbh = C4::Context->dbh; - my $query = " - UPDATE aqbooksellers + my $query = 'UPDATE aqbooksellers SET name=?,address1=?,address2=?,address3=?,address4=?, postal=?,phone=?,fax=?,url=?,contact=?,contpos=?, contphone=?,contfax=?,contaltphone=?,contemail=?, contnotes=?,active=?,listprice=?, invoiceprice=?, gstreg=?,listincgst=?,invoiceincgst=?, - discount=?, notes=?, gstrate=? - WHERE id=? - "; - my $sth = $dbh->prepare($query); + discount=?,notes=?,gstrate=? + WHERE id=?'; + my $sth = $dbh->prepare($query); $sth->execute( $data->{'name'}, $data->{'address1'}, $data->{'address2'}, $data->{'address3'}, @@ -248,27 +210,27 @@ sub ModBookseller { $data->{'active'}, $data->{'listprice'}, $data->{'invoiceprice'}, $data->{'gstreg'}, $data->{'listincgst'}, $data->{'invoiceincgst'}, - $data->{'discount'}, - $data->{'notes'}, $data->{'gstrate'}, - $data->{'id'} + $data->{'discount'}, $data->{'notes'}, + $data->{'gstrate'}, $data->{'id'} ); - $sth->finish; + return; } =head2 DelBookseller -&DelBookseller($booksellerid); +DelBookseller($booksellerid); -delete the supplier identified by $booksellerid -This sub can be called only if the supplier has no order. +delete the supplier record identified by $booksellerid +This sub assumes it is called only if the supplier has no order. =cut sub DelBookseller { - my ($id) = @_; - my $dbh=C4::Context->dbh; - my $sth=$dbh->prepare("DELETE FROM aqbooksellers WHERE id=?"); + my $id = shift; + my $dbh = C4::Context->dbh; + my $sth = $dbh->prepare('DELETE FROM aqbooksellers WHERE id=?'); $sth->execute($id); + return; } 1; diff --git a/acqui/basket.pl b/acqui/basket.pl index 005fcb9..28ae83d 100755 --- a/acqui/basket.pl +++ b/acqui/basket.pl @@ -29,7 +29,7 @@ use CGI; use C4::Acquisition; use C4::Budgets; -use C4::Bookseller; +use C4::Bookseller qw( GetBookSellerFromId); use C4::Dates qw/format_date/; use C4::Debug; diff --git a/acqui/booksellers.pl b/acqui/booksellers.pl index 7641e68..0918f5d 100755 --- a/acqui/booksellers.pl +++ b/acqui/booksellers.pl @@ -62,7 +62,7 @@ use CGI; use C4::Acquisition; use C4::Dates qw/format_date/; -use C4::Bookseller; +use C4::Bookseller qw/ GetBookSellerFromId GetBookSeller /; use C4::Members qw/GetMember/; my $query = new CGI; diff --git a/acqui/lateorders.pl b/acqui/lateorders.pl index e948d2f..810f665 100755 --- a/acqui/lateorders.pl +++ b/acqui/lateorders.pl @@ -45,7 +45,7 @@ To know on which branch this script have to display late order. use strict; use warnings; use CGI; -use C4::Bookseller; +use C4::Bookseller qw( GetBooksellersWithLateOrders ); use C4::Auth; use C4::Koha; use C4::Output; @@ -76,7 +76,7 @@ unless ($delay =~ /^\d{1,3}$/) { $delay = 30; #default value for delay } -my %supplierlist = GetBooksellersWithLateOrders($delay,$branch); +my %supplierlist = GetBooksellersWithLateOrders($delay); my (@sloopy); # supplier loop foreach (keys %supplierlist){ push @sloopy, (($supplierid and $supplierid eq $_ ) ? diff --git a/acqui/neworderbiblio.pl b/acqui/neworderbiblio.pl index 2333f89..9e63492 100755 --- a/acqui/neworderbiblio.pl +++ b/acqui/neworderbiblio.pl @@ -60,7 +60,7 @@ use strict; use C4::Search; use CGI; -use C4::Bookseller; +use C4::Bookseller qw/ GetBookSellerFromId /; use C4::Biblio; use C4::Auth; use C4::Output; diff --git a/acqui/neworderempty.pl b/acqui/neworderempty.pl index a580ae7..f64cffe 100755 --- a/acqui/neworderempty.pl +++ b/acqui/neworderempty.pl @@ -76,7 +76,7 @@ use C4::Budgets; use C4::Input; use C4::Dates; -use C4::Bookseller; # GetBookSellerFromId +use C4::Bookseller qw/ GetBookSellerFromId /; use C4::Acquisition; use C4::Suggestions; # GetSuggestion use C4::Biblio; # GetBiblioData diff --git a/acqui/newordersuggestion.pl b/acqui/newordersuggestion.pl index 156dab8..b65e4ea 100755 --- a/acqui/newordersuggestion.pl +++ b/acqui/newordersuggestion.pl @@ -93,7 +93,7 @@ use CGI; use C4::Auth; # get_template_and_user use C4::Output; use C4::Suggestions; -use C4::Bookseller; +use C4::Bookseller qw/ GetBookSellerFromId /; use C4::Biblio; my $input = new CGI; diff --git a/acqui/orderreceive.pl b/acqui/orderreceive.pl index a1e6fce..5e365f3 100755 --- a/acqui/orderreceive.pl +++ b/acqui/orderreceive.pl @@ -65,7 +65,7 @@ use C4::Acquisition; use C4::Auth; use C4::Output; use C4::Dates qw/format_date/; -use C4::Bookseller; +use C4::Bookseller qw/ GetBookSellerFromId /; use C4::Members; use C4::Branch; # GetBranches use C4::Items; diff --git a/acqui/parcel.pl b/acqui/parcel.pl index 675b07d..7b9782a 100755 --- a/acqui/parcel.pl +++ b/acqui/parcel.pl @@ -57,7 +57,7 @@ use strict; use C4::Auth; use C4::Acquisition; use C4::Budgets; -use C4::Bookseller; +use C4::Bookseller qw/ GetBookSellerFromId /; use C4::Biblio; use C4::Items; use CGI; diff --git a/acqui/parcels.pl b/acqui/parcels.pl index 33792b4..1e8d44e 100755 --- a/acqui/parcels.pl +++ b/acqui/parcels.pl @@ -74,7 +74,7 @@ use C4::Output; use C4::Dates qw/format_date/; use C4::Acquisition; -use C4::Bookseller; +use C4::Bookseller qw/ GetBookSellerFromId /; my $input = CGI->new; my $supplierid = $input->param('supplierid'); diff --git a/acqui/supplier.pl b/acqui/supplier.pl index 6c49a90..5505c52 100755 --- a/acqui/supplier.pl +++ b/acqui/supplier.pl @@ -47,7 +47,7 @@ use C4::Output; use C4::Dates qw/format_date /; use CGI; -use C4::Bookseller; +use C4::Bookseller qw( GetBookSellerFromId DelBookseller ); use C4::Budgets; my $query = CGI->new; diff --git a/acqui/updatesupplier.pl b/acqui/updatesupplier.pl index e324a29..3f20796 100755 --- a/acqui/updatesupplier.pl +++ b/acqui/updatesupplier.pl @@ -48,7 +48,8 @@ use strict; #use warnings; FIXME - Bug 2505 use C4::Context; use C4::Auth; -use C4::Bookseller; + +use C4::Bookseller qw( ModBookseller AddBookseller ); use C4::Biblio; use C4::Output; use CGI; diff --git a/serials/acqui-search-result.pl b/serials/acqui-search-result.pl index e671e96..5839cd4 100755 --- a/serials/acqui-search-result.pl +++ b/serials/acqui-search-result.pl @@ -47,7 +47,7 @@ use C4::Output; use CGI; use C4::Acquisition; use C4::Dates qw/format_date/; -use C4::Bookseller; +use C4::Bookseller qw( GetBookSeller ); my $query=new CGI; my ($template, $loggedinuser, $cookie) diff --git a/serials/claims.pl b/serials/claims.pl index b723136..888df33 100755 --- a/serials/claims.pl +++ b/serials/claims.pl @@ -22,7 +22,7 @@ use C4::Auth; use C4::Serials; use C4::Acquisition; use C4::Output; -use C4::Bookseller; +use C4::Bookseller qw( GetBookSeller ); use C4::Context; use C4::Letters; my $input = CGI->new; diff --git a/t/db_dependent/Acquisition.t b/t/db_dependent/Acquisition.t index 241f442..1d4f36a 100755 --- a/t/db_dependent/Acquisition.t +++ b/t/db_dependent/Acquisition.t @@ -7,7 +7,7 @@ use strict; use warnings; use Data::Dumper; -use C4::Bookseller; +use C4::Bookseller qw( GetBookSellerFromId ); use Test::More tests => 37; diff --git a/t/lib/KohaTest.pm b/t/lib/KohaTest.pm index 323b55a..1282e38 100644 --- a/t/lib/KohaTest.pm +++ b/t/lib/KohaTest.pm @@ -10,7 +10,7 @@ plan skip_all => "Test::Class required for performing database tests" if $@; use C4::Auth; use C4::Biblio; -use C4::Bookseller; +use C4::Bookseller qw( AddBookseller ); use C4::Context; use C4::Items; use C4::Members; -- 1.7.1.1 From oleonard at myacpl.org Mon Jul 26 18:35:56 2010 From: oleonard at myacpl.org (Owen Leonard) Date: Mon, 26 Jul 2010 12:35:56 -0400 Subject: [Koha-patches] [PATCH] Further fixes for Bug 3211, cataloging value plugin forms should be valid XHTML Message-ID: <1280162157-30606-1-git-send-email-oleonard@myacpl.org> - Adding page heading - Adding "Cancel" link to close popup - Correctly marking up

        Laboratory Search

        @@ -125,5 +119,4 @@ a.catalogue:hover {
        - - + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/macles.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/macles.tmpl index 52b6bdc..161a041 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/macles.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/macles.tmpl @@ -1,7 +1,6 @@ - Gestion_des_index_MACLES @@ -18,14 +17,14 @@

        Gestion des index MACLES

        - +
        - @@ -89,7 +88,8 @@
        - diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_006.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_006.tmpl index 3661879..5615786 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_006.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_006.tmpl @@ -4,7 +4,7 @@

        006 Fixed-length data elements--Additional material characteristics--General information

        -
        +
    - " size="10" maxlength="15" /> + " size="10" maxlength="15" /> - " onchange="if (this.value==2 || this.value==7){changeDate2('')} else {changeDate2('')}" > diff --git a/serials/serials-edit.pl b/serials/serials-edit.pl index dee624c..6357fc7 100755 --- a/serials/serials-edit.pl +++ b/serials/serials-edit.pl @@ -19,7 +19,7 @@ =head1 NAME -serials-recieve.pl +serials-edit.pl =head1 Parameters @@ -133,8 +133,14 @@ foreach my $tmpserialid (@serialids) { && !$processedserialid{$tmpserialid} ) { my $data = GetSerialInformation($tmpserialid); - $data->{publisheddate} = format_date( $data->{publisheddate} ); - $data->{planneddate} = format_date( $data->{planneddate} ); + for my $datefield ( qw( publisheddate planneddate) ) { + if ($data->{$datefield} && $data->{$datefield}!~m/^00/) { + $data->{$datefield} = format_date( $data->{$datefield} ); + } + else { + $data->{$datefield} = q{}; + } + } $data->{arriveddate}=$today->output('syspref'); $data->{'editdisable'} = ( ( @@ -173,6 +179,8 @@ foreach my $subscriptionid (@subscriptionids) { $cell->{'itemid'} = "NNEW"; $cell->{'serialid'} = "NEW"; $cell->{'issuesatonce'} = 1; + $cell->{arriveddate}=$today->output('syspref'); + push @newserialloop, $cell; push @subscriptionloop, { @@ -198,7 +206,7 @@ if ( $op and $op eq 'serialchangestatus' ) { ### FIXME if NewIssue is modified to use subscription biblionumber, then biblionumber would not be useful. $newserial = NewIssue( $serialseqs[$i], - $subscriptionids[$i], + $subscriptionids[0], $serialdatalist[0]->{'biblionumber'}, $status[$i], format_date_in_iso( $planneddates[$i] ), -- 1.7.1.1 From nengard at bywatersolutions.com Wed Jul 21 01:38:14 2010 From: nengard at bywatersolutions.com (Nicole Engard) Date: Tue, 20 Jul 2010 19:38:14 -0400 Subject: [Koha-patches] [PATCH] add missing help file for merging records Message-ID: <1279669094-12022-1-git-send-email-nengard@bywatersolutions.com> --- .../prog/en/modules/help/cataloguing/merge.tmpl | 23 ++++++++++++++++++++ 1 files changed, 23 insertions(+), 0 deletions(-) create mode 100644 koha-tmpl/intranet-tmpl/prog/en/modules/help/cataloguing/merge.tmpl diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/help/cataloguing/merge.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/help/cataloguing/merge.tmpl new file mode 100644 index 0000000..74357a0 --- /dev/null +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/help/cataloguing/merge.tmpl @@ -0,0 +1,23 @@ + + +

    Merging Items

    + +

    Important: Merging will only work with two items that use the same bibliographic framework.

    + +

    The easiest way to merge together duplicate bibliographic records is to add them to a list and use the Merge Tool from there.

    + +

    From the list, check the two items you want to merge. If you choose more than or fewer than 2, you will be presented with an error.

    + +

    Once you have selected the records you want to merge, click the 'Merge selected items' button. You will be asked which of the two records you would like to keep as your primary record and which will be deleted after the merge.

    + +

    You will be presented with the MARC for both of the records (each accessible by tabs labeled with the bib numbers for those records). By default the entire first record will be selected, uncheck the fields you don't want in the final (destination) record and then move on to the second tab to choose which fields should be in the final (destination) record.

    + +

    Should you try to add a field that is not repeatable two times (like choosing the 245 field from both record #1 and #2) you will be presented with an error

    + +

    Most importantly you want to make sure that all of the items from the two records are attached to the new record. To do this you want to make sure that all 952 files are selected before completing the merge.

    + +

    Once you have completed your selections click the 'merge' button. The primary record will now show the data you chose for it, and the second record will be deleted.

    + +

    Important: It is important to rebuild your zebra index immediately after merging records. If a search is performed for a record which has been deleted Koha will present the patrons with an error in the OPAC.

    + + \ No newline at end of file -- 1.5.6.5 From nengard at bywatersolutions.com Wed Jul 21 01:51:36 2010 From: nengard at bywatersolutions.com (Nicole Engard) Date: Tue, 20 Jul 2010 19:51:36 -0400 Subject: [Koha-patches] [PATCH] update patron categories help file Message-ID: <1279669896-12099-1-git-send-email-nengard@bywatersolutions.com> --- .../prog/en/modules/help/admin/categorie.tmpl | 106 +++++++++++++++----- 1 files changed, 79 insertions(+), 27 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/help/admin/categorie.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/help/admin/categorie.tmpl index 3acbc24..dd44d7e 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/help/admin/categorie.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/help/admin/categorie.tmpl @@ -2,32 +2,84 @@

    Patron Categories

    -

    This is where you define the types of users of your library and how they will be handled.

    - -

    Categories, Descriptions and Types

    -

    Start by assigning a Category Code and a Description to each patron category. Each Category can be one of five types:

    -
      -
    • Adult Patrons: can be linked as "guarantors" to other patrons who are their dependents. This is the default patron type.
    • -
    • Child Patrons: a patron category that has a "guarantor".
    • -
    • Organizational Patrons: can be used for institutional members, e.g. other libraries that borrow from you, in which case Koha expects slightly different information about the institution.
    • -
    • Professional Patrons: can also be associated with a guarantor (usually an organization).
    • -
    • Staff Members: A member of the library staff.
    • -
    • Statistical Patrons: checking out to this patron type creates a statistical (local use) record but does not actually circulate materials.
    • -
    - -

    Note on Permissions

    -

    Patrons in any category type may be assigned permissions in the staff interface. The Staff patron type has additional security features over the other types.

    - -

    Enrollment Period (months)

    -

    Enrollment period is a number indicating the length in months of a patron enrollment. If enrollments never expire, set this to an impossibly high number ( >= 99).

    - -

    Upper Age Limit and Age Required

    -

    Upper Age Limit and Age Required set the age parameters for this type of user. If you issue children's cards to users between the ages of 2 and 18, for example, then Age Required would be "2" and Upper Age Limit would be "18." If there is no upper age limit, set this value to 999 (the highest allowed).

    - -

    Enrollment Fee and Reserve Fee

    -

    Enrollment Fee and Reserve Fee (if any) should be entered either as whole numbers or with (up to) six decimal places, with no currency notation (e.g. "1.250000" instead of "$1.25").

    - -

    Overdue Notice Required

    -

    Overdue Notice Required lets you bypass generating overdue notices for this user type.

    +

    Patron categories allow you to organize your patrons into different roles, age groups, and patron types.

    + +

    Patrons are assigned to one of six main categories:

    + +
      +
    • Adult +
        +
      • Most common patron type, usually used for a general 'Patron' category.
      • +
    • +
    • Child +
        +
      • Children patrons can have a guardian to be attached to them.
      • +
      +
    • +
    • Staff +
        +
      • Patrons within the staff category will have access to the staff client.
      • +
      +
    • +
    • Organizational +
        +
      • Organizational patrons are organizations. Organizations can be used as guarantors for Professional patrons.
      • +
      +
    • +
    • Professional +
        +
      • Professional patrons can be linked to Organizational patrons
      • +
      +
    • +
    • Statistical +
        +
      • This patron type is used strictly for statistical purposes, such as in house use of items. +
      • +
      +
    • +
    + +

    Adding a patron category

    + +

    To add a new patron category click 'New Category' at the top of the page

    + +
      +
    • The 'Category Code' is an identifier for your new code. +
        +
      • Important: The category code is limited to 10 characters (numbers and letters)
      • +
      +
    • +
    • Enter a plain text version of the category in the 'Description' field.
    • +
    • Enrollment period should be filled in (in months) if you have a limited enrollment period for your patrons (eg. Student cards expire after 9 months or until a specific date) +
        +
      • Important: You cannot enter both a month limit and a date until. Choose to enter either one or the other.
      • +
      +
    • +
    • Some patron categories can have a minimum age requirement associated with them, enter this age in the 'Age required'
    • +
    • Patron categories can also have a maximum age associated with them (such as children), enter this age in the 'Upperage limit'
    • +
    • If you charge a membership fee for your patrons (such as those who live in another region) you can enter that in the 'Enrollment fee' field. +
        +
      • Important: Only enter numbers and decimals in this field
      • +
      +
    • +
    • If you want your patron to receive overdue notices, set the 'Overdue notice required' to 'Yes'
    • +
    • If you charge patrons for placing holds on items, enter the fee amount in the 'Hold fee' field. +
        +
      • Important: Only enter numbers and decimals in this field
      • +
      +
    • +
    • In the 'Category type' field choose one of the six main parent categories
    • +
    • Finally you can assign advanced messaging preferences by default to a patron category +
        +
      • Important: Requires that you have EnhancedMessagingPreferences enabled +
          +
        • Get there: More > Administration > Global system preferences > Patrons > EnhancedMessagingPreferences
        • +
        +
      • +
      • Important: These can be changed for individual patrons, this setting is just a default to make it easier to set up messages for an entire category
      • +
      +
    • +
    + \ No newline at end of file -- 1.5.6.5 From oleonard at myacpl.org Wed Jul 21 20:40:25 2010 From: oleonard at myacpl.org (Owen Leonard) Date: Wed, 21 Jul 2010 14:40:25 -0400 Subject: [Koha-patches] [PATCH] Fix for Bug 5048, Error in menu/submenu for select language in intranet Message-ID: <1279737625-23875-1-git-send-email-oleonard@myacpl.org> Patch for HEAD. This issue was apparently solved quite a while ago in the OPAC. This patch copies that solution over to the staff client. --- .../prog/en/includes/intranet-bottom.inc | 2 +- koha-tmpl/intranet-tmpl/prog/en/js/staff-global.js | 55 ++++++++++---------- 2 files changed, 28 insertions(+), 29 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/intranet-bottom.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/intranet-bottom.inc index 78334b2..839c176 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/intranet-bottom.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/intranet-bottom.inc @@ -7,7 +7,7 @@ -
  • ()
    +
  • " href="#"> ()
    ">
      diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/staff-global.js b/koha-tmpl/intranet-tmpl/prog/en/js/staff-global.js index c2e6fba..047bfa0 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/js/staff-global.js +++ b/koha-tmpl/intranet-tmpl/prog/en/js/staff-global.js @@ -43,35 +43,34 @@ function _(s) { return s } // dummy function for gettext YAHOO.widget.Overlay.windowResizeEvent.subscribe(positionoMoremenu); }); +// build Change Language menus YAHOO.util.Event.onContentReady("changelanguage", function () { - var oMenu = new YAHOO.widget.Menu("sublangs", { zindex: 2 }); - - function positionoMenu() { - oMenu.align("bl", "tl"); - } - - oMenu.subscribe("beforeShow", function () { - if (this.getRoot() == this) { - positionoMenu(); - } - }); - - oMenu.render(); - - oMenu.cfg.setProperty("context", ["showlang", "bl", "tl"]); - - function onYahooClick(p_oEvent) { - // Position and display the menu - positionoMenu(); - oMenu.show(); - // Stop propagation and prevent the default "click" behavior - YAHOO.util.Event.stopEvent(p_oEvent); - } - - YAHOO.util.Event.addListener("showlang", "click", onYahooClick); - - YAHOO.widget.Overlay.windowResizeEvent.subscribe(positionoMenu); - }); + $(".sublangs").each(function(){ + var menuid = $(this).attr("id"); + var menuid = menuid.replace("show",""); + + var oMenu = new YAHOO.widget.Menu("sub"+menuid, { zindex: 2 }); + function positionoMenu() { + oMenu.align("bl", "tl"); + } + oMenu.subscribe("beforeShow", function () { + if (this.getRoot() == this) { + positionoMenu(); + } + }); + oMenu.render(); + oMenu.cfg.setProperty("context", ["show"+menuid, "bl", "tl"]); + function onYahooClick(p_oEvent) { + // Position and display the menu + positionoMenu(); + oMenu.show(); + // Stop propagation and prevent the default "click" behavior + YAHOO.util.Event.stopEvent(p_oEvent); + } + YAHOO.util.Event.addListener("show"+menuid, "click", onYahooClick); + YAHOO.widget.Overlay.windowResizeEvent.subscribe(positionoMenu); + }); +}); // http://jennifermadden.com/javascript/stringEnterKeyDetector.html function checkEnter(e){ //e is event object passed from function invocation -- 1.7.0.4 From oleonard at myacpl.org Wed Jul 21 21:28:10 2010 From: oleonard at myacpl.org (Owen Leonard) Date: Wed, 21 Jul 2010 15:28:10 -0400 Subject: [Koha-patches] [PATCH] Fix for Bug 5048, Error in menu/submenu for select language in intranet Message-ID: <1279740490-29458-1-git-send-email-oleonard@myacpl.org> Patch for 3.0.x. This issue was apparently solved quite a while ago in the OPAC. This patch copies that solution over to the staff client. --- .../prog/en/includes/intranet-bottom.inc | 2 +- koha-tmpl/intranet-tmpl/prog/en/js/staff-global.js | 55 ++++++++++---------- 2 files changed, 28 insertions(+), 29 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/intranet-bottom.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/intranet-bottom.inc index 78334b2..839c176 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/intranet-bottom.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/intranet-bottom.inc @@ -7,7 +7,7 @@ -
    • ()
      +
    • " href="#"> ()
      ">
        diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/staff-global.js b/koha-tmpl/intranet-tmpl/prog/en/js/staff-global.js index 7810bef..390d0ac 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/js/staff-global.js +++ b/koha-tmpl/intranet-tmpl/prog/en/js/staff-global.js @@ -41,35 +41,34 @@ function _(s) { return s } // dummy function for gettext YAHOO.widget.Overlay.windowResizeEvent.subscribe(positionoMoremenu); }); +// build Change Language menus YAHOO.util.Event.onContentReady("changelanguage", function () { - var oMenu = new YAHOO.widget.Menu("sublangs", { zindex: 2 }); - - function positionoMenu() { - oMenu.align("bl", "tl"); - } - - oMenu.subscribe("beforeShow", function () { - if (this.getRoot() == this) { - positionoMenu(); - } - }); - - oMenu.render(); - - oMenu.cfg.setProperty("context", ["showlang", "bl", "tl"]); - - function onYahooClick(p_oEvent) { - // Position and display the menu - positionoMenu(); - oMenu.show(); - // Stop propagation and prevent the default "click" behavior - YAHOO.util.Event.stopEvent(p_oEvent); - } - - YAHOO.util.Event.addListener("showlang", "click", onYahooClick); - - YAHOO.widget.Overlay.windowResizeEvent.subscribe(positionoMenu); - }); + $(".sublangs").each(function(){ + var menuid = $(this).attr("id"); + var menuid = menuid.replace("show",""); + + var oMenu = new YAHOO.widget.Menu("sub"+menuid, { zindex: 2 }); + function positionoMenu() { + oMenu.align("bl", "tl"); + } + oMenu.subscribe("beforeShow", function () { + if (this.getRoot() == this) { + positionoMenu(); + } + }); + oMenu.render(); + oMenu.cfg.setProperty("context", ["show"+menuid, "bl", "tl"]); + function onYahooClick(p_oEvent) { + // Position and display the menu + positionoMenu(); + oMenu.show(); + // Stop propagation and prevent the default "click" behavior + YAHOO.util.Event.stopEvent(p_oEvent); + } + YAHOO.util.Event.addListener("show"+menuid, "click", onYahooClick); + YAHOO.widget.Overlay.windowResizeEvent.subscribe(positionoMenu); + }); +}); // http://jennifermadden.com/javascript/stringEnterKeyDetector.html function checkEnter(e){ //e is event object passed from function invocation -- 1.7.0.4 From chrisc at catalyst.net.nz Thu Jul 22 05:37:51 2010 From: chrisc at catalyst.net.nz (Chris Cormack) Date: Thu, 22 Jul 2010 15:37:51 +1200 Subject: [Koha-patches] [PATCH] Bug 5054 - allow the resulting .deb location to be specified Message-ID: <1279769871-4388-1-git-send-email-chrisc@catalyst.net.nz> From: Robin Sheat Signed-off-by: Chris Cormack --- debian/build-git-snapshot | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) diff --git a/debian/build-git-snapshot b/debian/build-git-snapshot index 4b63141..99475a6 100755 --- a/debian/build-git-snapshot +++ b/debian/build-git-snapshot @@ -46,7 +46,7 @@ reset_debian_changelog() { build_package() { git archive --format=tar --prefix="koha-$1/" HEAD | gzip -9 > "../koha_$1.tar.gz" - pdebuild + pdebuild $2 } if ! everything_is_commited @@ -55,6 +55,10 @@ then fi version="$(newversion)" +if [ -n "$1" ] +then + pdebuildopts="--buildresult $1" +fi adjust_debian_changelog "$version" -build_package "$version" +build_package "$version" "$pdebuildopts" reset_debian_changelog -- 1.7.0.4 From chris at bigballofwax.co.nz Thu Jul 22 09:06:16 2010 From: chris at bigballofwax.co.nz (Chris Cormack) Date: Thu, 22 Jul 2010 19:06:16 +1200 Subject: [Koha-patches] [PATCH] If patronimages are enabled, show them in the patron search results Message-ID: <1279782376-25553-1-git-send-email-chris@bigballofwax.co.nz> --- .../prog/en/modules/members/member.tmpl | 11 +++++++++++ members/member.pl | 20 +++++++++++++------- 2 files changed, 24 insertions(+), 7 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/member.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/members/member.tmpl index fef7b69..058d265 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/member.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/member.tmpl @@ -32,6 +32,9 @@ + + + @@ -54,6 +57,14 @@ + + + + + + + + diff --git a/members/member.pl b/members/member.pl index dde29eb..81c7888 100755 --- a/members/member.pl +++ b/members/member.pl @@ -101,20 +101,26 @@ if ($results){ my @resultsdata; my $to=($count>$to?$to:$count); my $index=$from; +my $images = C4::Context->preference("patronimages"); foreach my $borrower(@$results[$from..$to-1]){ #find out stats my ($od,$issue,$fines)=GetMemberIssuesAndFines($$borrower{'borrowernumber'}); $$borrower{'dateexpiry'}= C4::Dates->new($$borrower{'dateexpiry'},'iso')->output('syspref'); - - my %row = ( - count => $index++, + my $picture; + my $dberror; + if ($images){ + ($picture, $dberror) = GetPatronImage($borrower->{'cardnumber'}); + } + my %row = ( + count => $index++, %$borrower, %{$categories_dislay{$$borrower{categorycode}}}, - overdues => $od, - issues => $issue, - odissue => "$od/$issue", - fines => sprintf("%.2f",$fines), + overdues => $od, + issues => $issue, + odissue => "$od/$issue", + fines => sprintf("%.2f",$fines), + picture => $picture ); push(@resultsdata, \%row); } -- 1.6.3.3 From magnus at enger.priv.no Thu Jul 22 11:15:58 2010 From: magnus at enger.priv.no (Magnus Enger) Date: Thu, 22 Jul 2010 11:15:58 +0200 Subject: [Koha-patches] Bug 5055 - Use standard file paths in crontab.example Message-ID: -------------- next part -------------- A non-text attachment was scrubbed... Name: 0001-Bug-5055-Use-standard-file-paths-in-crontab.example.patch Type: application/octet-stream Size: 1914 bytes Desc: not available URL: From oleonard at myacpl.org Thu Jul 22 20:26:03 2010 From: oleonard at myacpl.org (Owen Leonard) Date: Thu, 22 Jul 2010 14:26:03 -0400 Subject: [Koha-patches] [PATCH] Fix for Bug 5030 - Improve handling of duplicate patrons Message-ID: <1279823163-27518-1-git-send-email-oleonard@myacpl.org> - Making duplicate patron warning dialog simpler but more explicit - Pointing duplicate patron preview window to new brief version of moremember.pl to display more patron details than the previous version. --- .../intranet-tmpl/prog/en/css/staff-global.css | 17 +++- .../prog/en/modules/members/borrowers_details.tmpl | 63 ------------- .../prog/en/modules/members/memberentrygen.tmpl | 25 ++--- .../prog/en/modules/members/moremember-brief.tmpl | 97 ++++++++++++++++++++ koha-tmpl/intranet-tmpl/prog/img/pop-up-link.png | Bin 0 -> 205 bytes members/borrowers_details.pl | 75 --------------- members/moremember.pl | 3 + 7 files changed, 125 insertions(+), 155 deletions(-) delete mode 100644 koha-tmpl/intranet-tmpl/prog/en/modules/members/borrowers_details.tmpl create mode 100644 koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-brief.tmpl create mode 100644 koha-tmpl/intranet-tmpl/prog/img/pop-up-link.png delete mode 100755 members/borrowers_details.pl diff --git a/koha-tmpl/intranet-tmpl/prog/en/css/staff-global.css b/koha-tmpl/intranet-tmpl/prog/en/css/staff-global.css index 13ac2c7..914042e 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/css/staff-global.css +++ b/koha-tmpl/intranet-tmpl/prog/en/css/staff-global.css @@ -21,6 +21,11 @@ a.overdue,.overdue { color : #cc0000; } +a.popup { + background : transparent url("../../img/pop-up-link.png") center right no-repeat; + padding-right : 15px; +} + body { text-align : left; padding:0 0 2.5em 0; @@ -1128,11 +1133,21 @@ td input.approve { color:black; padding: .4em .4em .4em 34px; } - + .dialog input.edit { background: #fff url(../../img/toolbar-edit.gif) no-repeat 4px center; color:black; + max-width : 13em; + padding: .4em .4em .4em 34px; + white-space: normal; +} + +.dialog input.new { + background: #fff url(../../img/toolbar-new.gif) no-repeat 4px center; + color:black; + max-width : 13em; padding: .4em .4em .4em 34px; + white-space: normal; } .dialog input.print { diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/borrowers_details.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/members/borrowers_details.tmpl deleted file mode 100644 index 763cf66..0000000 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/borrowers_details.tmpl +++ /dev/null @@ -1,63 +0,0 @@ - -Patron Details - - - - -
        -
        - -

        Patron Details

        - - - - -

        - - - " /> -

        -

        - - - " /> -

        - - - -

        - - " /> -

        -

        - - " /> - -

        -

        - - " /> -

        - -

        - - - " /> -

        -

        - - " /> -

        - - - - - -

        - Close Window -

        - - - -
        - diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tmpl index b21d35a..007dbd7 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tmpl @@ -83,22 +83,15 @@ -

        -

        -

        Duplicate suspected

        - ');" >Detail - Duplicate ? - &category_type=">Yes -     No, it is not - - - - - +

        Duplicate patron record?

        +

        ');" >View existing record

        + " />" /> + +
        + +
        - -

        @@ -144,7 +137,8 @@ -
        + +" /> " /> " /> @@ -153,7 +147,6 @@ " /> " /> " /> -" /> " /> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-brief.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-brief.tmpl new file mode 100644 index 0000000..9dd5ed3 --- /dev/null +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember-brief.tmpl @@ -0,0 +1,97 @@ + +Koha › Check duplicate patron + + + + +
        +
        +

        + ()

        +
        +
        +
        + + + +

        + + , + +
        +
        + +
        +

        + +
        +
          + +
        1. Organization phone:
        2. +
        3. Organization email:
        4. + +
        5. Home:
        6. +
        7. Mobile:
        8. +
        9. Work:
        10. + + + +
        11. Professional phone:
        12. +
        13. Professional mobile:
        14. + +
        15. Fax:
        16. + +
        17. Email (home):">
        18. +
        19. Email (work): ">
        20. + +
        21. Initials:
        22. +
        23. Date of birth:
        24. +
        25. Sex:
        26. + +
        27. Ethnicity:
        28. +
        29. Ethnicity notes:
        30. + + + +
        31. Guarantees:
        32. + + + +
        33. Guarantor:">,
        34. + + +
        +
        +
        +
        +
        +
        +

        Library use

        +
        +
          +
        1. Card number:
        2. +
        3. Borrowernumber:
        4. +
        5. Category: ()
        6. +
        7. Registration date:
        8. +
        9. Expiration date: + + + + + +
        10. +
        11. Library:
        12. + +
        13. Sort field 1:
        14. +
        15. Sort field 2:
        16. +
        +
        +
        +
        +
        +
        +
        +
        + diff --git a/koha-tmpl/intranet-tmpl/prog/img/pop-up-link.png b/koha-tmpl/intranet-tmpl/prog/img/pop-up-link.png new file mode 100644 index 0000000000000000000000000000000000000000..77ffc75e040d8c27f8ba21b010c19a47a1b15792 GIT binary patch literal 205 zcmeAS at N?(olHy`uVBq!ia0vp^+(699!3-oX?^2ToQY`6?zK#qG>ra at ocD)4hB}-f* zN`mv#O3D+9QW+dm@{>{(JaZG%Q-e|yQz{EjrrH1%u?6^qxH2%D`Tzg_Os8|nKoO>r zAiv=M3{STkcma9#o-U3d6}OTSQc_YHm>L+87&b~CY+zJqm~fMUk!3RTMn)!%BMl(( tOdC+TNt+?5fx#(_nMGiei9-V;1J4x(>!kFQJwT%vJYD@<);T3K0Ra1$I)nfK literal 0 HcmV?d00001 diff --git a/members/borrowers_details.pl b/members/borrowers_details.pl deleted file mode 100755 index c861ad4..0000000 --- a/members/borrowers_details.pl +++ /dev/null @@ -1,75 +0,0 @@ -#!/usr/bin/perl -# NOTE: This file uses standard 8-space tabs -# DO NOT SET TAB SIZE TO 4 - - -#script to set up screen for modification of borrower details -#written 20/12/99 by chris at katipo.co.nz - - -# Copyright 2000-2002 Katipo Communications -# -# This file is part of Koha. -# -# Koha is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or (at your option) any later -# version. -# -# Koha is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with Koha; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - -use strict; -#use warnings; FIXME - Bug 2505 -use CGI; -use C4::Auth; -use C4::Context; -use C4::Output; -use C4::Members; -use C4::Koha; -use C4::Dates qw(format_date); -use C4::Input; -use C4::Log; -my $input = new CGI; -my $dbh = C4::Context->dbh; -my %data; - -my ($template, $loggedinuser, $cookie) - = get_template_and_user({template_name => "members/borrowers_details.tmpl", - query => $input, - type => "intranet", - authnotrequired => 0, - flagsrequired => {borrowers => 1}, - debug => 1, - }); - -my $data; -my $categorycode=$input->param('categorycode'); -my $borrowernumber=$input->param('borrowernumber'); -my $description=$input->param('description'); -my $category_type=$input->param('category_type'); - -$data=GetMember('borrowernumber' => $borrowernumber); - -$template->param( borrowernumber => $borrowernumber,#register number - #transform value in capital or capital for first letter of the word - firstname => ucfirst($data->{'firstname'}), - surname => uc($data->{'surname'}), - categorycode => $data->{'categorycode'}, - title => $data->{'title'}, - category_type => $data->{'category_type'}, - "title_".$data->{'title'} => " SELECTED ", - dateofbirth => format_date($data->{'dateofbirth'}), - description => $data->{'description'} - ); -$template->param(Institution => 1) if ($category_type eq "I"); -output_html_with_http_headers $input, $cookie, $template->output; - -# Local Variables: -# tab-width: 8 -# End: diff --git a/members/moremember.pl b/members/moremember.pl index 34a3e09..104670b 100755 --- a/members/moremember.pl +++ b/members/moremember.pl @@ -89,6 +89,9 @@ if ($print eq "page") { $template_name = "members/moremember-receipt.tmpl"; $quickslip = 1; $flagsrequired = { circulate => "circulate_remaining_permissions" }; +} elsif ($print eq "brief") { + $template_name = "members/moremember-brief.tmpl"; + $flagsrequired = { borrowers => 1 }; } else { $template_name = "members/moremember.tmpl"; $flagsrequired = { borrowers => 1 }; -- 1.7.0.4 From oleonard at myacpl.org Fri Jul 23 21:01:14 2010 From: oleonard at myacpl.org (Owen Leonard) Date: Fri, 23 Jul 2010 15:01:14 -0400 Subject: [Koha-patches] [PATCH] Fix for Bug 2170, Adding 'edititems' user-permission Message-ID: <1279911674-29190-1-git-send-email-oleonard@myacpl.org> This patch follows up on the addition of the 'edititems' permission by adding a check of the new permission to places in the interface which link to the edit item screen. The catalogue toolbar had to be extensively re-worked in order to ensure that the "New" and "Edit" menus would appear (or not) whether or not edit_catalogue, edit_items, or create_subscription permissions are on. --- .../intranet-tmpl/prog/en/css/staff-global.css | 6 +- .../intranet-tmpl/prog/en/includes/cat-toolbar.inc | 173 +++++++++++--------- .../prog/en/modules/catalogue/moredetail.tmpl | 2 +- .../prog/en/modules/cataloguing/addbooks.tmpl | 16 +-- .../prog/en/modules/tools/batchMod-del.tmpl | 2 +- .../prog/en/modules/tools/batchMod-edit.tmpl | 2 +- 6 files changed, 112 insertions(+), 89 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/css/staff-global.css b/koha-tmpl/intranet-tmpl/prog/en/css/staff-global.css index 13ac2c7..1e1a502 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/css/staff-global.css +++ b/koha-tmpl/intranet-tmpl/prog/en/css/staff-global.css @@ -432,6 +432,9 @@ ul.toolbar { padding-left : 0; } +ul.toolbar button { + padding-bottom : 2px; +} .yui-menu-button { } @@ -916,7 +919,8 @@ fieldset.rows .inputnote { background-repeat : no-repeat; } -#placehold a { +#placehold a, +#placehold button { padding-left : 34px; background-image: url("../../img/toolbar-hold.gif"); background-position : center left; diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/cat-toolbar.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/cat-toolbar.inc index eda7985..8d4e02e 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/cat-toolbar.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/cat-toolbar.inc @@ -25,6 +25,7 @@ } function printBiblio() {window.open('/cgi-bin/koha/catalogue/detailprint.pl?biblionumber=','Print_Biblio','width=700,height=500,toolbar=false,scrollbars=yes'); } + function confirm_deletion() { var count = ; var is_confirmed; @@ -44,6 +45,8 @@ function confirm_deletion() { return false; } } + + function confirm_items_deletion() { var count = ; if(count > 0){ @@ -54,125 +57,147 @@ function confirm_items_deletion() { } } } + // prepare DOM for YUI Toolbar $(document).ready(function() { - $("#edititems").parent().remove(); - $("#duplicatebiblio").parent().remove(); + $("#edititems").parent().remove(); + $("#newitem").parent().remove(); + $("#duplicatebiblio").parent().remove(); $("#deletebiblio").parent().remove(); - $("#newitem").parent().remove(); - $("#newsub").parent().remove(); - $("#editmenuc").empty(); - $("#newmenuc").empty(); - $("#addtoshelfc").empty(); - $("#printbiblioc").empty(); + $("#z3950searchc").empty(); + $("#newsub").parent().remove(); + $("#newbiblio").parent().remove(); + $("#editbiblio").parent().remove(); + $("#addtoshelf").parent().remove(); + $("#printbiblio").parent().remove(); + $("#placehold").parent().remove(); $("#export").remove(); - $("#addtoshelfc").before("
      • <\/li>"); - $("#z3950searchc").empty(); - yuiToolbar(); }); - // YUI Toolbar Functions - - function yuiToolbar() { + YAHOO.util.Event.onContentReady("cattoolbar", function () { + // Menu for new record, new item, new subscription var newmenu = [ - {text: _("New Record"), url: "/cgi-bin/koha/cataloguing/addbiblio.pl" }, - {text: _("New Item"), url: "/cgi-bin/koha/cataloguing/additem.pl?biblionumber=#additema" }, - {text: _("New Subscription"), url: "/cgi-bin/koha/serials/subscription-add.pl?biblionumber_for_new_subscription="}, + {text: _("New Record"), url: "/cgi-bin/koha/cataloguing/addbiblio.pl" }, + {text: _("New Item"), url: "/cgi-bin/koha/cataloguing/additem.pl?biblionumber=#additema" }, + + {text: _("New Subscription"), url: "/cgi-bin/koha/serials/subscription-add.pl?biblionumber_for_new_subscription="}, ]; - + if(newmenu.length){ + new YAHOO.widget.Button({ + type: "menu", + label: _("New"), + id: "newmenuc", + name: "newmenubutton", + menu: newmenu, + container: this + }); + } var editmenu = [ - { text: _("Edit Record"), url: "/cgi-bin/koha/cataloguing/addbiblio.pl?biblionumber=&frameworkcode=&op=" }, - { text: _("Edit Items"), url: "/cgi-bin/koha/cataloguing/additem.pl?biblionumber=" }, - { text: _("Attach Item"), url: "/cgi-bin/koha/cataloguing/moveitem.pl?biblionumber=" }, - { text: _("Edit as New (Duplicate)"), url: "/cgi-bin/koha/cataloguing/addbiblio.pl?biblionumber=&frameworkcode=&op=duplicate" }, - { text: _("Delete Record"), onclick: {fn: confirm_deletion },id:'disabled' }, - { text: _("Delete all Items"), onclick: {fn: confirm_items_deletion } } + { text: _("Edit Record"), url: "/cgi-bin/koha/cataloguing/addbiblio.pl?biblionumber=&frameworkcode=&op=" }, + { text: _("Edit Items"), url: "/cgi-bin/koha/cataloguing/additem.pl?biblionumber=" }, + { text: _("Attach Item"), url: "/cgi-bin/koha/cataloguing/moveitem.pl?biblionumber=" }, + { text: _("Edit as New (Duplicate)"), url: "/cgi-bin/koha/cataloguing/addbiblio.pl?biblionumber=&frameworkcode=&op=duplicate" }, + { text: _("Delete Record"), onclick: {fn: confirm_deletion },id:'disabled' }, + { text: _("Delete all Items"), onclick: {fn: confirm_items_deletion } } ]; - + if(editmenu.length){ + new YAHOO.widget.Button({ + type: "menu", + label: _("Edit"), + id: "editmenuc", + name: "editmenubutton", + menu: editmenu, + container: this + }); + } var savemenu = [ - { text: _("MODS (XML)"), url: "/cgi-bin/koha/catalogue/export.pl?format=mods&op=export&bib=" }, - { text: _("Dublin Core (XML)"), url: "/cgi-bin/koha/catalogue/export.pl?format=dc&op=export&bib=" }, - { text: _("MARCXML"), url: "/cgi-bin/koha/catalogue/export.pl?format=marcxml&op=export&bib=" }, - { text: _("MARC (non-Unicode/MARC-8)"), url: "/cgi-bin/koha/catalogue/export.pl?format=marc8&op=export&bib=" }, - { text: _("MARC (Unicode/UTF-8)"), url: "/cgi-bin/koha/catalogue/export.pl?format=utf8&op=export&bib=" } - ]; - - var addtomenu = [ - { text: _("Cart"), onclick: { fn: addToCart } }, - { text: _("List"), onclick: { fn: addToShelf } } + { text: _("MODS (XML)"), url: "/cgi-bin/koha/catalogue/export.pl?format=mods&op=export&bib=" }, + { text: _("Dublin Core (XML)"), url: "/cgi-bin/koha/catalogue/export.pl?format=dc&op=export&bib=" }, + { text: _("MARCXML"), url: "/cgi-bin/koha/catalogue/export.pl?format=marcxml&op=export&bib=" }, + { text: _("MARC (non-Unicode/MARC-8)"), url: "/cgi-bin/koha/catalogue/export.pl?format=marc8&op=export&bib=" }, + { text: _("MARC (Unicode/UTF-8)"), url: "/cgi-bin/koha/catalogue/export.pl?format=utf8&op=export&bib=" } ]; new YAHOO.widget.Button({ type: "menu", label: _("Save"), + id: "savemenuc", name: "savemenubutton", menu: savemenu, - container: "savemenuc" - }); - - new YAHOO.widget.Button({ - type: "menu", - label: _("Edit"), - name: "editmenubutton", - menu: editmenu, - container: "editmenuc" + container: this }); - new YAHOO.widget.Button({ - type: "menu", - label: _("New"), - name: "newmenubutton", - menu: newmenu, - container: "newmenuc" - }); + var addtomenu = [ + { text: _("Cart"), onclick: { fn: addToCart } }, + { text: _("List"), onclick: { fn: addToShelf } } + ]; new YAHOO.widget.Button({ type: "menu", label: _("Add to"), name: "addtomenubutton", menu: addtomenu, - container: "addtoshelfc" + container: this }); new YAHOO.widget.Button({ - id: "z3950search", + id: "printbiblio", + type: "button", + label: _("Print"), + container: this, + onclick: {fn: printBiblio } + }); + + new YAHOO.widget.Button({ + id: "placehold", + type: "link", + label: _("Place hold"), + container: this, + href: "/cgi-bin/koha/reserve/request.pl?biblionumber=" + }); + + new YAHOO.widget.Button({ + id: "z3950search", type: "button", - label: _("Z39.50 Search"), - container: "z3950searchc", + label: _("Z39.50 Search"), + container: this, onclick: {fn:function(){PopupZ3950()}} }); - - var printbiblioButton = new YAHOO.widget.Button({ - id: "printbiblio", - type: "button", - label: _("Print"), - container: "printbiblioc", - onclick: {fn: printBiblio } - }); - - var newbiblioButton = new YAHOO.widget.Button("newbiblio"); - var placeholdButton = new YAHOO.widget.Button("placehold"); - - } - + + }); //]]> -
      • - - - + + + @@ -98,14 +98,8 @@ - - + +
        Photo Card Name Cat
        " id="patronimage" alt=" ()" border="0" style="max-width : 100px; margin: .3em 0 .3em .3em; padding: .2em; border: 1px solid #CCCCCC; width:auto !important; width:100px;" /><!-- TMPL_VAR name= ()" border="0" style="margin: .3em 0 .3em .3em; padding: .2em; border: 1px solid #CCCCCC;" /> ">,


        ,
        ()
        Title Locationpreview  Preview  
        " title="MARC" rel="gb_page_center[600,500]">MARC | " title="MARC" rel="gb_page_center[600,500]">Card ">Edit biblio - " class="disabled" onclick="return false;">Edit biblio - - - - ">Add holdings - ">Edit biblio">Add holdings
        diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-del.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-del.tmpl index c6f82b9..7134b93 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-del.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-del.tmpl @@ -156,7 +156,7 @@
  • &itemnumber=">&itemnumber="> Item is checked outItem has a waiting hold
    diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_007.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_007.tmpl index d1e6269..73ed2de 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_007.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_007.tmpl @@ -4,7 +4,7 @@ ');">

    007 Physical description fixed field--General information

    - +

    @@ -656,4 +656,4 @@ function report() { //]]> - + \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_008_authorities.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_008_authorities.tmpl index 4ef947a..7fa53dd 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_008_authorities.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_008_authorities.tmpl @@ -4,13 +4,13 @@

    008 Fixed-length data elements

    - + +" type="hidden" />
    - " type="hidden" /> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader.tmpl index c01bd22..352cbe5 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader.tmpl @@ -3,7 +3,7 @@ - +

    000 - Leader

    00-05- Date entered on file
    diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader_authorities.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader_authorities.tmpl index b6ec8b0..020c25e 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader_authorities.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader_authorities.tmpl @@ -4,7 +4,7 @@

    000 - Leader

    - +
    @@ -57,7 +57,7 @@ @@ -86,6 +86,7 @@ + - +
    - + z- Authority data
    10-16 indicator/subfields/size (auto-filled)
    @@ -112,7 +113,7 @@
    20-24 entry map & lengths (auto-filled)
    Cancel
    diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader_book.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader_book.tmpl index fa6d38a..6b368ba 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader_book.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader_book.tmpl @@ -3,7 +3,7 @@ - + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader_computerfile.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader_computerfile.tmpl index c745d89..28af802 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader_computerfile.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader_computerfile.tmpl @@ -3,7 +3,8 @@ - +

    000 - Leader

    +
    @@ -196,6 +197,7 @@ + - +
    10-16 indicator/subfields/size (auto-filled)
    @@ -302,7 +304,7 @@
    20-24 entry map & lengths (auto-filled)
    Cancel
    diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_100.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_100.tmpl index f91dae5..e031214 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_100.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_100.tmpl @@ -1,22 +1,19 @@ - - - - - -UNIMARC_Field 100 builder + +UNIMARC Field 100 builder + - - + +

    UNIMARC Field 100 builder

    + - - + + - + - - + + - - + + - + - + - + - + - + - - + + - + - + - + - + - + - -
    Date entered on file">" />
    Type of Publication Date: Publication Dates 1 and 2 - @@ -50,8 +47,7 @@ - - + - + + selected="selected">j - document with detailed date of publication @@ -98,17 +91,17 @@ year
    Publication Date 1" />" />
    Publication Date 2" />" />
    Target Audience Code - @@ -122,7 +115,7 @@ year + selected="selected">b- pre-primary, ages 0-5 @@ -144,21 +137,21 @@ year + selected="selected">k- adult, serious + selected="selected">m- adult, general + selected="selected">u- unknown @@ -166,9 +159,9 @@ year
    Target Audience Code 2 - @@ -182,7 +175,7 @@ year - + @@ -204,21 +197,21 @@ year + selected="selected">k- adult, serious + selected="selected">m- adult, general + selected="selected">u- unknown @@ -226,9 +219,9 @@ year
    Target Audience Code 3 - @@ -242,7 +235,7 @@ year + selected="selected">b- pre-primary, ages 0-5 @@ -264,21 +257,21 @@ year + selected="selected">k- adult, serious + selected="selected">m- adult, general + selected="selected">u- unknown @@ -286,9 +279,9 @@ year
    Government Publication - @@ -312,13 +305,13 @@ year + selected="selected">d- local(municipal, etc.) + selected="selected">f- intergovernmental + selected="selected">g- government in exile or clandestine + selected="selected">h- level not determined + selected="selected">u- unknown + selected="selected">y- not a government publication + selected="selected">z- Other @@ -368,9 +361,9 @@ level)
    Modified Record Code - @@ -388,14 +381,14 @@ level)
    Language of Cataloguing (Mandatory)" />" />
    Transliteration Code - @@ -409,7 +402,7 @@ level) + selected="selected">c- multiple transliterations: ISO or other schemes @@ -422,9 +415,9 @@ level)
    Character Sets (Mandatory) 1 - @@ -477,7 +470,7 @@ level) - @@ -497,11 +490,11 @@ languages and obsolete typography)
    Character Sets (Mandatory) 2 - - + @@ -519,7 +512,7 @@ languages and obsolete typography) + selected="selected">03- ISO 5426 (extended Latin set) @@ -558,7 +551,7 @@ languages and obsolete typography) -
    Additional Character Sets - " /> + " />
    Script of Title - @@ -681,12 +674,11 @@ languages and obsolete typography)
    +

    Cancel

    - - - + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_105.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_105.tmpl index 8d3fe39..60e0825 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_105.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_105.tmpl @@ -1,18 +1,15 @@ - - - - - -UNIMARC_Field 105 builder + +UNIMARC Field 105 builder + - -
    + +

    UNIMARC Field 105 builder

    + - + - + - + + + - + - + - + + + - + - + - + - + - + - + - -
    Illustration codes 1: - @@ -108,9 +105,9 @@ Illustration codes 2: - @@ -203,10 +200,11 @@ -
    Illustration codes 3:
    - @@ -300,9 +298,9 @@ Illustration codes 4: - @@ -397,9 +395,9 @@
    Form of contents codes 1:
    - @@ -535,9 +533,9 @@ Form of contents codes 2: - @@ -672,9 +670,10 @@ -
    Form of contents codes 3:
    - @@ -809,9 +808,9 @@ Form of contents codes 4: - @@ -947,77 +946,83 @@
    Conference or meeting code : - - + - + + +
    Festschrift indicator - - + - + + +
    Index indicator - - + - + + +
    Literature code - @@ -1080,12 +1085,14 @@ + +
    Biography code - @@ -1120,12 +1127,14 @@ + +
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_106.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_106.tmpl index 9f564a4..370979d 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_106.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_106.tmpl @@ -1,18 +1,15 @@ - - - - - -UNIMARC_Field 106 builder + +UNIMARC Field 106 builder + - -
    + +

    UNIMARC Field 106 builder

    + - + - -
    Form of item: Coded Data: Medium Designator (Not repeatable) - @@ -83,12 +80,12 @@ supplement)
    +
    Cancel
    - - - + + + \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_110.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_110.tmpl index ecf42ea..c47d3b9 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_110.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_110.tmpl @@ -1,18 +1,15 @@ - - - - - -UNIMARC_Field 110 builder + +UNIMARC Field 110 builder + - -
    + +

    UNIMARC Field 110 builder

    + - + - + - + - + - - + + - + - - + + - + - + - -
    Type of continuing resource designator - @@ -45,9 +42,9 @@
    Frequency of issue - @@ -155,9 +152,9 @@
    Regularity - @@ -192,9 +189,9 @@
    Type of material code - @@ -327,26 +324,26 @@
    Nature of contents code">" />
    Conference publication indicator - - + - + @@ -354,10 +351,10 @@
    Title-page availability code
    - @@ -439,9 +436,9 @@
    Index availability code - @@ -569,21 +566,21 @@
    Cumulative index availability code - - + - + @@ -591,11 +588,11 @@
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_115a.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_115a.tmpl index 8f4078a..955b998 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_115a.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_115a.tmpl @@ -1,36 +1,33 @@ - - - - - -UNIMARC_Field 115a builder + +UNIMARC Field 115a builder + - -
    + +

    UNIMARC Field 115a builder

    + - + - - + + - + - + - + - + - + - + - + - + - + - + + + - + - + + + - + - + - + - + - + - -
    Type of material - - - - - + + + + - + - + - + @@ -41,50 +38,50 @@
    Lenght">" />
    Colour indicator - - - - - + + + + - + - + - + - + - + @@ -95,35 +92,35 @@
    Sound indicator - - - - - - - + + + + + + - + - + - + @@ -134,229 +131,229 @@
    Media for sound - - - - - + + + + - + - + - + - + - + - + - + - + - + - + - + - +
    Width or dimensions - - - - - + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -365,91 +362,91 @@
    Form of release - visual projection, motion picture - - - - - + + + + - + - + - + - - + - + - + - + - + - + - + - + - + @@ -458,49 +455,49 @@
    Technique - videorecording, motion picture - - - - - + + + + - + - + - + - + - + - + @@ -512,59 +509,59 @@
    Presentation format - motion picture - - - - - + + + + - + - + - + - + - + - + - + - + @@ -574,135 +571,137 @@
    Accompanying material 1 - - - - - + + + + - + - + - + - + - + - + - + - + - + Accompanying material 2
    - - - - - - + + + + + - + - + - + - + - + - + - + - + - + @@ -713,116 +712,118 @@
    Accompanying material 3 - - - - - + + + + - + - + - + - + - + - + - + - + - + Accompanying material 4
    - - - - - + + + + - + - + - + - + - + - + @@ -830,7 +831,7 @@ - + @@ -838,13 +839,13 @@ - + - + @@ -855,201 +856,201 @@
    Form of release - videorecording
    - - - - - + + + + - + - + - + - + - + - + - +
    Presentation format - videorecording
    - - - - - + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    Base of emulsion material - visual projection
    - - - + + - + - + - + - + - + - + @@ -1057,7 +1058,7 @@ - + @@ -1065,50 +1066,50 @@
    Secondary support material - visual projection
    - - - - - + + + + - + - + - + - + - + - + @@ -1116,25 +1117,25 @@ - + - + - + - + @@ -1142,42 +1143,42 @@
    Broadcast standard - videorecording
    - - - - - + + + + - + - + - + - + - + @@ -1185,11 +1186,11 @@
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_115b.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_115b.tmpl index 76da3e9..fe89686 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_115b.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_115b.tmpl @@ -1,59 +1,56 @@ - - - - - -UNIMARC_Field 115b builder + +UNIMARC Field 115b builder + - -
    + +

    UNIMARC Field 115b builder

    + - + - + - + - + - + - + - + - + - + - - + - - -
    Generation - - + - + - + - + - + - + - + - + @@ -63,69 +60,69 @@
    Production elements - - + - + - + - + - + - + - + - + - + - + - + @@ -136,143 +133,143 @@
    Refined categories of colour for moving pictures - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -282,42 +279,42 @@
    Film emulsion (polarity) - - + - + - + - + - + - + @@ -326,55 +323,55 @@
    Film base - - + - + - + - + - + - + - + - + @@ -384,50 +381,50 @@
    Kind of sound for moving images - - + - + - + - + - + - + - + @@ -435,7 +432,7 @@ - + @@ -448,57 +445,57 @@
    Kind of film stock or print - - + - + - + - + - + - + - + - + @@ -509,80 +506,80 @@
    Deterioration stage - - + - + - + - + - + - + - + - + - + - + - + - + @@ -593,36 +590,36 @@
    Completeness - - + - + - + - + - + @@ -633,14 +630,13 @@
    Film inspection dateYear ">Month "> " /> " />
    + +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_116.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_116.tmpl index 7662976..6b03b5c 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_116.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_116.tmpl @@ -1,84 +1,81 @@ - - - - - -UNIMARC_Field 116 builder + +UNIMARC Field 116 builder + - -
    + +

    UNIMARC Field 116 builder

    + - + - + - + - + - + - + - + - + - + - + - + - -
    Specific material designation - - + - + - + - + - + - + - + - + - + - + - + - + @@ -88,111 +85,111 @@
    Primary support material - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -205,17 +202,17 @@
    Secondary support material - - + - + @@ -225,60 +222,60 @@
    Colour - - + - + - + - + - + - + - + - + - + @@ -287,194 +284,194 @@
    Techniques (Drawings, Paintings) 1 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -484,198 +481,198 @@
    Techniques (Drawings, Paintings) 2 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -685,199 +682,199 @@
    Techniques (Drawings, Paintings) 3 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -889,190 +886,190 @@
    Technique (Prints) 1 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -1082,194 +1079,194 @@
    Technique (Prints) 2 - - + - + - + - + - + - + - + - + - + - + - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -1278,191 +1275,191 @@
    Technique (Prints) 3 - - + - + - + - + - + - + - + - + - + - + - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -1472,113 +1469,113 @@
    Functional Designation - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -1586,11 +1583,11 @@
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_117.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_117.tmpl index 00c93e9..6d6f590 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_117.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_117.tmpl @@ -1,216 +1,213 @@ - - - - - -UNIMARC_Field 117 builder + +UNIMARC Field 117 builder + - -
    + +

    UNIMARC Field 117 builder

    + - + - + - + - + - + -
    Specific Material Designation - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -220,176 +217,176 @@
    Material 1 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -399,177 +396,177 @@
    Material 2 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -579,175 +576,175 @@
    Material 3 - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -757,62 +754,63 @@
    Colour - - + - + - + - + - + - + - + - + - +
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_120.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_120.tmpl index ba33d95..997402a 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_120.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_120.tmpl @@ -1,141 +1,138 @@ - - - - - -UNIMARC_Field 120 builder + +UNIMARC Field 120 builder + - -
    + +

    UNIMARC Field 120 builder

    + - + - + - + - + - + - + - + - + + + - -
    Colour indicator - - + - + - + - +
    Index indicator - - + - + - + - +
    Narrative text indicator - - + - + - +
    Relief codes 1: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -148,71 +145,71 @@
    Relief codes 2: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -225,73 +222,73 @@
    Relief codes 3: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -304,72 +301,72 @@
    Relief codes 4: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -382,57 +379,57 @@
    Map projection
    - - + - + - + - + - + - + - + - + - + - + @@ -443,7 +440,7 @@ - + @@ -455,25 +452,25 @@ - + - + - + - + @@ -485,102 +482,102 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -600,72 +597,72 @@ - + - + - + - + - + - + - + - + - + - + -
    Prime meridian 1:
    - - + @@ -677,57 +674,57 @@ - + - + - + - + - + - + - + - + - + - + - + @@ -738,19 +735,19 @@ - + - + - + @@ -762,65 +759,65 @@ - + - + - + - + - + - + - + - + - + - + - + @@ -833,79 +830,79 @@ - + - + - + - + - + - + - + - + - + - + - + -
    Prime meridian 2:
    - - + @@ -917,57 +914,57 @@ - + - + - + - + - + - + - + - + - + - + - + @@ -978,19 +975,19 @@ - + - + - + @@ -1002,65 +999,65 @@ - + - + - + - + - + - + - + - + - + - + - + @@ -1073,77 +1070,77 @@ - + - + - + - + - + - + - + - + - + - + - +
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_121a.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_121a.tmpl index aa27595..40f62f7 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_121a.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_121a.tmpl @@ -1,293 +1,294 @@ - - - - - -UNIMARC_Field 121a builder + +UNIMARC Field 121a builder + - -
    + +

    UNIMARC Field 121a builder

    + - + - + + + + + - + - + - + - + - + -
    Physical dimension - - + - +
    Primary cartographic image 1: - - + - + - + - + - + - + - Primary cartographic image 2:
    - - + - + - + - + - + - +
    Physical medium - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    Creation technique - - + - + - + - + - + - + - +
    Form of reproduction - - + - + - + - + - + +
    Geodetic adjustment - - + - + - + - + @@ -295,46 +296,47 @@
    Physical form of publication - - + - + - + - + - + - +
    +
    Cancel
    - - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_121b.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_121b.tmpl index 54bd4d4..b5e51d0 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_121b.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_121b.tmpl @@ -1,253 +1,251 @@ - - - - - -UNIMARC_Field 121b builder + +UNIMARC Field 121b builder + - -
    + +

    UNIMARC Field 121b builder

    + - + - + - + + - + - + - + - -
    Altitude of Sensor - - + - + - +
    Attitude of sensor - - + - + - + -
    Spectral bands : 01 to 99 = number of bands, xx = not applicable"> + +
    " />
    Quality of image - - + - + - + - +
    Cloud cover - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + +
    Mean value of ground resolution - - + - - + + - + + selected="selected">1 - + + selected="selected">1 - + + selected="selected">1 - + + selected="selected">1 - + + selected="selected">1 - + + selected="selected">1 - + + selected="selected">1 - + + selected="selected">1 + selected="selected">greater than 9 kilometres + selected="selected">not applicable - - + - + - + - + - + - + - +
    +
    Cancel
    - - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_122.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_122.tmpl index 9e0f32f..67d00eb 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_122.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_122.tmpl @@ -1,25 +1,22 @@ - - - - - -UNIMARC_Field 122 builder + +UNIMARC Field 122 builder + - -
    + +

    UNIMARC Field 122 builder

    + - - + - - + - - - - - - - + + + + + + - -
    Era identifier - +
    Year"> + " /> Month">Day">Time">" />" />" />
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123a.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123a.tmpl index 9a15cf2..999ba63 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123a.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123a.tmpl @@ -1,47 +1,46 @@ - - - - - -UNIMARC_Field 123a builder + +UNIMARC Field 123a builder + - -
    + +

    UNIMARC Field 123a builder

    + - + - -
    Type of Scale: - - + - + - +
    +
    Cancel
    - - + + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123d.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123d.tmpl index 49b0462..45d95e3 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123d.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123d.tmpl @@ -1,63 +1,53 @@ - - - - - -UNIMARC_Field 123d builder + +UNIMARC Field 123d builder + - -
    + +

    UNIMARC Field 123d builder

    + - + - - + + - - + + - - + + - - -
    Hemisphere: - - + - + - + - +
    Degree (complete with 0):">
    " />
    Minute (complete with 0):">
    " />
    Second (complete with 0):">
    " />
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123e.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123e.tmpl index ea3cfce..d37f979 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123e.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123e.tmpl @@ -1,63 +1,53 @@ - - - - - -UNIMARC_Field 123e builder + +UNIMARC Field 123e builder + - -
    + +

    UNIMARC Field 123e builder

    + - + - - + + - - + + - - + + - - -
    Hemisphere: - - + - + - + - +
    Degree (complete with 0):">
    " />
    Minute (complete with 0):">
    " />
    Second (complete with 0):">
    " />
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123f.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123f.tmpl index 6a8dd21..cdb03b9 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123f.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123f.tmpl @@ -1,74 +1,69 @@ - - - - - -UNIMARC_Field 123f builder + +UNIMARC Field 123f builder + - -
    + +

    UNIMARC Field 123f builder

    + - + - - + + - - + + - - + + -
    Hemisphere: - + - + - + - + - +
    Degree (complete with 0):">
    " />
    Minute (complete with 0):">
    " />
    Second (complete with 0):">
    " />
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123g.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123g.tmpl index e824432..7cc1c0a 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123g.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_123g.tmpl @@ -1,63 +1,53 @@ - - - - - -UNIMARC_constructeur champ 123g + +UNIMARC Field 123g builder + - -
    + +

    UNIMARC Field 123g builder

    + - + - - + + - - + + - - + + - - -
    Hemisphere: - + - + - + - + - +
    Degree (complete with 0):">
    " />
    Minute (complete with 0):">
    " />
    Second (complete with 0):">
    " />
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124a.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124a.tmpl index 2f2d54a..99cac1e 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124a.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124a.tmpl @@ -1,39 +1,37 @@ - - - - - -UNIMARC_Field 124a builder + +UNIMARC Field 124a builder + - -
    + +

    UNIMARC Field 124a builder

    + - + -
    Character of Image: - - + - + - +
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124b.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124b.tmpl index 2438388..5497d56 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124b.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124b.tmpl @@ -1,80 +1,78 @@ - - - - - -UNIMARC_Field 124b builder + +UNIMARC Field 124b builder + - -
    + +

    UNIMARC Field 124b builder

    + - + -
    Form of Cartographic Item: - - + - + - + - + - + - + - + - + - + - + - +
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124c.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124c.tmpl index 92ea74c..256f1d5 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124c.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124c.tmpl @@ -1,135 +1,133 @@ - - - - - -UNIMARC_Field 124c builder + +UNIMARC Field 124c builder + - -
    + +

    UNIMARC Field 124c builder

    + - + -
    Presentation Technique for Photographic or Non-Photographic Image: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124d.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124d.tmpl index db96601..735d37b 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124d.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124d.tmpl @@ -1,39 +1,37 @@ - - - - - -UNIMARC_Field 124d builder + +UNIMARC Field 124d builder + - -
    + +

    UNIMARC Field 124d builder

    + - + -
    Position of Platform for Photographic or Remote Sensing Image: - - + - + - +
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124e.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124e.tmpl index 6762425..dd966cf 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124e.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124e.tmpl @@ -1,40 +1,38 @@ - - - - - -UNIMARC_Field 124e builder + +UNIMARC Field 124e builder + - -
    + +

    UNIMARC Field 124e builder

    + - + -
    Category of Satellite for Remote Sensing Image: - - + - + - +
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124f.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124f.tmpl index aba2bf3..50e2e53 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124f.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124f.tmpl @@ -1,114 +1,112 @@ - - - - - -UNIMARC_Field 124f builder + +UNIMARC Field 124f builder + - -
    + +

    UNIMARC Field 124f builder

    + - + -
    Name of Satellite for Remote Sensing Image: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124g.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124g.tmpl index fbb3a7b..2d8e9af 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124g.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_124g.tmpl @@ -1,75 +1,73 @@ - - - - - -UNIMARC_Field 124g builder + +UNIMARC Field 124g builder + - -
    + +

    UNIMARC Field 124g builder

    + - + -
    Recording Technique for Remote Sensing Image: - - + - + - + - + - + - + - + - + - + - +
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_125a.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_125a.tmpl index 1321972..edd78af 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_125a.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_125a.tmpl @@ -1,142 +1,140 @@ - - - - - -UNIMARC_Field 125a builder + +UNIMARC Field 125a builder + - -
    + +

    UNIMARC Field 125a builder

    + - + - + -
    Type of Score: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    Parts Indicator: - - + - + - + - + - + - +
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_125b.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_125b.tmpl index c3188b4..520a13d 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_125b.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_125b.tmpl @@ -1,134 +1,132 @@ - - - - - -UNIMARC_Field 125b builder + +UNIMARC Field 125b builder + - -
    + +

    UNIMARC Field 125b builder

    + - + -
    Literary Text Indicator: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_126a.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_126a.tmpl index dd57f32..5ab4812 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_126a.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_126a.tmpl @@ -1,1035 +1,1033 @@ - - - - - -UNIMARC_Field 126a builder + +UNIMARC Field 126a builder + - -
    + +

    UNIMARC Field 126a builder

    + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + -
    Form of release: - - + - + - + - + - + - + - + - + - +
    Speed: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    Kind of sound: - - + - + - + - + - +
    Groove width: - - + - + - + - + - +
    Dimensions (sound recordings): - - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    Tape width: - - + - + - + - + - + - + - + - + - +
    Tape configuration: - - + - + - + - + - + - + - + - + - + - + - +
    Accompanying textual material 1: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    Accompanying textual material 2: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    Accompanying textual material 3: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    Accompanying textual material 4: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    Accompanying textual material 5: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    Accompanying textual material 6: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    Recording technique: - - + - + - + - + - +
    Special reproduction characteristics: - - + - + - + - + - + - + - + - + - + - + - +
    +
    Cancel
    - - + + \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_126b.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_126b.tmpl index 639fac6..e43cb39 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_126b.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_126b.tmpl @@ -1,178 +1,176 @@ - - - - - -UNIMARC_Field 126b builder + +UNIMARC Field 126b builder + - -
    + +

    UNIMARC Field 126b builder

    + - + - + - + -
    Kind of disc, cylinder or tape: - - + - + - + - + - + - + - + - + - + - +
    Kind of material: - - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    Kind of cutting: - - + - + - + - +
    +
    Cancel
    - - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_127.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_127.tmpl index d245e2d..084f771 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_127.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_127.tmpl @@ -1,34 +1,30 @@ - - - - - -UNIMARC_Field 127 builder + +UNIMARC Field 127 builder + - -
    + +

    UNIMARC Field 127 builder

    + -(Complete with 0 on the left) - - - - - - + + + + + + + - - -
    Hours:">Minutes:">Seconds:">
    (Complete with 0 on the left)
    " />" />" />
    +
    Cancel
    - - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_128a.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_128a.tmpl index a157417..58631be 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_128a.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_128a.tmpl @@ -1,374 +1,372 @@ - - - - - -UNIMARC_Field 128a builder + +UNIMARC Field 128a builder + - -
    + +

    UNIMARC Field 128a builder

    + - + -
    Form of Musical Work: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_128b.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_128b.tmpl index 9fd586f..822db8e 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_128b.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_128b.tmpl @@ -1,473 +1,469 @@ - - - - - -UNIMARC_constructeur champ 128b + +UNIMARC Field 128b builder + - -
    + +

    UNIMARC Field 128b builder

    + - + -
    Instruments ou voix dans un ensemble: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    +
    Cancel
    - - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_128c.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_128c.tmpl index fffc2dc..9f1177c 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_128c.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_128c.tmpl @@ -1,465 +1,463 @@ - - - - - -UNIMARC_constructeur champ 128c + +UNIMARC Field 128c builder + - -
    + +

    UNIMARC Field 128c builder

    + - + -
    - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - +
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_130.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_130.tmpl index 5575045..38dc8b8 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_130.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_130.tmpl @@ -1,335 +1,332 @@ - - - - - -UNIMARC_Field 130 builder + +UNIMARC Field 130 builder + - -
    + +

    UNIMARC Field 130 builder

    + - + - + - + - + - - + + - - + - + - + - + -
    Specific Material Designation: - - + - + - + - + - + - + - + - + - +
    Polarity: - - + - + - + - +
    Dimensions: - - + - + - + - + - + - + - + - + - + - + - + - +
    Reduction ratio: - - + - + - + - + - + - + - +
    Specific reduction ratio">" />
    Colour: - - + - + - + - + - +
    Emulsion on film: - - + - + - + - + - + - + - +
    Generation: - - + - + - + - + - +
    Base of film: - - + - + - + - +
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_135a.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_135a.tmpl index e572fa7..9c1565f 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_135a.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_135a.tmpl @@ -1,64 +1,63 @@ - - - - - -UNIMARC_Field 135a builder + +UNIMARC Field 135a builder + - -
    + +

    UNIMARC Field 135a builder

    + - + -
    Type of electronic resource: - - + - + - + - + - + - + - + - + +
    +

    Cancel

    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_140.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_140.tmpl index a3480d3..1358ce2 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_140.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_140.tmpl @@ -1,1549 +1,1564 @@ - - - - - -UNIMARC_Field 140 builder + +UNIMARC Field 140 builder + - -
    + +

    UNIMARC Field 140 builder

    + - + - + - + + + + - + - + - + - - + + - + - + - + + + + + - + + + - - + + + + - + + + - + - - + + + - + - - - + - + - - - + - + - - - + -
    Illustration - Book 1: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + Illustration - Book 2: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + -
    Illustration - Book 3:
    - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + Illustration - Book 4: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +
    Illustration - Full Page Plates 1: - - + - + - + - + - + - + - + - + - + - + - + - + - + + Illustration - Full Page Plates 2: - - + - + - + - + - + - + - + - + - + - + - + - + - + +
    Illustration - Full Page Plates 3:
    - - + - + - + - + - + - + - + - + - + - + - + - + - + + Illustration - Full Page Plates 4: - - + - + - + - + - + - + - + - + - + - + - + - + - + +
    Illustration - Technique:
    - - + - + - + - + - + - + - + - + - + -
    Form of Contents 1: 
    - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + -
    Form of Contents 2: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + -
    Form of Contents 3: - +
    +
    Form of Contents 4: - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + +
    Literature:
    - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + -
    Biography: - - + - + - + - + - + - + - + @@ -1551,86 +1566,84 @@
    Support Material - Book: - - + - + - + - + - + - + - +
    Support Material - Plates: - - + - + - + - + - + - + - + @@ -1638,35 +1651,33 @@
    Watermark: - - - + + - - + +
    Printer's Device: - - - + + - - + + @@ -1674,45 +1685,44 @@
    Publisher's Device: - - - + + - - + +
    Ornamental Device: - - - + + - - + +
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_141.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_141.tmpl index 8b1c6b2..54b7ab5 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_141.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_141.tmpl @@ -1,18 +1,15 @@ - - - - - -UNIMARC_Field 141 builder + +UNIMARC Field 141 builder + - -
    + +

    UNIMARC Field 141 builder

    + - + - + - + - + + - + - + - + - + -
    Binding Material 1: - @@ -66,9 +63,9 @@
    Binding Material 2: - @@ -123,9 +120,9 @@
    Binding Material 3: - @@ -178,9 +175,10 @@
    Types of Binding:
    - @@ -222,25 +220,27 @@ +
    Bound with': - - + - + +
    State of Preservation - Binding: - @@ -277,10 +277,11 @@ +
    State of Preservation - Body of the Book 1 : - @@ -317,10 +318,11 @@ +
    State of Preservation - Body of the Book 2 : - @@ -357,11 +359,13 @@ +
    +
    Cancel
    - - + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_210c.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_210c.tmpl index c2d19c7..9eb49fe 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_210c.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_210c.tmpl @@ -1,57 +1,47 @@ - - - - -UNIMARC_Field 210c builder + +UNIMARC Field 210c builder + - - -
    -

    Authority search results

    -
    + +

    UNIMARC Field 210c builder

    +

    Search for authority type: EDITORS

    - +
    + " /> -
    -

    Search on

    -

    - - EDITORS -

    -

    - " /> - " /> - - " /> - - - - " /> + + " /> + + + +

      +
    1. + - - -

      -

      - -

      -
    + " /> + + +
    +
    + +
    -
    -
    -
    + +

    Authority search results

    - -
    + +

     Results to of

    @@ -59,38 +49,35 @@   No results found

    -
    +
    - - - + + +
    SummaryUsedGet It!SummaryUsedGet It!
    times - + ')">choose//images/arrow.gif" width="32" hspace="0" vspace="0" border="0"> - +
    -
    -
    -
    - -
    -
    -
    -
    - - + diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_225a.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_225a.tmpl index d3ef3fe..1f9b97b 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_225a.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_225a.tmpl @@ -1,27 +1,27 @@ - - - - UNIMARC_Field 225a builder - + + UNIMARC Field 225a builder + - + +

    UNIMARC Field 225a builder

    -
    +

    Collection

    - - - \ No newline at end of file + //]]> + + + \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_4XX.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_4XX.tmpl index 253e8a3..0eb2ae5 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_4XX.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/unimarc_field_4XX.tmpl @@ -1,10 +1,7 @@ Koha › Cataloging › 4XX plugin - - - - + //]]> + + + + +

    UNIMARC Field 4XX builder

    - - -

    KOHA : INTRANET : Catalogue

    + //]]> + + + + +

    UNIMARC Field 4XX builder

    - -
    -
    - - \ No newline at end of file +
    -- 1.7.0.4 From colin.campbell at ptfs-europe.com Tue Jul 27 14:17:34 2010 From: colin.campbell at ptfs-europe.com (Colin Campbell) Date: Tue, 27 Jul 2010 13:17:34 +0100 Subject: [Koha-patches] [PATCH] bug_5064 Rework data retrieval in booksellers.pl Message-ID: <1280233054-7774-1-git-send-email-colin.campbell@ptfs-europe.com> loops were slightly illogical and db accesss was excessive and repetitive. caused it not to scale well on large datasets Routines in Acquisition.pm seem to have inconsistent views of the data. rework logic to utilize db and processing better --- acqui/booksellers.pl | 124 ++++++++++++++++++++++++++++---------------------- 1 files changed, 70 insertions(+), 54 deletions(-) diff --git a/acqui/booksellers.pl b/acqui/booksellers.pl index 0918f5d..88dbaa9 100755 --- a/acqui/booksellers.pl +++ b/acqui/booksellers.pl @@ -4,6 +4,7 @@ # Copyright 2000-2002 Katipo Communications # Copyright 2008-2009 BibLibre SARL +# Copyright 2010 PTFS Europe # # This file is part of Koha. # @@ -20,14 +21,13 @@ # with Koha; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - =head1 NAME booksellers.pl =head1 DESCRIPTION -this script displays the list of suppliers & orders like C<$supplier> given on input arg. +this script displays the list of suppliers & baskets like C<$supplier> given on input arg. thus, this page brings differents features like to display supplier's details, to add an order for a specific supplier or to just add a new supplier. @@ -37,40 +37,34 @@ to add an order for a specific supplier or to just add a new supplier. =item supplier -C<$supplier> is the suplier we have to search order. -=back - -=item op +C<$supplier> is the string with which we search for a supplier -C can be equals to 'close' if we have to close a basket before building the page. +=back -=item basket +=item id or supplierid -the C we have to close if op is equal to 'close'. +The id of the supplier whose baskets we will display =back =cut use strict; -#use warnings; FIXME - Bug 2505 +use warnings; use C4::Auth; use C4::Biblio; use C4::Output; use CGI; - -use C4::Acquisition; use C4::Dates qw/format_date/; use C4::Bookseller qw/ GetBookSellerFromId GetBookSeller /; use C4::Members qw/GetMember/; -my $query = new CGI; +my $query = CGI->new; my ( $template, $loggedinuser, $cookie ) = get_template_and_user( - { - template_name => "acqui/booksellers.tmpl", + { template_name => 'acqui/booksellers.tmpl', query => $query, - type => "intranet", + type => 'intranet', authnotrequired => 0, flagsrequired => { acquisition => 'vendors_manage' }, debug => 1, @@ -79,56 +73,78 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user( #parameters my $supplier = $query->param('supplier'); -my $id = $query->param('id') || $query->param('supplierid'); +my $id = $query->param('id') || $query->param('supplierid'); my @suppliers; if ($id) { - push @suppliers, GetBookSellerFromId($id); + push @suppliers, GetBookSellerFromId($id); } else { - @suppliers = GetBookSeller($supplier); + @suppliers = GetBookSeller($supplier); +} + +my $supplier_count = @suppliers; +if ( $supplier_count == 1 ) { + $template->param( + supplier_name => $suppliers[0]->{'name'}, + id => $suppliers[0]->{'id'} + ); } -my $count = scalar @suppliers; -if ($count == 1){ - $template->param( supplier_name => $suppliers[0]->{'name'}, - id => $suppliers[0]->{'id'} - ); + +my $uid; +if ($loggedinuser) { + $uid = GetMember( borrowernumber => $loggedinuser )->{userid}; } #build result page -my @loop_suppliers; -for ( my $i = 0 ; $i < $count ; $i++ ) { - my $orders = GetBasketsByBookseller( $suppliers[$i]->{'id'}, {groupby => "aqbasket.basketno", orderby => "aqbasket.basketname"} ); - my $ordcount = scalar @$orders; - my %line; - - $line{supplierid} = $suppliers[$i]->{'id'}; - $line{name} = $suppliers[$i]->{'name'}; - $line{active} = $suppliers[$i]->{'active'}; - my @loop_basket; - my $uid = GetMember(borrowernumber => $loggedinuser)->{userid} if $loggedinuser; - for ( my $i2 = 0 ; $i2 < $ordcount ; $i2++ ) { - if ( $orders->[$i2]{'authorisedby'} eq $loggedinuser || haspermission($uid, { flagsrequired => { 'acquisition' => '*' } } ) ) { - my %inner_line; - $inner_line{basketno} = $orders->[$i2]{'basketno'}; - $inner_line{basketname} = $orders->[$i2]{'basketname'}; - $inner_line{total} = scalar GetOrders($orders->[$i2]{'basketno'}); - $inner_line{authorisedby} = $orders->[$i2]{'authorisedby'}; - my $authby = GetMember(borrowernumber => $orders->[$i2]{'authorisedby'}); - $inner_line{surname} = $authby->{'firstname'}; - $inner_line{firstname} = $authby->{'surname'}; - $inner_line{creationdate} = format_date( $orders->[$i2]{'creationdate'} ); - $inner_line{closedate} = format_date( $orders->[$i2]{'closedate'} ); - $inner_line{uncertainprice} = $orders->[$i2]{'uncertainprice'}; - push @loop_basket, \%inner_line; +my $loop_suppliers = []; + +for my $vendor (@suppliers) { + my $baskets = get_vendors_baskets( $vendor->{id} ); + + my $loop_basket = []; + for my $basket ( @{$baskets} ) { + if (( $basket->{authorisedby} + && $basket->{authorisedby} eq $loggedinuser + ) + || haspermission( $uid, { flagsrequired => { acquisition => q{*} } } ) + ) { + for my $date_field (qw( creationdate closedate)) { + if ( $basket->{$date_field} ) { + $basket->{$date_field} = + format_date( $basket->{$date_field} ); + } + } + push @{$loop_basket}, $basket; } } - $line{loop_basket} = \@loop_basket; - push @loop_suppliers, \%line; + + push @{$loop_suppliers}, + { loop_basket => $loop_basket, + supplierid => $vendor->{id}, + name => $vendor->{name}, + active => $vendor->{active}, + }; + } $template->param( - loop_suppliers => \@loop_suppliers, - supplier => ($id || $supplier), - count => $count, + loop_suppliers => $loop_suppliers, + supplier => ( $id || $supplier ), + count => $supplier_count, ); output_html_with_http_headers $query, $cookie, $template->output; + +sub get_vendors_baskets { + my $supplier_id = shift; + my $dbh = C4::Context->dbh; + my $sql = <<'ENDSQL'; +select aqbasket.*, count(*) as total, borrowers.firstname, borrowers.surname +from aqbasket left join aqorders on aqorders.basketno = aqbasket.basketno +left join borrowers on aqbasket.authorisedby = borrowers.borrowernumber +where booksellerid = ? +AND ( aqorders.quantity > aqorders.quantityreceived OR quantityreceived IS NULL) +AND datecancellationprinted IS NULL +group by basketno +ENDSQL + return $dbh->selectall_arrayref( $sql, { Slice => {} }, $supplier_id ); +} -- 1.7.1.1 From M.de.Rooy at rijksmuseum.nl Wed Jul 28 16:01:59 2010 From: M.de.Rooy at rijksmuseum.nl (Marcel de Rooy) Date: Wed, 28 Jul 2010 14:01:59 +0000 Subject: [Koha-patches] [PATCH] Bug 5066 (Incorrect use of localtime function when calling _session_log) for 3.0.x only Message-ID: <32857065C79E3F4E8FDFBB0CAC6897F702946A59@S-MAIL-1B.rijksmuseum.intra> This patch applies to 3.0.x only and solves a little bug in using the localtime function when writing to tmp/sessionlog. It should be called in scalar context iinstead of list context. --- C4/Auth.pm | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/C4/Auth.pm b/C4/Auth.pm index c50658c..108d9e3 100644 --- a/C4/Auth.pm +++ b/C4/Auth.pm @@ -564,7 +564,7 @@ sub checkauth { $session->flush; $session->delete(); C4::Context->_unset_userenv($sessionID); - _session_log(sprintf "%20s from %16s logged out at %30s (manually).\n", $userid,$ip,localtime); + _session_log(sprintf "%20s from %16s logged out at %30s (manually).\n", $userid,$ip,scalar localtime); $sessionID = undef; $userid = undef; } @@ -573,7 +573,7 @@ sub checkauth { $info{'timed_out'} = 1; $session->delete(); C4::Context->_unset_userenv($sessionID); - _session_log(sprintf "%20s from %16s logged out at %30s (inactivity).\n", $userid,$ip,localtime); + _session_log(sprintf "%20s from %16s logged out at %30s (inactivity).\n", $userid,$ip,scalar localtime); $userid = undef; $sessionID = undef; } @@ -584,7 +584,7 @@ sub checkauth { $info{'different_ip'} = 1; $session->delete(); C4::Context->_unset_userenv($sessionID); - _session_log(sprintf "%20s from %16s logged out at %30s (ip changed to %16s).\n", $userid,$ip,localtime, $info{'newip'}); + _session_log(sprintf "%20s from %16s logged out at %30s (ip changed to %16s).\n", $userid,$ip,scalar localtime, $info{'newip'}); $sessionID = undef; $userid = undef; } @@ -611,7 +611,7 @@ sub checkauth { my $password = $query->param('password'); my ( $return, $cardnumber ) = checkpw( $dbh, $userid, $password ); if ($return) { - _session_log(sprintf "%20s from %16s logged in at %30s.\n", $userid,$ENV{'REMOTE_ADDR'},localtime); + _session_log(sprintf "%20s from %16s logged in at %30s.\n", $userid,$ENV{'REMOTE_ADDR'},scalar localtime); if ( $flags = haspermission($userid, $flagsrequired) ) { $loggedin = 1; } -- 1.6.0.6 From cnighswonger at foundations.edu Wed Jul 28 20:59:09 2010 From: cnighswonger at foundations.edu (Chris Nighswonger) Date: Wed, 28 Jul 2010 14:59:09 -0400 Subject: [Koha-patches] [PATCH] Bug 3756: Adding the ability to have local use systempreferences Message-ID: <1280343549-9190-1-git-send-email-cnighswonger@foundations.edu> Correcting the systempreferences link on the main intranet page. --- .../prog/en/modules/intranet-main.tmpl | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/intranet-main.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/intranet-main.tmpl index 420d7e1..120ca52 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/intranet-main.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/intranet-main.tmpl @@ -69,7 +69,7 @@

    Koha administration

    Tools

    -- 1.7.0.4 From f.demians at tamil.fr Thu Jul 29 11:31:21 2010 From: f.demians at tamil.fr (=?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Demians?=) Date: Thu, 29 Jul 2010 11:31:21 +0200 Subject: [Koha-patches] [PATCH] Bug 5067 Add a parameter do disable ISBN cleaning Message-ID: <1280395881-1469-1-git-send-email-f.demians@tamil.fr> By default, bulkmarcimport.pl was cleaning hyphens from ISBN in entering biblio records. A new parameter -cleanisbn allows to disable ISBN cleaing. By default, bulkmarcimport.pl continues to remove ISBN hyphens. You have to add -nocleanisbn to disable it explicitely. --- misc/migration_tools/bulkmarcimport.pl | 27 ++++++++++++++------------- 1 files changed, 14 insertions(+), 13 deletions(-) diff --git a/misc/migration_tools/bulkmarcimport.pl b/misc/migration_tools/bulkmarcimport.pl index da0ebf7..8c14928 100755 --- a/misc/migration_tools/bulkmarcimport.pl +++ b/misc/migration_tools/bulkmarcimport.pl @@ -34,6 +34,7 @@ binmode(STDOUT, ":utf8"); my ( $input_marc_file, $number, $offset) = ('',0,0); my ($version, $delete, $test_parameter, $skip_marc8_conversion, $char_encoding, $verbose, $commit, $fk_off,$format,$biblios,$authorities,$keepids,$match, $isbn_check, $logfile); my ($sourcetag,$sourcesubfield,$idmapfl); +my $cleanisbn = 1; $|=1; @@ -59,6 +60,7 @@ GetOptions( 'x:s' => \$sourcetag, 'y:s' => \$sourcesubfield, 'idmap:s' => \$idmapfl, + 'cleanisbn!' => \$cleanisbn, ); $biblios=!$authorities||$biblios; @@ -196,19 +198,13 @@ RECORD: while ( ) { } my $isbn; # remove trailing - in isbn (only for biblios, of course) - if ($biblios) { - if ($marcFlavour eq 'UNIMARC') { - if (my $f010 = $record->field('010')) { - $isbn = $f010->subfield('a'); - $isbn =~ s/-//g; - $f010->update('a' => $isbn); - } - } else { - if (my $f020 = $record->field('020')) { - $isbn = $f020->subfield('a'); - $isbn =~ s/-//g; - $f020->update('a' => $isbn); - } + if ($biblios && $cleanisbn) { + my $tag = $marcFlavour eq 'UNIMARC' ? '010' : '020'; + my $field = $record->field($tag); + my $isbn = $field && $field->subfield('a'); + if ( $isbn ) { + $isbn =~ s/-//g; + $field->update('a' => $isbn); } } my $id; @@ -517,6 +513,11 @@ If set, a search will be done on isbn, and, if the same isbn is found, the biblio is not added. It's another method to deduplicate. B<-match> & B<-isbn> can be both set. +=item B<-cleanisbn> + +Clean ISBN fields from entering biblio records, ie removes hyphens. By default, +ISBN are cleaned. --nocleanisbn will keep ISBN unchanged. + =item B<-x>=I Source bib I for reporting the source bib number -- 1.7.1 From M.de.Rooy at rijksmuseum.nl Thu Jul 29 14:46:02 2010 From: M.de.Rooy at rijksmuseum.nl (Marcel de Rooy) Date: Thu, 29 Jul 2010 12:46:02 +0000 Subject: [Koha-patches] [PATCH] Enhancement 5074 (Adding possibility to cleanup_database.pl to purge only older sessions) [for 3.0.x and master] Message-ID: <32857065C79E3F4E8FDFBB0CAC6897F7029473E1@S-MAIL-1B.rijksmuseum.intra> Currently, the misc/cronjobs script cleanup_database truncates the session table (deleting all records, including active sessions). With an additional parameter sessdays, this behavior could be changed or (perhaps better) extended. If the parameter sessdays is passed along with a number of days, the script only deletes older session records. This is accomplished by examining the values of lasttime, atime or ctime in the record. So, calling the script like: ./cleanup_database.pl -v -sessions -sessdays 7 will only delete sessions records older than 7 days. The "old style" call ./cleanup_database.pl -v -sessions still works too and truncates the table as before. Patch can be applied to 3.0.x and master. --- misc/cronjobs/cleanup_database.pl | 46 ++++++++++++++++++++++++++++++++++-- 1 files changed, 43 insertions(+), 3 deletions(-) diff --git a/misc/cronjobs/cleanup_database.pl b/misc/cronjobs/cleanup_database.pl index 47b9c26..f68e3eb 100755 --- a/misc/cronjobs/cleanup_database.pl +++ b/misc/cronjobs/cleanup_database.pl @@ -37,21 +37,23 @@ use Getopt::Long; sub usage { print STDERR < \$help, 'sessions' => \$sessions, + 'sessdays:i' => \$sess_days, 'v|verbose' => \$verbose, 'zebraqueue:i' => \$zebraqueue_days, ) || usage(1); @@ -71,7 +73,7 @@ my $sth; my $sth2; my $count; -if ($sessions) { +if ($sessions && !$sess_days) { #old behavior if ($verbose){ print "Session purge triggered.\n"; $sth = $dbh->prepare("SELECT COUNT(*) FROM sessions"); @@ -85,6 +87,15 @@ if ($sessions) { print "Done with session purge.\n"; } } +elsif($sessions && $sess_days>0) { #new behavior with number of days old + if ($verbose){ + print "Session purge triggered with days>$sess_days.\n"; + } + RemoveOldSessions(); + if ($verbose){ + print "Done with session purge with days>$sess_days.\n"; + } +} if ($zebraqueue_days){ $count = 0; @@ -104,3 +115,32 @@ if ($zebraqueue_days){ } } exit(0); + +sub RemoveOldSessions { + my ($id, $a_session, $limit, $lasttime); + $limit= time() - 24*3600*$sess_days; + + $sth= $dbh->prepare("SELECT id, a_session FROM sessions"); + $sth->execute or die $dbh->errstr; + $sth->bind_columns(\$id, \$a_session); + $sth2 = $dbh->prepare("DELETE FROM sessions WHERE id=?"); + $count=0; + + while ($sth->fetch) { + $lasttime=0; + if($a_session =~ /lasttime:\s+(\d+)/) { + $lasttime= $1; + } + elsif($a_session =~ /(ATIME|CTIME):\s+(\d+)/ ) { + $lasttime= $2; + } + if($lasttime && $lasttime < $limit) { + $sth2->execute($id) or die $dbh->errstr; + $count++; + } + } + if ($verbose){ + print "$count sessions were deleted.\n"; + } +} + -- 1.6.0.6 From f.demians at tamil.fr Thu Jul 29 16:12:27 2010 From: f.demians at tamil.fr (=?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Demians?=) Date: Thu, 29 Jul 2010 16:12:27 +0200 Subject: [Koha-patches] [PATCH] Bug 4305 Get Amazon book covers for ISBN13 Message-ID: <1280412747-15662-1-git-send-email-f.demians@tamil.fr> The way Koha get book cover from Amazon doesn't work from biblio records having ISBN13 because Amazon expect an ISBN10. This patch transforms ISBN13 into ISBN10 before sending it to Amazon. Warning! On some devel installations, you will have to install by hand a new CPAN depency: Business::ISBN --- C4/Installer/PerlDependencies.pm | 5 +++++ C4/Koha.pm | 21 ++++++++------------- install_misc/apt-get-debian-lenny.sh | 1 + 3 files changed, 14 insertions(+), 13 deletions(-) diff --git a/C4/Installer/PerlDependencies.pm b/C4/Installer/PerlDependencies.pm index 19a84a0..3ac49dc 100644 --- a/C4/Installer/PerlDependencies.pm +++ b/C4/Installer/PerlDependencies.pm @@ -464,6 +464,11 @@ our $PERL_DEPS = { 'required' => '0', 'min_ver' => '0.97', }, + 'Business::ISBN' => { + 'usage' => 'Core', + 'required' => '0', + 'min_ver' => '2.05', + }, }; 1; diff --git a/C4/Koha.pm b/C4/Koha.pm index cb93034..fb27ee2 100644 --- a/C4/Koha.pm +++ b/C4/Koha.pm @@ -24,6 +24,7 @@ use C4::Context; use C4::Output; use URI::Split qw(uri_split); use Memoize; +use Business::ISBN; use vars qw($VERSION @ISA @EXPORT $DEBUG); @@ -1235,6 +1236,7 @@ sub GetNormalizedUPC { } # Normalizes and returns the first valid ISBN found in the record +# ISBN13 are converted into ISBN10. This is required to get Amazon cover book. sub GetNormalizedISBN { my ($isbn,$record,$marcflavour) = @_; my @fields; @@ -1321,19 +1323,12 @@ sub _normalize_match_point { } sub _isbn_cleanup ($) { - my $normalized_isbn = shift; - $normalized_isbn =~ s/-//g; - $normalized_isbn =~/([0-9x]{1,})/i; - $normalized_isbn = $1; - if ( - $normalized_isbn =~ /\b(\d{13})\b/ or - $normalized_isbn =~ /\b(\d{12})\b/i or - $normalized_isbn =~ /\b(\d{10})\b/ or - $normalized_isbn =~ /\b(\d{9}X)\b/i - ) { - return $1; - } - return undef; + my $isbn = Business::ISBN->new( shift ); + return undef unless $isbn; + $isbn = $isbn->as_isbn10 if $isbn->type eq 'ISBN13'; + $isbn = $isbn->as_string; + $isbn =~ s/-//g; + return $isbn; } 1; diff --git a/install_misc/apt-get-debian-lenny.sh b/install_misc/apt-get-debian-lenny.sh index 48c53e4..8b90a85 100755 --- a/install_misc/apt-get-debian-lenny.sh +++ b/install_misc/apt-get-debian-lenny.sh @@ -12,6 +12,7 @@ idzebra-2.0 \ idzebra-2.0-utils \ libalgorithm-checkdigits-perl \ libbiblio-endnotestyle-perl \ +libbusiness-isbn-perl \ libcgi-session-perl \ libcgi-session-serialize-yaml-perl \ libclass-accessor-perl \ -- 1.7.1