Bugzilla – Attachment 73820 Details for
Bug 19289
Allow configuration of the fields on the 'Catalog details' form in the acquisition baskets
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 19289: Use the ACQ framework to display bibliographic details
Bug-19289-Use-the-ACQ-framework-to-display-bibliog.patch (text/plain), 28.07 KB, created by
Katrin Fischer
on 2018-04-07 09:08:54 UTC
(
hide
)
Description:
Bug 19289: Use the ACQ framework to display bibliographic details
Filename:
MIME Type:
Creator:
Katrin Fischer
Created:
2018-04-07 09:08:54 UTC
Size:
28.07 KB
patch
obsolete
>From bdafc021284212db8d6883c1d5f120c77437dd61 Mon Sep 17 00:00:00 2001 >From: Jonathan Druart <jonathan.druart@bugs.koha-community.org> >Date: Fri, 13 Oct 2017 17:35:11 -0300 >Subject: [PATCH] Bug 19289: Use the ACQ framework to display bibliographic > details >MIME-Version: 1.0 >Content-Type: text/plain; charset=UTF-8 >Content-Transfer-Encoding: 8bit > >The ACQ MARC framework is only used for the âItemâ block. >This patch add the ability to define biblio fields (!= 995 or 952) to >customize the display of the bibliographic details when ordering. > >This new feature is controlled by a new pref: >UseACQFrameworkForBiblioRecords > >Test plan: >- Create a new installation to populate the ACQ framework correctly >- Set the pref UseACQFrameworkForBiblioRecords to "Use" >- Create a new order >=> You will see the lib from the ACQ framework >- Add/remove/update biblio subfields in the ACQ framework >- Create a new order >=> You should see the new subfields displayed > >Note for QA: I though I would be able to refactor existing code to make >it more flexible, but it is a bit messy and lost a lot of time. I >finally decided to copy/paste the existing code. I simplified it as, I >think, we do not want the plugin, etc. like in the full biblio editor. > >Signed-off-by: Josef Moravec <josef.moravec@gmail.com> > >Signed-off-by: Nicolas Legrand <nicolas.legrand@bulac.fr> > >Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> >--- > acqui/addorder.pl | 43 ++-- > acqui/neworderempty.pl | 118 ++++++++++- > catalogue/ISBDdetail.pl | 2 +- > installer/data/mysql/atomicupdate/bug_19289.sql | 2 + > installer/data/mysql/sysprefs.sql | 1 + > .../prog/en/includes/html_helpers.inc | 12 ++ > .../prog/en/modules/acqui/neworderempty.tt | 223 +++++++++++++-------- > .../en/modules/admin/preferences/acquisitions.pref | 7 + > 8 files changed, 299 insertions(+), 109 deletions(-) > create mode 100644 installer/data/mysql/atomicupdate/bug_19289.sql > >diff --git a/acqui/addorder.pl b/acqui/addorder.pl >index 16fc89c1eb..17b50e6185 100755 >--- a/acqui/addorder.pl >+++ b/acqui/addorder.pl >@@ -138,6 +138,7 @@ use C4::Barcodes; > # not just blindly call C4 functions and print a redirect. > > my $input = new CGI; >+my $use_ACQ_framework = $input->param('use_ACQ_framework'); > > # Check if order total amount exceed allowed budget > my $confirm_budget_exceeding = $input->param('confirm_budget_exceeding'); >@@ -239,21 +240,31 @@ my $basket = Koha::Acquisition::Baskets->find($basketno); > if ( $basket->{is_standing} || $orderinfo->{quantity} ne '0' ) { > #TODO:check to see if biblio exists > unless ( $$orderinfo{biblionumber} ) { >- #if it doesn't create it >- my $record = TransformKohaToMarc( >- { >- "biblio.title" => "$$orderinfo{title}", >- "biblio.author" => $$orderinfo{author} ? $$orderinfo{author} : "", >- "biblio.seriestitle" => $$orderinfo{series} ? $$orderinfo{series} : "", >- "biblioitems.isbn" => $$orderinfo{isbn} ? $$orderinfo{isbn} : "", >- "biblioitems.ean" => $$orderinfo{ean} ? $$orderinfo{ean} : "", >- "biblioitems.publishercode" => $$orderinfo{publishercode} ? $$orderinfo{publishercode} : "", >- "biblioitems.publicationyear" => $$orderinfo{publicationyear} ? $$orderinfo{publicationyear}: "", >- "biblio.copyrightdate" => $$orderinfo{publicationyear} ? $$orderinfo{publicationyear}: "", >- "biblioitems.itemtype" => $$orderinfo{itemtype} ? $$orderinfo{itemtype} : "", >- "biblioitems.editionstatement"=> $$orderinfo{editionstatement} ? $$orderinfo{editionstatement} : "", >- }); > >+ my $record; >+ if ( $use_ACQ_framework ) { >+ my @tags = $input->multi_param('bib_tag'); >+ my @subfields = $input->multi_param('bib_subfield'); >+ my @field_values = $input->multi_param('bib_field_value'); >+ my $xml = TransformHtmlToXml( \@tags, \@subfields, \@field_values ); >+ $record=MARC::Record::new_from_xml($xml, 'UTF-8'); >+ } else { >+ #if it doesn't create it >+ $record = TransformKohaToMarc( >+ { >+ "biblio.title" => "$$orderinfo{title}", >+ "biblio.author" => $$orderinfo{author} ? $$orderinfo{author} : "", >+ "biblio.seriestitle" => $$orderinfo{series} ? $$orderinfo{series} : "", >+ "biblioitems.isbn" => $$orderinfo{isbn} ? $$orderinfo{isbn} : "", >+ "biblioitems.ean" => $$orderinfo{ean} ? $$orderinfo{ean} : "", >+ "biblioitems.publishercode" => $$orderinfo{publishercode} ? $$orderinfo{publishercode} : "", >+ "biblioitems.publicationyear" => $$orderinfo{publicationyear} ? $$orderinfo{publicationyear}: "", >+ "biblio.copyrightdate" => $$orderinfo{publicationyear} ? $$orderinfo{publicationyear}: "", >+ "biblioitems.itemtype" => $$orderinfo{itemtype} ? $$orderinfo{itemtype} : "", >+ "biblioitems.editionstatement"=> $$orderinfo{editionstatement} ? $$orderinfo{editionstatement} : "", >+ }); >+ >+ } > C4::Acquisition::FillWithDefaultValues( $record ); > > # create the record in catalogue, with framework '' >@@ -308,8 +319,8 @@ if ( $basket->{is_standing} || $orderinfo->{quantity} ne '0' ) { > unless ($itemhash{$itemid[$i]}){ > $countdistinct++; > } >- push @{$itemhash{$itemid[$i]}->{'tags'}},$tags[$i]; >- push @{$itemhash{$itemid[$i]}->{'subfields'}},$subfields[$i]; >+ push @{$itemhash{$itemid[$i]}->{'tags'}},$tags[$i]; >+ push @{$itemhash{$itemid[$i]}->{'subfields'}},$subfields[$i]; > push @{$itemhash{$itemid[$i]}->{'field_values'}},$field_values[$i]; > push @{$itemhash{$itemid[$i]}->{'ind_tag'}},$ind_tag[$i]; > push @{$itemhash{$itemid[$i]}->{'indicator'}},$indicator[$i]; >diff --git a/acqui/neworderempty.pl b/acqui/neworderempty.pl >index e9dcc2dda5..54feb36f40 100755 >--- a/acqui/neworderempty.pl >+++ b/acqui/neworderempty.pl >@@ -88,8 +88,12 @@ use C4::ImportBatch qw/GetImportRecordMarc SetImportRecordStatus/; > > use Koha::Acquisition::Booksellers; > use Koha::Acquisition::Currencies; >+use Koha::BiblioFrameworks; >+use Koha::DateUtils qw( dt_from_string ); >+use Koha::MarcSubfieldStructures; > use Koha::ItemTypes; > use Koha::Patrons; >+use Koha::RecordProcessor; > > our $input = new CGI; > my $booksellerid = $input->param('booksellerid'); # FIXME: else ERROR! >@@ -173,21 +177,85 @@ if ( $ordernumber eq '' and defined $params->{'breedingid'}){ > > > >-my ( @order_user_ids, @order_users ); >-if ( $ordernumber eq '' ) { # create order >+my ( @order_user_ids, @order_users, @catalog_details ); >+our $tagslib = GetMarcStructure(1, 'ACQ', { unsafe => 1 } ); >+my ( $itemnumber_tag, $itemnumber_subtag ) = GetMarcFromKohaField( 'items.itemnumber', 'ACQ' ); >+if ( not $ordernumber ) { # create order > $new = 'yes'; > >- # $ordernumber=newordernum; >- if ( $biblionumber && !$suggestionid ) { >+ if ( $biblionumber ) { > $data = GetBiblioData($biblionumber); > } >- >-# get suggestion fields if applicable. If it's a subscription renewal, then the biblio already exists >-# otherwise, retrieve suggestion information. >- if ($suggestionid) { >- $data = ($biblionumber) ? GetBiblioData($biblionumber) : GetSuggestion($suggestionid); >+ # get suggestion fields if applicable. If it's a subscription renewal, then the biblio already exists >+ # otherwise, retrieve suggestion information. >+ elsif ($suggestionid) { >+ $data = GetSuggestion($suggestionid); > $budget_id ||= $data->{'budgetid'} // 0; > } >+ >+ if ( not $biblionumber and Koha::BiblioFrameworks->find('ACQ') ) { >+ #my $acq_mss = Koha::MarcSubfieldStructures->search({ frameworkcode => 'ACQ', tagfield => { '!=' => $itemnumber_tag } }); >+ foreach my $tag ( sort keys %{$tagslib} ) { >+ next if $tag eq ''; >+ next if $tag eq $itemnumber_tag; # skip items fields >+ foreach my $subfield ( sort keys %{ $tagslib->{$tag} } ) { >+ my $mss = $tagslib->{$tag}{$subfield}; >+ next if IsMarcStructureInternal($mss); >+ next if $mss->{tab} == -1; >+ my $value = $mss->{defaultvalue}; >+ >+ if ($suggestionid and $mss->{kohafield}) { >+ # Reading suggestion info if ordering from a suggestion >+ if ( $mss->{kohafield} eq 'biblio.title' ) { >+ $value = $data->{title}; >+ } >+ elsif ( $mss->{kohafield} eq 'biblio.author' ) { >+ $value = $data->{author}; >+ } >+ elsif ( $mss->{kohafield} eq 'biblioitems.publishercode' ) { >+ $value = $data->{publishercode}; >+ } >+ elsif ( $mss->{kohafield} eq 'biblioitems.editionstatement' ) { >+ $value = $data->{editionstatement}; >+ } >+ elsif ( $mss->{kohafield} eq 'biblioitems.publicationyear' ) { >+ $value = $data->{publicationyear}; >+ } >+ elsif ( $mss->{kohafield} eq 'biblioitems.isbn' ) { >+ $value = $data->{isbn}; >+ } >+ elsif ( $mss->{kohafield} eq 'biblio.seriestitle' ) { >+ $value = $data->{seriestitle}; >+ } >+ } >+ >+ if ( $value eq '' ) { >+ >+ # get today date & replace <<YYYY>>, <<MM>>, <<DD>> if provided in the default value >+ my $today_dt = dt_from_string; >+ my $year = $today_dt->strftime('%Y'); >+ my $month = $today_dt->strftime('%m'); >+ my $day = $today_dt->strftime('%d'); >+ $value =~ s/<<YYYY>>/$year/g; >+ $value =~ s/<<MM>>/$month/g; >+ $value =~ s/<<DD>>/$day/g; >+ >+ # And <<USER>> with surname (?) >+ my $username = >+ ( C4::Context->userenv >+ ? C4::Context->userenv->{'surname'} >+ : "superlibrarian" ); >+ $value =~ s/<<USER>>/$username/g; >+ } >+ push @catalog_details, { >+ tag => $tag, >+ subfield => $subfield, >+ %$mss, # Do we need plugins support (?) >+ value => $value, >+ }; >+ } >+ } >+ } > } > else { #modify order > $data = GetOrder($ordernumber); >@@ -205,6 +273,37 @@ else { #modify order > } > } > >+# We can have: >+# - no ordernumber but a biblionumber: from a subscription, from an existing record >+# - no ordernumber, no biblionumber: from a suggestion, from a new order >+if ( not $ordernumber or $biblionumber ) { >+ if ( C4::Context->preference('UseACQFrameworkForBiblioRecords') ) { >+ my $record = $biblionumber ? GetMarcBiblio({ biblionumber => $biblionumber }) : undef; >+ foreach my $tag ( sort keys %{$tagslib} ) { >+ next if $tag eq ''; >+ next if $tag eq $itemnumber_tag; # skip items fields >+ my @fields = $biblionumber ? $record->field($tag) : (); >+ foreach my $subfield ( sort keys %{ $tagslib->{$tag} } ) { >+ my $mss = $tagslib->{$tag}{$subfield}; >+ next if IsMarcStructureInternal($mss); >+ next if $mss->{tab} == -1; >+ # We only need to display the values >+ my $value = join '; ', map { $_->subfield( $subfield ) } @fields; >+ if ( $value ) { >+ push @catalog_details, { >+ tag => $tag, >+ subfield => $subfield, >+ %$mss, >+ value => $value, >+ }; >+ } >+ } >+ } >+ } >+} >+ >+$template->param( catalog_details => \@catalog_details, ); >+ > my $suggestion; > $suggestion = GetSuggestionInfo($suggestionid) if $suggestionid; > >@@ -254,6 +353,7 @@ if ($basketobj->effective_create_items eq 'ordering' && !$ordernumber) { > UniqueItemFields => C4::Context->preference('UniqueItemFields'), > ); > } >+ > # Get the item types list, but only if item_level_itype is YES. Otherwise, it will be in the item, no need to display it in the biblio > my @itemtypes; > @itemtypes = Koha::ItemTypes->search unless C4::Context->preference('item-level_itypes'); >diff --git a/catalogue/ISBDdetail.pl b/catalogue/ISBDdetail.pl >index 27cb699026..71ac8861f6 100755 >--- a/catalogue/ISBDdetail.pl >+++ b/catalogue/ISBDdetail.pl >@@ -97,7 +97,7 @@ my $record_processor = Koha::RecordProcessor->new({ > filters => 'ViewPolicy', > options => { > interface => 'intranet', >- frameworkcode => $framework >+ frameworkcode => 'ACQ' > }, > }); > $record_processor->process($record); >diff --git a/installer/data/mysql/atomicupdate/bug_19289.sql b/installer/data/mysql/atomicupdate/bug_19289.sql >new file mode 100644 >index 0000000000..6cd328f5fa >--- /dev/null >+++ b/installer/data/mysql/atomicupdate/bug_19289.sql >@@ -0,0 +1,2 @@ >+INSERT IGNORE INTO systempreferences (`variable`, `value`, `options`, `explanation`, `type`) >+VALUES ('UseACQFrameworkForBiblioRecords','0','','Use the ACQ framework for the catalog details','YesNo'); >diff --git a/installer/data/mysql/sysprefs.sql b/installer/data/mysql/sysprefs.sql >index d443b3f216..1659915995 100644 >--- a/installer/data/mysql/sysprefs.sql >+++ b/installer/data/mysql/sysprefs.sql >@@ -582,6 +582,7 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` > ('UsageStatsLibraryType', '', 'public|school|academic|research|private|societyAssociation|corporate|government|religiousOrg|subscription', 'The library type to be shown on the Hea Koha community website', 'Choice'), > ('UsageStatsLibraryUrl', '', NULL, 'The library URL to be shown on Hea Koha community website', 'Free'), > ('UsageStatsPublicID', '', NULL, 'Public ID for Hea website', 'Free'), >+('UseACQFrameworkForBiblioRecords','0','','Use the ACQ framework for the catalog details','YesNo'), > ('UseAuthoritiesForTracings','1','0','Use authority record numbers for subject tracings instead of heading strings.','YesNo'), > ('UseBranchTransferLimits','0','','If ON, Koha will will use the rules defined in branch_transfer_limits to decide if an item transfer should be allowed.','YesNo'), > ('UseControlNumber','0','','If ON, record control number (w subfields) and control number (001) are used for linking of bibliographic records.','YesNo'), >diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/html_helpers.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/html_helpers.inc >index 01027204c6..bef96284ff 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/includes/html_helpers.inc >+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/html_helpers.inc >@@ -17,3 +17,15 @@ > [% END %] > [% END %] > [% END %] >+ >+[% BLOCK options_for_item_types %] >+ [% FOREACH itemtype IN itemtypes %] >+ [% IF itemtype.itemtype == selected_itemtype %] >+ <option value="[% itemtype.itemtype %]" selected="selected"> >+ [% ELSE %] >+ <option value="[% itemtype.itemtype %]"> >+ [% END %] >+ [% itemtype.translated_description %] >+ </option> >+ [% END %] >+[% END %] >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderempty.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderempty.tt >index f9b4a15dcb..9c5d689f2a 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderempty.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/neworderempty.tt >@@ -115,95 +115,121 @@ > <input type="hidden" id="currency_rate_[% c.currency %]" name="[% c.currency %]" value="[% c.rate %]" /> > [% END %] > >- <ol><li> >- [% IF ( biblionumber ) %] >- <span class="label">Title</span> >- <input type="hidden" name="title" value="[% title |html %]" /> <span class="title">[% title |html %]</span> >- [% ELSE %] >- <label for="entertitle" class="required">Title: </label> >- <input type="text" id="entertitle" size="50" name="title" value="[% title |html %]" class="focus" /> >- <span class="required">Required</span> >- [% END %] >- </li> >- <li> >- [% IF ( biblionumber ) %] >- <span class="label">Author: </span> >- <input type="hidden" name="author" id="author" value="[% author %]" />[% author %] >- [% ELSE %] >- <label for="author">Author: </label> >- <input type="text" size="50" name="author" id="author" value="[% author %]" /> >- [% END %] >- </li> >- <li> >- [% IF ( biblionumber ) %] >- <span class="label">Publisher: </span> >- <input type="hidden" name="publishercode" id="publishercode" value="[% publishercode %]" />[% publishercode %] >- [% ELSE %] >- <label for="publishercode"> Publisher: </label> >- <input type="text" size="50" name="publishercode" id="publishercode" value="[% publishercode %]" /> >- [% END %] >- </li> >- <li> >- [% IF ( biblionumber ) %] >- <span class="label">Edition: </span> >- <input type="hidden" name="editionstatement" id="editionstatement" value="[% editionstatement %]" />[% editionstatement %] >+ [% IF NOT Koha.Preference('UseACQFrameworkForBiblioRecords') OR NoACQframework %] >+ <ol><li> >+ [% IF ( biblionumber ) %] >+ <span class="label">Title</span> >+ <input type="hidden" name="title" value="[% title |html %]" /> <span class="title">[% title |html %]</span> >+ [% ELSE %] >+ <label for="entertitle" class="required">Title: </label> >+ <input type="text" id="entertitle" size="50" name="title" value="[% title |html %]" class="focus" /> >+ <span class="required">Required</span> >+ [% END %] >+ </li> >+ <li> >+ [% IF ( biblionumber ) %] >+ <span class="label">Author: </span> >+ <input type="hidden" name="author" id="author" value="[% author %]" />[% author %] >+ [% ELSE %] >+ <label for="author">Author: </label> >+ <input type="text" size="50" name="author" id="author" value="[% author %]" /> >+ [% END %] >+ </li> >+ <li> >+ [% IF ( biblionumber ) %] >+ <span class="label">Publisher: </span> >+ <input type="hidden" name="publishercode" id="publishercode" value="[% publishercode %]" />[% publishercode %] >+ [% ELSE %] >+ <label for="publishercode"> Publisher: </label> >+ <input type="text" size="50" name="publishercode" id="publishercode" value="[% publishercode %]" /> >+ [% END %] >+ </li> >+ <li> >+ [% IF ( biblionumber ) %] >+ <span class="label">Edition: </span> >+ <input type="hidden" name="editionstatement" id="editionstatement" value="[% editionstatement %]" />[% editionstatement %] > >- [% ELSE %] >- <label for="editionstatement">Edition: </label> >- <input type="text" size="20" name="editionstatement" id="editionstatement" value="[% editionstatement %]" /> >- [% END %] >- </li> >- <li> >- [% IF ( biblionumber ) %] >- <span class="label">Publication year: </span> >- <input type="hidden" name="publicationyear" id="publicationyear" value="[% publicationyear %]" />[% publicationyear %] >- [% ELSE %] >- <label for="publicationyear">Publication year: </label> >- <input type="text" size="10" name="publicationyear" id="publicationyear" value="[% publicationyear %]" /> >- [% END %] >- </li> >- <li> >- [% IF ( biblionumber ) %] >- <span class="label">ISBN: </span> >- <input type="hidden" name="isbn" id="ISBN" value="[% isbn %]" />[% isbn %] >- [% ELSE %] >- <label for="ISBN">ISBN: </label> >- <input type="text" size="50" name="isbn" id="ISBN" value="[% isbn %]" /> >- [% END %] >- </li> >- [% IF (UNIMARC) %] >- <li> >- [% IF ( biblionumber ) %] >- <span class="label">EAN: </span> >- <input type="hidden" name="ean" id="EAN" value="[% ean %]" />[% ean %] >- [% ELSE %] >- <label for="EAN">EAN: </label> >- <input type="text" size="20" name="ean" id="EAN" value="[% ean %]" /> >- [% END %] >- </li> >- [% END %] >- <li> >- [% IF ( biblionumber ) %] >- <span class="label">Series: </span> >- <input type="hidden" name="series" id="series" value="[% seriestitle %]" />[% seriestitle %] >- [% ELSE %] >- <label for="series">Series: </label> >- <input type="text" size="50" name="series" id="series" value="[% seriestitle %]" /> >- [% END %] >- </li> >- [% UNLESS ( biblionumber ) %] >- [% IF ( itemtypeloop ) %] >+ [% ELSE %] >+ <label for="editionstatement">Edition: </label> >+ <input type="text" size="20" name="editionstatement" id="editionstatement" value="[% editionstatement %]" /> >+ [% END %] >+ </li> > <li> >- <span class="label">Item type:</span> >- <select name="itemtype" style="width:12em;"> >- [% FOREACH itemtype IN itemtypeloop %] >- <option value="[% itemtype.itemtype %]">[% itemtype.description %]</option> >+ [% IF ( biblionumber ) %] >+ <span class="label">Publication year: </span> >+ <input type="hidden" name="publicationyear" id="publicationyear" value="[% publicationyear %]" />[% publicationyear %] >+ [% ELSE %] >+ <label for="publicationyear">Publication year: </label> >+ <input type="text" size="10" name="publicationyear" id="publicationyear" value="[% publicationyear %]" /> >+ [% END %] >+ </li> >+ <li> >+ [% IF ( biblionumber ) %] >+ <span class="label">ISBN: </span> >+ <input type="hidden" name="isbn" id="ISBN" value="[% isbn %]" />[% isbn %] >+ [% ELSE %] >+ <label for="ISBN">ISBN: </label> >+ <input type="text" size="50" name="isbn" id="ISBN" value="[% isbn %]" /> >+ [% END %] >+ </li> >+ [% IF (UNIMARC) %] >+ <li> >+ [% IF ( biblionumber ) %] >+ <span class="label">EAN: </span> >+ <input type="hidden" name="ean" id="EAN" value="[% ean %]" />[% ean %] >+ [% ELSE %] >+ <label for="EAN">EAN: </label> >+ <input type="text" size="20" name="ean" id="EAN" value="[% ean %]" /> > [% END %] >- </select> > </li> > [% END %] >+ <li> >+ [% IF ( biblionumber ) %] >+ <span class="label">Series: </span> >+ <input type="hidden" name="series" id="series" value="[% seriestitle %]" />[% seriestitle %] >+ [% ELSE %] >+ <label for="series">Series: </label> >+ <input type="text" size="50" name="series" id="series" value="[% seriestitle %]" /> >+ [% END %] >+ </li> >+ [% UNLESS ( biblionumber ) %] >+ [% IF ( itemtypeloop ) %] >+ <li> >+ <span class="label">Item type:</span> >+ <select name="itemtype" style="width:12em;"> >+ [% FOREACH itemtype IN itemtypeloop %] >+ <option value="[% itemtype.itemtype %]">[% itemtype.description %]</option> >+ [% END %] >+ </select> >+ </li> >+ [% END %] >+ [% END %] >+ </ol> >+ [% ELSE %] >+ <input type="hidden" name="use_ACQ_framework" value="1" /> >+ [% IF biblionumber %] >+ <ol> >+ [% FOREACH field IN catalog_details %] >+ <li> >+ <div class="subfield_line"> >+ <label>[% field.lib %] ([% field.tag %][% field.subfield %])</label> >+ [% field.value %] >+ </div> >+ </li> >+ [% END %] >+ </ol> >+ [% ELSE %] >+ <ol> >+ [% FOREACH field IN catalog_details %] >+ <li> >+ <div class="subfield_line"> >+ [% PROCESS display_subfield field=field %] >+ </div> >+ </li> >+ [% END %] >+ </ol> > [% END %] >- </ol> >+ [% END %] > </fieldset> > > [% IF ( suggestionid ) %] >@@ -679,3 +705,34 @@ > [% END %] > > [% INCLUDE 'intranet-bottom.inc' %] >+ >+[% BLOCK display_subfield %] >+ [% IF field.mandatory %] >+ <label class="required">[% field.lib %] ([% field.tag %][% field.subfield %])</label> >+ [% ELSE %] >+ <label>[% field.lib %] ([% field.tag %][% field.subfield %])</label> >+ [% END %] >+ [% IF field.authorised_value %] >+ [% SWITCH field.authorised_value %] >+ [% CASE 'branches' %] >+ <select name="bib_field_value"> >+ <option value=""></option> >+ [% PROCESS options_for_libraries libraries => Branches.all( selected => "FIXME" ) %] >+ </select> >+ [% CASE 'itemtypes' %] >+ <select name="bib_field_value"> >+ <option value=""></option> >+ [% PROCESS options_for_itemtypes itemtypes => ItemTypes.Get(), selected_itemtype => "FIXME" %] >+ </select> >+ [% CASE 'cn_source' %] >+ [% CASE %] >+ [% PROCESS 'av-build-dropbox.inc' name="bib_field_value", category=field.authorised_value, default="FIXME" %] >+ [% END %] >+ [% ELSE %] >+ <input type="text" name="bib_field_value" value="[% field.value %]" /> >+ [% END %] >+ <input type="hidden" name="bib_kohafield" value="[% field.kohafield %]" /> >+ <input type="hidden" name="bib_tag" value="[% field.tag %]" /> >+ <input type="hidden" name="bib_subfield" value="[% field.subfield %]" /> >+ [% IF field.mandatory %] <span class="required">Required</span>[% END %] >+[% END %] >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 ac63e2c2f2..bf5d4bb6bd 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 >@@ -85,6 +85,13 @@ Acquisitions: > - "<br>Example: [30] Sets purgation of suggestions for those older than 30 days." > - <br>(Used when the cronjob purge_suggestions.pl is active and called without a specific number of days) > >+ - >+ - pref: UseACQFrameworkForBiblioRecords >+ default: no >+ choices: >+ yes: "Use" >+ no: "Don't use" >+ - " the framework 'ACQ' for bibliographic records fields" > Printing: > - > - Use the >-- >2.14.1
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 19289
:
68640
|
68641
|
68810
|
68811
|
69015
|
69016
|
69114
|
69115
|
70706
|
70765
|
72256
|
72257
|
72258
|
72259
|
73800
|
73819
| 73820 |
73821
|
73822
|
73823
|
73878
|
73948
|
73994