Bugzilla – Attachment 157818 Details for
Bug 33217
Allow different default sorting when click author links
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 33217: Allow specifiying sort field and order for authro links
Bug-33217-Allow-specifiying-sort-field-and-order-f.patch (text/plain), 21.50 KB, created by
ByWater Sandboxes
on 2023-10-25 15:30:36 UTC
(
hide
)
Description:
Bug 33217: Allow specifiying sort field and order for authro links
Filename:
MIME Type:
Creator:
ByWater Sandboxes
Created:
2023-10-25 15:30:36 UTC
Size:
21.50 KB
patch
obsolete
>From e94de51d70aab7307a75f797991585c3191ab2bb Mon Sep 17 00:00:00 2001 >From: Nick Clemens <nick@bywatersolutions.com> >Date: Mon, 13 Mar 2023 19:45:49 +0000 >Subject: [PATCH] Bug 33217: Allow specifiying sort field and order for authro > links > >When using the facets for author, i.e. limiting a search, it makes sense to preserve the default sort order for the results (relevance, etc) > >When clicking on an author to search the catalog for all works by an author, it would be nice to be able to optionally specify sorting for the listing - i.e. publication date, or title > >This patch adds two new system preferences: >AuthorLinkSortBy >AuthorLinkSortOrder > >To test: >1 - Do a search in intranet and staff for 'austen' > or an author you have multiple titles from >2 - Click the linked name >3 - Note a new search is performed, sorted by field from > defaultSortField preference >4 - Apply patch, updatedatabase, restart_all >5 - Ensure nothing has changed by searching again >6 - Set AuthorLinkSortBy to 'date of publication' and > AuthorLinkSortORder to asc >7 - Search again, comfirm links obey sorting specific above >8 - Test other values - confirm links are updated in both staff/opac > and results/details > >Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org> >--- > C4/XSLT.pm | 3 +- > installer/data/mysql/mandatory/sysprefs.sql | 2 ++ > .../modules/admin/preferences/searching.pref | 17 ++++++++++ > .../en/xslt/MARC21slim2intranetDetail.xsl | 31 +++++++++++++++++-- > .../en/xslt/MARC21slim2intranetResults.xsl | 25 +++++++++++++-- > .../en/xslt/MARC21slim2OPACDetail.xsl | 31 +++++++++++++++++-- > .../en/xslt/MARC21slim2OPACResults.xsl | 25 +++++++++++++-- > 7 files changed, 125 insertions(+), 9 deletions(-) > >diff --git a/C4/XSLT.pm b/C4/XSLT.pm >index 6a10206359..aa0684cc35 100644 >--- a/C4/XSLT.pm >+++ b/C4/XSLT.pm >@@ -98,7 +98,8 @@ sub get_xslt_sysprefs { > OPACResultsLibrary OPACShowOpenURL > OpenURLResolverURL OpenURLImageLocation > OPACResultsMaxItems OPACResultsMaxItemsUnavailable OPACResultsUnavailableGroupingBy >- OpenURLText OPACShowMusicalInscripts OPACPlayMusicalInscripts ContentWarningField / ) >+ OpenURLText OPACShowMusicalInscripts OPACPlayMusicalInscripts ContentWarningField >+ AuthorLinkSortBy AuthorLinkSortOrder / ) > { > my $sp = C4::Context->preference( $syspref ); > next unless defined($sp); >diff --git a/installer/data/mysql/mandatory/sysprefs.sql b/installer/data/mysql/mandatory/sysprefs.sql >index 6af4e7b210..0a8bfbff34 100644 >--- a/installer/data/mysql/mandatory/sysprefs.sql >+++ b/installer/data/mysql/mandatory/sysprefs.sql >@@ -75,6 +75,8 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` > ('AuthorityXSLTOpacDetailsDisplay','','','Enable XSL stylesheet control over authority details page in the OPAC','Free'), > ('AuthorityXSLTOpacResultsDisplay','','','Enable XSL stylesheet control over authority results page in the OPAC','Free'), > ('AuthorityXSLTResultsDisplay','','','Enable XSL stylesheet control over authority results page display on intranet','Free'), >+('AuthorLinkSortBy','default','call_number|pubdate|acqdate|title','Specify the default field used for sorting when click author links','Choice'), >+('AuthorLinkSortOrder','asc','asc|dsc|az|za','Specify the default sort order for author links','Choice'), > ('AuthSuccessLog','0',NULL,'If enabled, log successful authentications','YesNo'), > ('autoBarcode','OFF','incremental|annual|hbyymmincr|EAN13|OFF','Used to autogenerate a barcode: incremental will be of the form 1, 2, 3; annual of the form 2007-0001, 2007-0002; hbyymmincr of the form HB08010001 where HB=Home Branch','Choice'), > ('autoControlNumber','OFF','biblionumber|OFF','Used to autogenerate a Control Number: biblionumber will be as biblionumber, OFF will leave the field as it is;','Choice'), >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/searching.pref b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/searching.pref >index 93084ee641..2ef55887dd 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/searching.pref >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/searching.pref >@@ -174,6 +174,23 @@ Searching: > dsc: descending. > az: from A to Z. > za: from Z to A. >+ - >+ - By default, sort search results from author links by >+ - pref: AuthorLinkSortBy >+ default: default >+ choices: >+ default: obey default sort field and order specified in defaultSortField or OPACdefaultSortField >+ call_number: call number >+ pubdate: date of publication >+ acqdate: date added >+ title: title >+ - ',' >+ - pref: AuthorLinkSortOrder >+ choices: >+ asc: ascending. >+ dsc: descending. >+ az: from A to Z. >+ za: from Z to A. > - > - When limiting search results with a library or library group, limit by the item's > - pref: SearchLimitLibrary >diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl >index 4428d3f6ca..ef97b98579 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl >+++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl >@@ -24,6 +24,8 @@ > <xsl:variable name="OPACBaseURL" select="marc:sysprefs/marc:syspref[@name='OPACBaseURL']"/> > <xsl:variable name="SubjectModifier"><xsl:if test="marc:sysprefs/marc:syspref[@name='TraceCompleteSubfields']='1'">,complete-subfield</xsl:if></xsl:variable> > <xsl:variable name="UseAuthoritiesForTracings" select="marc:sysprefs/marc:syspref[@name='UseAuthoritiesForTracings']"/> >+ <xsl:variable name="AuthorLinkSortBy" select="marc:sysprefs/marc:syspref[@name='AuthorLinkSortBy']"/> >+ <xsl:variable name="AuthorLinkSortOrder" select="marc:sysprefs/marc:syspref[@name='AuthorLinkSortOrder']"/> > <xsl:variable name="TraceSubjectSubdivisions" select="marc:sysprefs/marc:syspref[@name='TraceSubjectSubdivisions']"/> > <xsl:variable name="Show856uAsImage" select="marc:sysprefs/marc:syspref[@name='Display856uAsImage']"/> > <xsl:variable name="DisplayIconsXSLT" select="marc:sysprefs/marc:syspref[@name='DisplayIconsXSLT']"/> >@@ -155,12 +157,16 @@ > <xsl:call-template name="showAuthor"> > <xsl:with-param name="authorfield" select="marc:datafield[@tag=100 or @tag=110 or @tag=111]"/> > <xsl:with-param name="UseAuthoritiesForTracings" select="$UseAuthoritiesForTracings"/> >+ <xsl:with-param name="AuthorLinkSortOrder" select="$AuthorLinkSortOrder"/> >+ <xsl:with-param name="AuthorLinkSortBy" select="$AuthorLinkSortBy"/> > </xsl:call-template> > > <!-- #13382 Suppress 700$i and 7xx/@ind2=2 --> > <xsl:call-template name="showAuthor"> > <xsl:with-param name="authorfield" select="marc:datafield[(@tag=700 or @tag=710 or @tag=711) and not(@ind2=2) and not(marc:subfield[@code='i'])]"/> > <xsl:with-param name="UseAuthoritiesForTracings" select="$UseAuthoritiesForTracings"/> >+ <xsl:with-param name="AuthorLinkSortOrder" select="$AuthorLinkSortOrder"/> >+ <xsl:with-param name="AuthorLinkSortBy" select="$AuthorLinkSortBy"/> > </xsl:call-template> > > <xsl:if test="$DisplayIconsXSLT!='0' and $materialTypeCode!=''"> >@@ -1608,6 +1614,8 @@ > <xsl:template name="showAuthor"> > <xsl:param name="authorfield"/> > <xsl:param name="UseAuthoritiesForTracings"/> >+ <xsl:param name="AuthorLinkSortBy"/> >+ <xsl:param name="AuthorLinkSortOrder"/> > <xsl:if test="count($authorfield)>0"> > <h5 class="author"> > <xsl:for-each select="$authorfield"> >@@ -1621,10 +1629,29 @@ > <a> > <xsl:choose> > <xsl:when test="marc:subfield[@code=9] and $UseAuthoritiesForTracings='1'"> >- <xsl:attribute name="href">/cgi-bin/koha/catalogue/search.pl?q=an:<xsl:value-of select="str:encode-uri(marc:subfield[@code=9], true())"/></xsl:attribute> >+ <xsl:attribute name="href"> >+ <xsl:text>/cgi-bin/koha/catalogue/search.pl?q=an:</xsl:text> >+ <xsl:value-of select="str:encode-uri(marc:subfield[@code=9], true())"/> >+ <xsl:if test="$AuthorLinkSortBy!='default'"> >+ <xsl:text>&sort_by=</xsl:text> >+ <xsl:value-of select="$AuthorLinkSortBy"/> >+ <xsl:text>_</xsl:text> >+ <xsl:value-of select="$AuthorLinkSortOrder"/> >+ </xsl:if> >+ </xsl:attribute> > </xsl:when> > <xsl:otherwise> >- <xsl:attribute name="href">/cgi-bin/koha/catalogue/search.pl?q=au:"<xsl:value-of select="str:encode-uri(marc:subfield[@code='a'], true())"/>"</xsl:attribute> >+ <xsl:attribute name="href"> >+ <xsl:text>/cgi-bin/koha/catalogue/search.pl?q=au:"</xsl:text> >+ <xsl:value-of select="str:encode-uri(marc:subfield[@code='a'], true())"/> >+ <xsl:text>"</xsl:text> >+ <xsl:if test="$AuthorLinkSortBy!='default'"> >+ <xsl:text>&sort_by=</xsl:text> >+ <xsl:value-of select="$AuthorLinkSortBy"/> >+ <xsl:text>_</xsl:text> >+ <xsl:value-of select="$AuthorLinkSortOrder"/> >+ </xsl:if> >+ </xsl:attribute> > </xsl:otherwise> > </xsl:choose> > <xsl:choose> >diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetResults.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetResults.xsl >index 5dbf57d1e7..ac1a7c54aa 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetResults.xsl >+++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetResults.xsl >@@ -24,6 +24,8 @@ > <xsl:variable name="AlternateHoldingsSubfields" select="substring(marc:sysprefs/marc:syspref[@name='AlternateHoldingsField'], 4)"/> > <xsl:variable name="AlternateHoldingsSeparator" select="marc:sysprefs/marc:syspref[@name='AlternateHoldingsSeparator']"/> > <xsl:variable name="UseAuthoritiesForTracings" select="marc:sysprefs/marc:syspref[@name='UseAuthoritiesForTracings']"/> >+ <xsl:variable name="AuthorLinkSortBy" select="marc:sysprefs/marc:syspref[@name='AuthorLinkSortBy']"/> >+ <xsl:variable name="AuthorLinkSortOrder" select="marc:sysprefs/marc:syspref[@name='AuthorLinkSortOrder']"/> > <xsl:variable name="DisplayIconsXSLT" select="marc:sysprefs/marc:syspref[@name='DisplayIconsXSLT']"/> > <xsl:variable name="IntranetBiblioDefaultView" select="marc:sysprefs/marc:syspref[@name='IntranetBiblioDefaultView']"/> > <xsl:variable name="OpacSuppression" select="marc:sysprefs/marc:syspref[@name='OpacSuppression']"/> >@@ -350,10 +352,29 @@ > <a> > <xsl:choose> > <xsl:when test="marc:subfield[@code=9] and $UseAuthoritiesForTracings='1'"> >- <xsl:attribute name="href">/cgi-bin/koha/catalogue/search.pl?q=an:<xsl:value-of select="str:encode-uri(marc:subfield[@code=9], true())"/></xsl:attribute> >+ <xsl:attribute name="href"> >+ <xsl:text>/cgi-bin/koha/catalogue/search.pl?q=an:</xsl:text> >+ <xsl:value-of select="str:encode-uri(marc:subfield[@code=9], true())"/> >+ <xsl:if test="$AuthorLinkSortBy!='default'"> >+ <xsl:text>&sort_by=</xsl:text> >+ <xsl:value-of select="$AuthorLinkSortBy"/> >+ <xsl:text>_</xsl:text> >+ <xsl:value-of select="$AuthorLinkSortOrder" /> >+ </xsl:if> >+ </xsl:attribute> > </xsl:when> > <xsl:otherwise> >- <xsl:attribute name="href">/cgi-bin/koha/catalogue/search.pl?q=au:"<xsl:value-of select="str:encode-uri(marc:subfield[@code='a'], true())"/>"</xsl:attribute> >+ <xsl:attribute name="href"> >+ <xsl:text>/cgi-bin/koha/catalogue/search.pl?q=au:"</xsl:text> >+ <xsl:value-of select="str:encode-uri(marc:subfield[@code='a'], true())"/> >+ <xsl:text>"</xsl:text> >+ <xsl:if test="$AuthorLinkSortBy!='default'"> >+ <xsl:text>&sort_by=</xsl:text> >+ <xsl:value-of select="$AuthorLinkSortBy"/> >+ <xsl:text>_</xsl:text> >+ <xsl:value-of select="$AuthorLinkSortOrder" /> >+ </xsl:if> >+ </xsl:attribute> > </xsl:otherwise> > </xsl:choose> > <xsl:call-template name="chopPunctuation"> >diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACDetail.xsl b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACDetail.xsl >index 047d56eae1..31af6ee9a4 100644 >--- a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACDetail.xsl >+++ b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACDetail.xsl >@@ -26,6 +26,8 @@ > > <xsl:variable name="SubjectModifier"><xsl:if test="marc:sysprefs/marc:syspref[@name='TraceCompleteSubfields']='1'">,complete-subfield</xsl:if></xsl:variable> > <xsl:variable name="UseAuthoritiesForTracings" select="marc:sysprefs/marc:syspref[@name='UseAuthoritiesForTracings']"/> >+ <xsl:variable name="AuthorLinkSortBy" select="marc:sysprefs/marc:syspref[@name='AuthorLinkSortBy']"/> >+ <xsl:variable name="AuthorLinkSortOrder" select="marc:sysprefs/marc:syspref[@name='AuthorLinkSortOrder']"/> > <xsl:variable name="TraceSubjectSubdivisions" select="marc:sysprefs/marc:syspref[@name='TraceSubjectSubdivisions']"/> > <xsl:variable name="Show856uAsImage" select="marc:sysprefs/marc:syspref[@name='OPACDisplay856uAsImage']"/> > <xsl:variable name="OPACTrackClicks" select="marc:sysprefs/marc:syspref[@name='TrackClicks']"/> >@@ -174,6 +176,8 @@ > <xsl:call-template name="showAuthor"> > <xsl:with-param name="authorfield" select="marc:datafield[(@tag=100 or @tag=110 or @tag=111)]"/> > <xsl:with-param name="UseAuthoritiesForTracings" select="$UseAuthoritiesForTracings"/> >+ <xsl:with-param name="AuthorLinkSortOrder" select="$AuthorLinkSortOrder"/> >+ <xsl:with-param name="AuthorLinkSortBy" select="$AuthorLinkSortBy"/> > <xsl:with-param name="materialTypeLabel" select="$materialTypeLabel"/> > <xsl:with-param name="theme" select="$theme"/> > </xsl:call-template> >@@ -182,6 +186,8 @@ > <!-- #13382 suppress 700$i and 7xx/@ind2=2 --> > <xsl:with-param name="authorfield" select="marc:datafield[(@tag=700 or @tag=710 or @tag=711) and not(@ind2=2) and not(marc:subfield[@code='i'])]"/> > <xsl:with-param name="UseAuthoritiesForTracings" select="$UseAuthoritiesForTracings"/> >+ <xsl:with-param name="AuthorLinkSortOrder" select="$AuthorLinkSortOrder"/> >+ <xsl:with-param name="AuthorLinkSortBy" select="$AuthorLinkSortBy"/> > <xsl:with-param name="materialTypeLabel" select="$materialTypeLabel"/> > <xsl:with-param name="theme" select="$theme"/> > </xsl:call-template> >@@ -1802,6 +1808,8 @@ > <xsl:template name="showAuthor"> > <xsl:param name="authorfield" /> > <xsl:param name="UseAuthoritiesForTracings" /> >+ <xsl:param name="AuthorLinkSortBy"/> >+ <xsl:param name="AuthorLinkSortOrder"/> > <xsl:param name="materialTypeLabel" /> > <xsl:param name="theme" /> > <xsl:if test="count($authorfield)>0"> >@@ -1831,10 +1839,29 @@ > <a> > <xsl:choose> > <xsl:when test="marc:subfield[@code=9] and $UseAuthoritiesForTracings='1'"> >- <xsl:attribute name="href">/cgi-bin/koha/opac-search.pl?q=an:"<xsl:value-of select="str:encode-uri(marc:subfield[@code=9], true())"/>"</xsl:attribute> >+ <xsl:attribute name="href"> >+ <xsl:text>/cgi-bin/koha/opac-search.pl?q=an:</xsl:text> >+ <xsl:value-of select="str:encode-uri(marc:subfield[@code=9], true())"/> >+ <xsl:if test="$AuthorLinkSortBy!='default'"> >+ <xsl:text>&sort_by=</xsl:text> >+ <xsl:value-of select="$AuthorLinkSortBy"/> >+ <xsl:text>_</xsl:text> >+ <xsl:value-of select="$AuthorLinkSortOrder" /> >+ </xsl:if> >+ </xsl:attribute> > </xsl:when> > <xsl:otherwise> >- <xsl:attribute name="href">/cgi-bin/koha/opac-search.pl?q=au:"<xsl:value-of select="str:encode-uri(marc:subfield[@code='a'], true())"/>"</xsl:attribute> >+ <xsl:attribute name="href"> >+ <xsl:text>/cgi-bin/koha/opac-search.pl?q=au:"</xsl:text> >+ <xsl:value-of select="str:encode-uri(marc:subfield[@code='a'], true())"/> >+ <xsl:text>"</xsl:text> >+ <xsl:if test="$AuthorLinkSortBy!='default'"> >+ <xsl:text>&sort_by=</xsl:text> >+ <xsl:value-of select="$AuthorLinkSortBy"/> >+ <xsl:text>_</xsl:text> >+ <xsl:value-of select="$AuthorLinkSortOrder" /> >+ </xsl:if> >+ </xsl:attribute> > </xsl:otherwise> > </xsl:choose> > <xsl:attribute name="class">contributors</xsl:attribute> >diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACResults.xsl b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACResults.xsl >index 0c2b499049..57d8547cc9 100644 >--- a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACResults.xsl >+++ b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACResults.xsl >@@ -28,6 +28,8 @@ > <xsl:variable name="OPACResultsUnavailableGroupingBy" select="marc:sysprefs/marc:syspref[@name='OPACResultsUnavailableGroupingBy']"/> > <xsl:variable name="UseControlNumber" select="marc:sysprefs/marc:syspref[@name='UseControlNumber']"/> > <xsl:variable name="UseAuthoritiesForTracings" select="marc:sysprefs/marc:syspref[@name='UseAuthoritiesForTracings']"/> >+ <xsl:variable name="AuthorLinkSortBy" select="marc:sysprefs/marc:syspref[@name='AuthorLinkSortBy']"/> >+ <xsl:variable name="AuthorLinkSortOrder" select="marc:sysprefs/marc:syspref[@name='AuthorLinkSortOrder']"/> > <xsl:variable name="OPACResultsLibrary" select="marc:sysprefs/marc:syspref[@name='OPACResultsLibrary']"/> > <xsl:variable name="hidelostitems" select="marc:sysprefs/marc:syspref[@name='hidelostitems']"/> > <xsl:variable name="DisplayOPACiconsXSLT" select="marc:sysprefs/marc:syspref[@name='DisplayOPACiconsXSLT']"/> >@@ -525,10 +527,29 @@ > <a> > <xsl:choose> > <xsl:when test="marc:subfield[@code=9] and $UseAuthoritiesForTracings='1'"> >- <xsl:attribute name="href">/cgi-bin/koha/opac-search.pl?q=an:<xsl:value-of select="str:encode-uri(marc:subfield[@code=9], true())"/></xsl:attribute> >+ <xsl:attribute name="href"> >+ <xsl:text>/cgi-bin/koha/opac-search.pl?q=an:</xsl:text> >+ <xsl:value-of select="str:encode-uri(marc:subfield[@code=9], true())"/> >+ <xsl:if test="$AuthorLinkSortBy!='default'"> >+ <xsl:text>&sort_by=</xsl:text> >+ <xsl:value-of select="$AuthorLinkSortBy"/> >+ <xsl:text>_</xsl:text> >+ <xsl:value-of select="$AuthorLinkSortOrder" /> >+ </xsl:if> >+ </xsl:attribute> > </xsl:when> > <xsl:otherwise> >- <xsl:attribute name="href">/cgi-bin/koha/opac-search.pl?q=au:"<xsl:value-of select="str:encode-uri(marc:subfield[@code='a'], true())"/>"</xsl:attribute> >+ <xsl:attribute name="href"> >+ <xsl:text>/cgi-bin/koha/opac-search.pl?q=au:"</xsl:text> >+ <xsl:value-of select="str:encode-uri(marc:subfield[@code='a'], true())"/> >+ <xsl:text>"</xsl:text> >+ <xsl:if test="$AuthorLinkSortBy!='default'"> >+ <xsl:text>&sort_by=</xsl:text> >+ <xsl:value-of select="$AuthorLinkSortBy"/> >+ <xsl:text>_</xsl:text> >+ <xsl:value-of select="$AuthorLinkSortOrder" /> >+ </xsl:if> >+ </xsl:attribute> > </xsl:otherwise> > </xsl:choose> > <xsl:call-template name="chopPunctuation"> >-- >2.30.2
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 33217
:
148142
|
148169
|
157795
|
157796
|
157797
|
157818
|
157819
|
157820
|
158434
|
158435
|
158436
|
158437
|
158438