LP#1772680: Fixed issues with advanced search, Tab name, and wishlist
authorJaswinder Singh <jaswinder.singh0011@gmail.com>
Sun, 22 Jul 2018 23:00:40 +0000 (19:00 -0400)
committerChris Sharp <csharp@georgialibraries.org>
Tue, 14 Aug 2018 19:40:21 +0000 (15:40 -0400)
Signed-off-by: Jaswinder Singh <jaswinder.singh0011@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Open-ILS/src/perlmods/lib/OpenILS/Application/EbookAPI/RBDigital.pm
Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm
Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/RBDigitalSearch.pm
Open-ILS/src/templates/opac/parts/myopac/base.tt2
Open-ILS/src/templates/opac/parts/vendor_tabs.tt2

index f851f7e..5f40946 100755 (executable)
@@ -298,7 +298,8 @@ sub _build_search_URI {
         $media_format = '';
     }
 
-    if ($media_format eq 'eaudio' || $media_format eq 'ebook' || $media_format eq '') {
+    if (($media_format eq 'eaudio' || $media_format eq 'ebook' || $media_format eq '')
+        && scalar (@$search_inputs) == 0) {
         my $search_term = '';
         if ($search_type eq 'author' || $search_type eq 'genre') {
             $search_term = "&$search_type=$value_to_search";
index c6f722d..af8d53c 100755 (executable)
@@ -369,13 +369,12 @@ sub load_rbdigital_common {
         # Send back rbdigital_patron_id
         $self->ctx->{rbdigital_patron_id} = _get_patron_id($self->editor->authtoken, $session_id);
         $logger->info('EbookAPI: Got patron id: '. $self->ctx->{rbdigital_patron_id});
-
         # Call sub to get all the vendors to be displayed on the UI
         $self->ctx->{vendors} = _get_authorized_vendors($self->editor->authtoken, $session_id);
         $self->ctx->{wishlist} = _get_patron_wishlist($self->editor->authtoken, $session_id);
     } else {
         $self->ctx->{rbdigital_patron_id} = 0;
-        $self->ctx->{vendors} = [];
+        $self->ctx->{vendors} = _get_default_vendor();
     }
 }
 
index ad0fb65..91c3015 100755 (executable)
@@ -364,6 +364,22 @@ sub _get_authorized_vendors {
     return $vendors_req->recv->content;
 }
 
+#Get only default vendor from database
+sub _get_default_vendor {
+    my $vendor_key = 'default';
+    my $pcrud = OpenSRF::AppSession->create('open-ils.pcrud');
+    $pcrud->connect();
+    
+    my $digital_services_req = $pcrud->request('open-ils.pcrud.search.ebook_rds.atomic', "ANONYMOUS",
+        { 
+            vendor_key => $vendor_key,
+            is_enabled => 't' 
+        }
+    )->recv();
+
+    return $digital_services_req->{content};
+}
+
 sub _get_patron_id {
     my ($authtoken, $session_id) = @_;
 
index 005a07d..a7e37a4 100755 (executable)
@@ -5,7 +5,7 @@
         {url => "messages", name => l("Messages")},
         {url => "circs", name => l("Items Checked Out")},
         {url => "holds", name => l("Holds")},
-        {url => "wishlist", name => l("Wishlist")},
+        {url => "wishlist", name => l("E-Wishlist")},
         {url => "prefs", name => l("Account Preferences")},
         {url => "lists", name => l("My Lists")}
     ];
index 4df5006..1dd7e3b 100755 (executable)
         <!-- Load Code for displaying the password prompt -->
         [% INCLUDE 'opac/ebook_api/rbdigital/register_modal.tt2'; %]
     [% END; %]
+[% ELSIF ctx.vendors.size > 0; %]
+    <!-- Read the first vendor name based on the display_order -->
+    [% vendor_name = ctx.vendors.0.name; %]
+    <div id="vendor_tabs">
+        <div id="acct_tabs">
+                <a id="lnkSearchResults_default" 
+                    href="[% mkurl(ctx.opac_root _ "/results") %]" class="acct-tab-on">[% vendor_name; %]</a>
+        </div>
+    </div>
 [% ELSE; %]
      <div id="vendor_tabs">
         <div id="acct_tabs">